function txtBoxFormat(objeto, sMask, evtKeyPress) {
    var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

	if(document.all) { // Internet Explorer
	    nTecla = evtKeyPress.keyCode;
	} else if(document.layers) { // Nestcape
	    nTecla = evtKeyPress.which;
	} else {
	    nTecla = evtKeyPress.which;
	    if (nTecla == 8) {
	        return true;
	    }
	}

    sValue = objeto.value;

    // Limpa todos os caracteres de formatação que
    // já estiverem no campo.
    sValue = sValue.toString().replace( "-", "" );
    sValue = sValue.toString().replace( "-", "" );
    sValue = sValue.toString().replace( ".", "" );
    sValue = sValue.toString().replace( ".", "" );
    sValue = sValue.toString().replace( "/", "" );
    sValue = sValue.toString().replace( "/", "" );
    sValue = sValue.toString().replace( ":", "" );
    sValue = sValue.toString().replace( ":", "" );
    sValue = sValue.toString().replace( "(", "" );
    sValue = sValue.toString().replace( "(", "" );
    sValue = sValue.toString().replace( ")", "" );
    sValue = sValue.toString().replace( ")", "" );
    sValue = sValue.toString().replace( " ", "" );
    sValue = sValue.toString().replace( " ", "" );
    fldLen = sValue.length;
      
    i = 0;
    nCount = 0;
    sCod = "";
    mskLen = fldLen;

    while (i < mskLen) {
      bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
      bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

      if (bolMask) {
        sCod += sMask.charAt(i);
        mskLen++; }
      else {
        sCod += sValue.charAt(nCount);
        nCount++;
      }
      i++;
    }

    objeto.value = sCod;

    if (nTecla != 8) { // backspace
      if (sMask.charAt(i-1) == "9") { // apenas números...
        return ((nTecla > 47) && (nTecla < 58)); } 
      else { // qualquer caracter...
        return true;
      } 
    }
    else {
      return true;
    }
}


function MascaraData(data,evento){
//	if(mascaraInteiro(evento)==false){
//		evento.returnValue = false;
	//}
	
	return txtBoxFormat(data, '00/00/0000', evento);
}

function MascaraHora(data,evento){
	//if(mascaraInteiro(evento)==false){
//		evento.returnValue = false;
//	}
	
	return txtBoxFormat(data, '00:00:00', evento);
}


/*
function formataCampo(campo, Mascara, evento) {
	var boleanoMascara;

	var Digitato = evento.keyCode;
	exp = /\-|\.|\/|\(|\)| /g
	campoSoNumeros = campo.value.toString().replace( exp, "" );

	var posicaoCampo = 0;
	var NovoValorCampo="";
	var TamanhoMascara = campoSoNumeros.length;;

	if (Digitato != 8) { // backspace
		for(i=0; i<= TamanhoMascara; i++) {
			boleanoMascara = ((Mascara.charAt(i) == "-") || (Mascara.charAt(i) == ".")
			|| (Mascara.charAt(i) == "/"))
			boleanoMascara = boleanoMascara || ((Mascara.charAt(i) == "(")
			|| (Mascara.charAt(i) == ")") || (Mascara.charAt(i) == " "))
			if (boleanoMascara) {
				NovoValorCampo += Mascara.charAt(i);
				TamanhoMascara++;
			}else {
				NovoValorCampo += campoSoNumeros.charAt(posicaoCampo);
				posicaoCampo++;
			}
		}
		campo.value = NovoValorCampo;
		return true;
	}else {
		return true;
	}
}*/

function validaData(obj) {
	if(obj.value != ""){
		var date = obj.value;
		var array_data = new Array;
		var ExpReg = new RegExp("(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[12][0-9]{3}");
		array_data = date.split("/");
		erro = false;
		if ( date.search(ExpReg) == -1 )
			erro = true;
		else if ( ( ( array_data[1] == 4 ) || ( array_data[1] == 6 ) || ( array_data[1] == 9 ) || ( array_data[1] == 11 ) ) && ( array_data[0] > 30 ) )
			erro = true;
		else if ( array_data[1] == 2 ) {
			if ( ( array_data[0] > 28 ) && ( ( array_data[2] % 4 ) != 0 ) )
				erro = true;
			if ( ( array_data[0] > 29 ) && ( ( array_data[2] % 4 ) == 0 ) )
				erro = true;
		}
		if ( erro ) {
			alert('Data incorreta.');
			obj.value = "";
			obj.focus();
		}
	}
}

function SomenteNum(e){
   /*
 	 8 - backspace/ 46 - delete/ 9 - tab/ 37a40 - teclas de navegacao
   */
   var codigo = window.event ? e.keyCode : e.which;
   return ((codigo>=96&&codigo<=105)||(codigo>=48&&codigo<=57)||(codigo==8)||
       (codigo==46)||(codigo==9)||(codigo>=37&&codigo<=40))
}

