function numeros() 
{ 
tecla = event.keyCode; 
if (tecla >= 48 && tecla <= 57) 
{ 
return true; 
} 
else 
{ 
return false; 
} 
}


function MudaCampo(tag, e, Seguinte){
	var Tecla, Campo;
	Tecla = e.keyCode;
	if(Tecla == 13) return;
	if(top.IE) Campo = e.srcElement; else Campo = e.target;
	if (tag.maxLength==tag.value.length) 
	eval("document.form." + Seguinte.name + ".focus()")
	return;
}





function limpaMascara(valor){
	for(iCaracteres = 0; iCaracteres < valor.length; iCaracteres++){
		valor = valor.replace(".","");
	}	
	for(iCaracteres = 0; iCaracteres < valor.length; iCaracteres++){
		valor= valor.replace(",",".");
	}	
	return valor;
}






function verificarSelecao(objeto, mensagem, quantidadeMaxima){
	var isSelecionado    = false;
	var quantidadeMinima = 0;
	if(typeof objeto.length == "undefined"){
		if(objeto.checked == true){
			isSelecionado = true;
		} 
	} else {	
		for(i = 0; i < objeto.length; i++){
			if(objeto[i].checked == true){
				isSelecionado = true;
				if(quantidadeMaxima != null){
					quantidadeMinima += 1;
					if(quantidadeMinima > quantidadeMaxima){
						isSelecionado = false;
						mensagem = "Seleção Inválida!";
						break;
					}
				} else {
					break;
				}	
			}	
		}
	}	
	if(!isSelecionado){
		if(mensagem != null)
			alert(mensagem);
		return false;
	} else {
		return true;
	}
}





function validarNumero(evento){
	tecla = evento.keyCode;	
	if((tecla < 48) || (tecla > 57)){
		evento.returnValue = false;
	}
}





function mascaraTelefone(campo, evento, posicaoSeparador){
	//012345678
	//####-####
	//0123 4567
	//#### ####
	if(evento != null){
		validarNumero(evento);
		telefone = campo.value;
		if(telefone.length == posicaoSeparador) {
			campo.value = telefone+"-";
		}
	} else {
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,posicaoSeparador);
		var parte2  = valor.substr(posicaoSeparador);	
		campo.value = parte1+"-"+parte2;
	}	
}





function mascaraCGC(campo, evento){
	//         111111111 
	//012345678901234567
	//##.###.###/####-##
	//            111 11
	//01 234 567 8901 23
	//## ### ### #### ##
	if(evento != null){
		validarNumero(evento);
		cgc = campo.value;
		if((cgc.length == 2) || (cgc.length == 6)){
			campo.value = cgc + ".";
		} else if(cgc.length == 10){	
			campo.value = cgc + "/";
		} else if(cgc.length == 15){		
			campo.value = cgc + "-";
		}	
	} else if(campo.value != ""){
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,2);
		var parte2  = valor.substr(2,3);
		var parte3  = valor.substr(5,3);
		var parte4  = valor.substr(8,4);
		var parte5  = valor.substr(12);
		campo.value = parte1+"."+parte2+"."+parte3+"/"+parte4+"-"+parte5;
	}
}





function mascaraCPF(campo, evento){
	if(evento != null){
		validarNumero(evento);
		cpf = campo.value;
		if((cpf.length == 3) || (cpf.length == 7)){
			campo.value = cpf + ".";
		} else if(cpf.length == 11){	
			campo.value = cpf + "-";
		} else if(cpf.length == 15){		
			campo.value = cpf + "-";
		}	
	} else if(campo.value != ""){
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,3);
		var parte2  = valor.substr(2,3);
		var parte3  = valor.substr(5,3);
		var parte4  = valor.substr(8,2);
		var parte5  = valor.substr(12);
		campo.value = parte1+"."+parte2+"."+parte3+"-"+parte4+"-"+parte5;
	}
}





function mascaraIM(campo, evento){
	//          1
    //01234567890 
	//###.###-#-#

    //012 345 6 7
	//### ### # #

	if(evento != null){
		validarNumero(evento);
		inscricaoMunicipal = campo.value;
		if(inscricaoMunicipal.length == 3){
			campo.value = inscricaoMunicipal + ".";
		} else if((inscricaoMunicipal.length == 7) || (inscricaoMunicipal.length == 9)){
			campo.value = inscricaoMunicipal + "-";
		}
	} else if(campo.value != ""){
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,3);
		var parte2  = valor.substr(3,3);
		var parte3  = valor.substr(6,1);
		var parte4  = valor.substr(7);
		campo.value = parte1+"."+parte2+"-"+parte3+"-"+parte4;
	}
}






function marcaraIE(campo, evento){
	//          1 
	//01234567890
	//###/#######
	
	//012 3456789
	//### #######

	if(evento != null){
		validarNumero(evento);
		if(evento.keyCode == (105 || 73)){
			campo.value = "ISENTO";
		}
		inscricaoEstadual = campo.value;
	
		if(inscricaoEstadual.length == 3){
			campo.value = inscricaoEstadual + "/";
		}
	} else if(campo.value != ""){
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,3);
		var parte2  = valor.substr(3);
		campo.value = parte1+"/"+parte2;
	}	
}





