Olá Rafael, tudo bem?
Então, acredito que neste caso a gente precisa de uma outra abordagem que funcionaria da seguinte maneira:
- Obtem os dados do formulário em um objeto
placar
- Valida os Erros do
placar
- Se não houver erros, adiciona mais 2 atributos nesse objeto
O grande problema é que os valores errados estão mexendo na sua variável de controle de pontos, então um valor -25
se torna o menor valor, e só depois validamos e vemos que é inválido, então o que poderiamos fazer é o seguinte:
function obtemJogoDoFormulario(form) {
var jogo = {
codJogo: form.jogo.value, //Informação do campo Jogo do form
placar: form.placar.value, //Informação do campo Placar do form
};
return jogo;
}
Após isso teremos as validações, correto?
var registro = obtemJogoDoFormulario(form); // Armazena os dados retornados do Jogo
var erroJogo = validaJogo(registro.codJogo); //Armazena o retorno da função validaJogo
var erroPlacar = validaPlacar(registro.placar); //Armazena o retorno da função validaPlacar
[ IFS...]
O que você pode fazer é agora criar uma função para alterar esse objeto assim:
adicionaMaximoEMinimoNoPlacar(registro)
adicionaJogoNaTabela(registro); //Monta a estrutura da table do id tabela-jogos
Neste momento temos certeza que os dados estão corretos, então:
function adicionaMaximoEMinimoNoPlacar(placar){
placar.minimoTemporada = calculaMinimoTemporada(Number(placar.placar));
placar.maximoTemporada = calculaMaximoTemporada(Number(placar.placar));
placar.recordeMinino = quebraMinimo; //Retorno da variável quebraMinimo
placar.recordeMaximo = quebraMaximo; //Retorno da variável quebraMaximo
}
Outra alternativa, porém com repetição de código:
Nas funções de validação você pode adicionar essa verificação, dessa maneira caso o valor seja invalido em nenhum momento você chega a alterar o valorMaximo
, valorMinimo
e as de quebra de record:
function calculaMaximoTemporada(placar) {
if(placar > 999) return;
if (placar > maximoPontos) {
[...]
function calculaMinimoTemporada(placar) {
if(placar < 0) return;
if (placar < minimoPontos) {
[...]
`
Compreendeu?
Abraços e Bons Estudos!