/////////////////////////////////////////Script para validar data/////////////////////////////////

////////////desenvolvido por Alexandre Machado GTI-2001

///  valida data:
/*  para acessar ative a função a partir do campo
    dia : onKeyUp="validadia(campodia,campomes)"
    mes : onKeyUp="validames(campomes,campoano)"
    ano : onKeyUp="validaano(campodia,campomes,campoano)" */



//////////////////////////valida data

function validadia(tmD,tmM){  
 	if (tmD.value.length>1){
 		tmD.focus();
  		if (isNaN(tmD.value)||tmD.value>31){
      		alert("dia Inválido!");
      		error(tmD);
    	}else{
	  		error(tmM);
		}
 	}
}
function validames(tmM,tmY){
 	if (tmM.value.length>1){
  		if (isNaN(tmM.value)||tmM.value>12){
			alert("mês Inválido!");
			error(tmM);
    	}else{
			error(tmY);
		}
 	}
}

function validaano(tmD,tmM,tmY){
	if (tmY.value.length>3){
		tmdia = tmD.value;
		tmmes = tmM.value;
		tmano = tmY.value;
		varmesf=tmmes*2
		varmesi=varmesf-2
		diasanonormal="312831303130313130313031"
		dias="312831303130313130313031"
		isLeap = ((tmano%4 == 0 && tmano%100 != 0) || (tmano%400 == 0))
		if( isLeap ){ 
			dias = diasanonormal.replace(/8/g,"9"); 
		}
		if (tmmes<1||tmmes>13){
			error(tmM);
			alert("mês inválido!");
		}else{
			if (tmdia>(dias.substring(varmesi,varmesf))){
            error(tmD);
            alert("dia não válido no mês em questão!!");
        	}
		}
		if (isNaN(tmano) || tmano<1900 || tmano>anoAtual){
			alert("ano inválido!");
		}
	}else{
		alert("Preencha o ano com 4 digitos.");
	}
}