function mascaraCEP(campo, evento){
	if(evento != null){
		validarNumero(evento);
		cep = campo.value;
		if(cep.length == 2){
			campo.value= cep + ".";
		} else if(cep.length == 6){
			campo.value= cep + "-";
		}
	} else if(campo.value != ""){
		var valor   = limpaCampo(campo);
		var parte1  = valor.substr(0,2);
		var parte2  = valor.substr(2,3);
		var parte3  = valor.substr(5);
		campo.value = parte1+"."+parte2+"-"+parte3;
	}	
}






function mascaraDataHora(campo,evento){
	validarNumero(evento);
	data = campo.value;
	if(data.length == 2) {
		campo.value = data+"/"
	} else if(data.length == 5) {
		campo.value = data+"/20"
	} else if(data.length == 10){
		campo.value = data+"-"
	} else if(data.length == 13){
		campo.value = data+":"
	}
}






function mascaraData(campo,evento){ //mascaraData(this, event);
	validarNumero(evento);
	data = campo.value;
	if(data.length == 2) {
		campo.value = data+"/"
	} else if(data.length == 5) {
		campo.value = data+"/"
	} 
}




function mascaraHora(campo,evento){ //mascaraHora(this, event);
	validarNumero(evento);
	hora = campo.value;
	if(hora.length == 2) {
		campo.value = hora+":"
	} //else if(data.length == 5) {
		//campo.value = data+"/"
	//} 
}




function mascaraHora_Tratamento(tag,campo,evento){ 
				
	var linha = tag.numeroLinha;	

	var hora = Tratamento_Horas(campo.value);

	if(hora.length == 2) {
		hora = hora+":"
	} 
	
	campo.value = hora;
			
}





function validarDataHora(campo){
	var totalDiasMeses	= new Array(0,31,2,31,30,31,30,31,31,30,31,30,31);
	var dataHora        = campo.value;
	var dia				= dataHora.substr(0,2);
	var mes				= dataHora.substr(3,2);
	var ano				= dataHora.substr(6,4);
	var hora			= dataHora.substr(11,2);
	var minuto			= dataHora.substr(14,2);
	var retornoHora     = false;
	var retornoData     = false;
	
	if(mes == "02"){
		if(((parseInt(ano,10) % 4) == 0) && dia <= 29){
			retornoData = true;
		} else if(dia <= 28){
			retornoData = true;
		} else {
			retornoData = false;
		}	
	} else {
		if(totalDiasMeses[parseInt(mes,10)] < parseInt(dia,10)){
			retornoData = false;
		} else {
			retornoData = true;
		}	
	}

	if((parseInt(hora,10) < 24) && (parseInt(minuto,10) < 60)){
		retornoHora = true;
	} else {
		retornoHora = false;	
	}	

	if(!retornoData){
		alert("Data Inválida");
		campo.focus()
		campo.selected();
		return false;
	} else if(!retornoHora){
		alert("Hora Inválida!");
		campo.focus();
		campo.selected();
		return false;
	} else {
		return true;
	}	
}





function validarData(campo){
	var totalDiasMeses	= new Array(0,31,2,31,30,31,30,31,31,30,31,30,31);
	var data	        = campo.value;
	var dia				= data.substr(0,2);
	var mes				= data.substr(3,2);
	var ano				= data.substr(6,4);
	var retornoData     = false;
	
	if(campo.value != ""){
		if(mes == "02"){
			if(((parseInt(ano,10) % 4) == 0) && dia <= 29){
				retornoData = true;
			} else if(dia <= 28){
				retornoData = true;
			} else {
				retornoData = false;
			}	
		} else {
			if((totalDiasMeses[parseInt(mes,10)] < parseInt(dia,10)) || (typeof totalDiasMeses[parseInt(mes,10)] == "undefined")){
				retornoData = false;
			} else {
				retornoData = true;
			}	
		}
	}	

	if(!retornoData){
		alert("Data Inválida");
		campo.focus()
		campo.selected();
		return false;
	} else 
		return true;
}





function trim(s){
	return s.replace(/(^\s*)|(\s*$)/g, "");
}





function limpaCampo(campo) {
	conteudo = '';
	for (i=0; i < campo.value.length; i++) {
		if( (campo.value.charAt(i) != ".") && (campo.value.charAt(i) != "-") && (campo.value.charAt(i) != "/") && (campo.value.charAt(i) != ",")) {
			conteudo += campo.value.charAt(i);
		}	
	}
	return conteudo;
}