function valida_email(campo_email) {
 if (campo_email.value != '' ) {
	 //Expressão Regular utilizada para validar o endereço de email
	 var ExpReg = /^[a-zA-Z0-9_\.-]{2,}@([A-Za-z0-9_-]{2,}\.)+[A-Za-z]{2,4}$/;
	 if ( !ExpReg.test(campo_email.value) ) {
		 return false;
	 }
	 return true;
 }
}

function validaEmail(campo_email) {
 if (campo_email.value != '' ) {
	 //Expressão Regular utilizada para validar o endereço de email
	 var ExpReg = /^[a-zA-Z0-9_\.-]{2,}@([A-Za-z0-9_-]{2,}\.)+[A-Za-z]{2,4}$/;
	 if ( !ExpReg.test(campo_email.value) ) {
		 //return false;
		alert('E-mail incorreto.');
		campo_email.value = "";
		campo_email.focus();
		 
	 }
	 //return true;
 }
}

function validarCPF(Objcpf)
{
	var numcpf = Objcpf.value;
	exp = /\.|\-/g;
    numcpf = numcpf.toString().replace(exp, "");
	
	x = 0;
	soma = 0;
	dig1 = 0;
	dig2 = 0;
	texto = "";
	numcpf1="";
	len = numcpf.length; x = len -1;
	// var numcpf = "12345678909";
	for (var i=0; i <= len - 3; i++) {
		y = numcpf.substring(i,i+1);
		soma = soma + ( y * x);
		x = x - 1;
		texto = texto + y;
	}
	dig1 = 11 - (soma % 11);
	if (dig1 == 10) dig1=0 ;
	if (dig1 == 11) dig1=0 ;
	numcpf1 = numcpf.substring(0,len - 2) + dig1 ;
	x = 11; soma=0;
	for (var i=0; i <= len - 2; i++) {
		soma = soma + (numcpf1.substring(i,i+1) * x);
		x = x - 1;
	}
	dig2= 11 - (soma % 11);
	if (dig2 == 10) dig2=0;
	if (dig2 == 11) dig2=0;
	//alert ("Digito Verificador : " + dig1 + "" + dig2);
	if ((dig1 + "" + dig2) == numcpf.substring(len,len-2)) {
		return true;
	}
	//alert ("Numero do CPF invalido !!!");
	return false;
}

/*
/////////////////////////////////////////////////////////
Iníco de Funções relacionadas ao formulário de lista de espera.
/////////////////////////////////////////////////////////
*/

function addAluno(id){
	if(id >= 10) return;
	obj = document.getElementById("dados_aluno"+id);
	//obj.style.display = (obj.style.display == 'none'?'':'none');
	obj.style.display = '';
	document.getElementById('controle').value = (id*1)+1;
}
function removerAluno(id){
	obj = document.getElementById("dados_aluno"+id);
	//obj.style.display = (obj.style.display == 'none'?'':'none');
	obj.style.display = 'none';
}

/*
Objetivo: Função de cálculo de idade.
Parâmetos: Idade no formato português (DD/MM/YYYY)
Retorno: Retorna o valor da idade.
*/
function calcularIdadeMes(data,anoAtual,mesAtual,diaAtual){ 

   	var array_data = data.split("/") 
   	
   	if (array_data.length!=3) 
      	 return 0;

   	var ano = parseInt(array_data[2]);
   	 
   	if (isNaN(ano)) 
      	 return 0;

   	//var mes = parseInt(array_data[1]); 
	var mes = array_data[1]*1; 
   	
   	if (isNaN(mes)) 
      	 return 0;

   	//var dia = parseInt(array_data[0]);	
	var dia = array_data[0]*1;	
   	
   	if (isNaN(dia)) 
      	 return 0;

   	var idadeM, idadeA;
      	 
    idadeA = anoAtual - ano;
	
	if(mesAtual - mes < 0){
		idadeA -= 1;
		idadeM = (12 - mes)*1 + mesAtual*1;
	}else{
		idadeM = mesAtual - mes;	
	}	
	
//	if(diaAtual - dia < 0 && idadeM > 0){
//		idadeM-= 1;
//	}
	
	return idadeA + "_" + idadeM;
	
}

function mostrarIdadeMeses(data,idSpanAno,idSpanMes,idHiddenAno,idHiddenMes,idHiddenDia){
	
	var domSpanMes = document.getElementById(idSpanMes);
	var domSpanAno = document.getElementById(idSpanAno);
	
	var domInputDia = document.getElementById(idHiddenDia);
	var domInputMes = document.getElementById(idHiddenMes);
	var domInputAno = document.getElementById(idHiddenAno);
	
	valorIdadeMes = calcularIdadeMes(data,domInputAno.value,domInputMes.value,domInputDia.value);
	
	if(valorIdadeMes == 0){
		alert("Verifique as informações da Data de Nascimento!");
		return;
	}	
	
	aValores = valorIdadeMes.split("_");
	
	domSpanAno.innerHTML = aValores[0];
	domSpanMes.innerHTML = aValores[1];	
}

/*
/////////////////////////////////////////////////////////
Fim de Funções relacionadas ao formulário de lista de espera.
/////////////////////////////////////////////////////////
*/