function VerificaEmail(mail) {
	// Software em JavaScript criado pela equipe de Desenvolvimento da Plug-In
	// Criador: Claudio Rogerio Dorneles Silveira
	// O uso nao autorizado, implica em penalizacao por quebra de Copyright. 
	// Para usar livremente solicite informacoes a: projetos@plug-in.com.br
	
	//declaracao das variaveis
	var user="";
	var dominio="";
	var i=0;
	var testa="+)(*&%$#!+;='\/`~?<>"; 
	var c=0;
	var checkmail=true;
	var ponto=0;
	var j=0;
	var arroba=0;
	

	//***********testa caracteres invalidos na variavel mail**********
	for(c;c<mail.length;c++){
		for (j=0; j<testa.length;j++){
			if (testa.charAt(j)==mail.charAt(c)){
				checkmail=false;
				alert ("Caracteres invalidos no e-mail");
				return false;
				}
			}
		}		
	//************ cria variavel user******************************* 
	if (checkmail!=false){
			for (i=0;i< mail.length;i++){
				if (mail.charAt(i)=="@"){
					break;}
				else{	
					user=user+mail.charAt(i);
					}
				}
	
			//************cria variavel dominio**************************
			for (i;i<mail.length;i++){
				if (mail.charAt(i)==""){
					break;}
				else{	
					dominio=dominio+mail.charAt(i);
					}
				}
					
				//***********testa validade da variavel dominio********************		
				for(c=0;c<dominio.length;c++){
					if (dominio.charAt(c)=="@"){
						arroba++;}
					if (dominio.charAt(c)=="."){
						ponto++;}}
					if ((ponto<1)||(ponto>4)){
						alert("Erro no dominio do e-mail");
						return false;
						}
					if (arroba != 1.0){
						alert("Erro no dominio do e-mail");
						return false;
						};
				}			

//   return true;		
}






function Tratamento_Horas(txt) {

	var aux = "";

	for (var i=0;i<txt.length;i++) {

		if (!isNaN(txt.substr(i,1)) || (txt.substr(i,1)==":")) {
			
				if(i==0){
					if(txt.substr(i,1)<=2)   aux += txt.substr(i,1)
				}
				
				if(i==1){
					if(txt.substr(0,1)==2){
						if(txt.substr(i,1)<4)   aux += txt.substr(i,1)
					}else{
						aux += txt.substr(i,1)
					}
				}
				
				if(i==2){
					if(txt.substr(i,1)==":")   aux += txt.substr(i,1)
				}
				
				if(i==3){
					if(txt.substr(i,1)<=5)   aux += txt.substr(i,1)
				}
				
				if(i==4){
					if(txt.substr(i,1)<=9)   aux += txt.substr(i,1)
				}
										
		}
		
	}
	
	return(aux)

}	





/**-----------------------------------------------------------------------------------
FUNÇÃO QUE VERIFICA SE UMA DATA DIGITADA É VÁLIDA E SE ENCONTRA NO FORMATO REQUISITADO
-----------------------------------------------------------------------------------**/
function CheckDate(field){
		
		var checkstr = "0123456789";
		var DateField = field;
		var Datevalue = "";
		var DateTemp = "";
		var seperator = "/";
		var day;
		var month;
		var year;
		var leap = 0;
		var err = 0;
		var i;
	
	    err = 0;

		DateValue = DateField.value;
	   
	   /* Delete all chars except 0..9 */
	   for (i = 0; i < DateValue.length; i++) {
		  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
			 DateTemp = DateTemp + DateValue.substr(i,1);
		  }
	   }
	   DateValue = DateTemp;
	   /* Always change date to 8 digits - string*/
	   /* if year is entered as 2-digit / always assume 20xx */
	   if (DateValue.length == 6) {
		  DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
	   if (DateValue.length != 8) {
		  err = 19;}
	   /* year is wrong if year = 0000 */
	   year = DateValue.substr(4,4);
	   if (year == 0) {
		  err = 20;
	   }
	   /* Validation of month*/
	   month = DateValue.substr(2,2);
	   if ((month < 1) || (month > 12)) {
		  err = 21;
	   }
	   /* Validation of day*/
	   day = DateValue.substr(0,2);
	   if (day < 1) {
		 err = 22;
	   }
	   /* Validation leap-year / february / day */
	   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
		  leap = 1;
	   }
	   if ((month == 2) && (leap == 1) && (day > 29)) {
		  err = 23;
	   }
	   if ((month == 2) && (leap != 1) && (day > 28)) {
		  err = 24;
	   }
	   /* Validation of other months */
	   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
		  err = 25;
	   }
	   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
		  err = 26;
	   }
	   /* if 00 ist entered, no error, deleting the entry */
	   if ((day == 0) && (month == 0) && (year == 00)) {
		  err = 0; day = ""; month = ""; year = ""; seperator = "";
	   }
	   /* if no error, write the completed date to Input-Field (e.g. 13.12.2001) */
	   if (err == 0) {
		  DateField.value = day + seperator + month + seperator + year;
	   }
	   /* Error-message if err != 0 */
	   else {
		  alert("A data está incorreta! Você deve apresentar a data no FORMATO dd/mm/yyyy e apresentar uma data válida");
		  DateField.select();
		  DateField.focus();
	   }
	}


function setHighlighted(id) {
	document.getElementById(id).className = 'highlighted';
}

function setNotHighlighted(id) {
	document.getElementById(id).className = 'notHighlighted';
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
