var aux = null;
if (screen.width == 1024) aux = 844; else aux = 620;

/* --------------------------------------------------------------------------------------------------- */
/*         Funcao generica para verificacao de campos obrigatorios que nao estao preenchidos           */
/* --------------------------------------------------------------------------------------------------- */
function ValidaForm(obj) {

   	for(var i = 0; i < obj.elements.length; i++){
       	if (obj.elements[i].id.substring(0,6).toUpperCase() == 'CHECAR') {
	      	if (obj.elements[i].value == ''){
             	alert('O campo [' + obj.elements[i].name + '] é obrigatório. Preencha-o por favor!');
    		 	obj.elements[i].focus();
             	return false;
	      	}
	   	}
	
	 	//v_campo = obj.elements[i].id.substring(6).toUpperCase()
  		//if (v_campo == 'NOME'){
   		//	if (!ValidaTipoLet(obj.elements[i].value)){
    		//	alert('O campo [' + obj.elements[i].title + '] deve conter somente letras!');
    		//	obj.elements[i].value = ""
    		//	obj.elements[i].focus();
    		//	return false;
    		//}	   
  		//}


	// Tratamento do campo de ddd. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarddd'
	// Senao : id='******ddd'

	 	if (obj.elements[i].id.substring(6).toUpperCase() == 'DDD'){
			var aEntrada = obj.elements[i].value;
			var oComprimento = aEntrada.length;
			var dddValido = true;
			if (oComprimento > 1){
				for(var j = 0; j <= oComprimento; j++){
					var oCaract = aEntrada.substring(j,j+1);
					if (oCaract != ""){
			  			if (oCaract < "0" || oCaract > "9")	dddValido = false;
					}		
				}
  			} else {
				alert('O campo [DDD] deve ser preenchido com dois dígitos!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
			if (dddValido == false){
				alert ("Este não parece ser um nº de [DDD] válido. Por favor digite corretamente.");
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
		}
	/*---------------------------------------- Fim do tratamento de DDD ----------------------------------------- */



	// Tratamento de um campo do tipo radio button. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Só usar este código se for de preenchimento obrigatório
	// alterar os nomes dos campos

	/*var form = document.frmItens;
	if ((!form.primeirapagina[0].checked) && (!form.primeirapagina[1].checked)){
			alert('O campo [PRIMEIRA PÁGINA] é obrigatório. Preencha-o por favor!');		
			return false;	
		}
		
	var form = document.frmItens;	
	if ((!form.visibilidade[0].checked) && (!form.visibilidade[1].checked)){
			alert('O campo [VISIBILIDADE] é obrigatório. Preencha-o por favor!');		
			return false;	
		}*/


	/*---------------------------------------- Fim do tratamento de Radio Button ----------------------------------------- */


	// Tratamento do campo nome. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarnome'
	// Senao : id='******nome'

	 	/*if (obj.elements[i].id.substring(6).toUpperCase() == 'NOME'){
			var aEntrada = obj.elements[i].value;
			var oComprimento = aEntrada.length;
			var nomeValido = true;
			if (oComprimento > 1){
				for(var j = 0; j <= oComprimento; j++){
					var oCaract = aEntrada.substring(j,j+1);
					if (oCaract != ""){
			  			if (oCaract < "a" || oCaract > "b") nomeValido = false;
					}		
				}
  			} else {
				alert('O campo [NOME] deve ser preenchido apenas com letras!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
			if (nomeValido == false){
				alert ("O campo [NOME] deve ser conter apenas letras. Por favor digite corretamente.");
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
		}*/
		
	/*---------------------------------------- Fim do tratamento de Nome ----------------------------------------- */
	   
	   
	   
	// Tratamento do campo de upload. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarupload'
	// Senao : id='******upload'


	 	/*if (obj.elements[i].id.substring(6).toUpperCase() == 'UPLOAD'){
			if (obj.elements[i].value != ''){
            	resultado = obj.elements[i].value;				
				resultado2 = resultado.split("/");
				resultado3 = resultado2.pop();
				resultado4 = resultado3.split(".");
				resultado5 = resultado4.pop();
				if ((resultado5 != 'gif') && (resultado5 != 'jpg')){
					alert("Suas imagens devem ser nos formatos gif ou jpg!");
					obj.elements[i].focus();
            	return false;
				}
	      	}
		}*/

		if (obj.elements[i].id.substring(6).toUpperCase() == 'UPLOAD'){
			if (obj.elements[i].value != ''){
            	resultado = obj.elements[i].value;				
				resultado = resultado.split("/");
				resultado = resultado.pop();
				resultado = resultado.split(".");
				resultado = resultado.pop();
				if ((resultado != 'gif') && (resultado != 'jpg')){
					alert("Suas imagens devem ser nos formatos gif ou jpg!");
					obj.elements[i].focus();
            	return false;
				}
	      	}
		}


	/*---------------------------------------- Fim do tratamento de Upload ----------------------------------------- */    
	   
	   
	   
	// Tratamento do campo de telefone. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checartelefone'
	// Senao : id='******telefone'
	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'TELEFONE'){
			var aEntrada = obj.elements[i].value;
			var oComprimento = aEntrada.length;
			var foneValido = true;
			if (oComprimento > 7){
				for(var j = 0; j <= oComprimento; j++){
					var oCaract = aEntrada.substring(j,j+1);
					if (oCaract != ""){
			  			if (oCaract < "0" || oCaract > "9")	foneValido = false;
					}		
				}
  			} else {
				alert('O campo [TELEFONE] deve ser preenchido com oito dígitos!');
				//obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
			if (foneValido == false){
				alert ("Este não parece ser um nº de [TELEFONE] válido. Por favor digite corretamente.");
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
		}
		
	/* ---------------------------- Fim do tratamento de Telefone -----------------------------------*/
	
	
	// Tratamento do campo de cep. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarcep'
	// Senao : id='******cep'
	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'CEP'){
			var aEntrada = obj.elements[i].value;
			var oComprimento = aEntrada.length;
			var foneValido = true;
			if (oComprimento < 8){
				foneValido = false;
			}else{
				for(var j = 0; j <= oComprimento; j++){
					var oCaract = aEntrada.substring(j,j+1);
					if (oCaract != ""){
			  			if (oCaract < "0" || oCaract > "9")	foneValido = false;
					}
				}		
			}
			if (foneValido == false){
				alert ("Este não parece ser um [CEP] válido. Por favor digite corretamente.");
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
		}
	/* ---------------------------- Fim do tratamento de Cep -----------------------------------*/
			   
	// Tratamento do campo de link. Todo formulario que tiver um campo assim : deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarlink'
	// Senao : id='******link'
      	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'LINK') {
          	if (obj.elements[i].value.substring(0,7).toUpperCase() == 'HTTP://'){
        	 	links = obj.elements[i].value;
		     	tam = links.length;
		     	obj.elements[i].value = links.substring(7,tam);
		  	}
   	   	}
	/* ------------------------- Fim do tratamento de Link -------------------------------------------- */
	
	// Tratamento do campo de login e senha. Todo formulario que tiver um campo assim deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarloginsenha'
	// Senao : id='******loginsenha'
      	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'LOGINSENHA'){
			var aEntrada = obj.elements[i].value;
			var oComprimento = aEntrada.length;
			
			if (oComprimento < 5) {
				alert('O campo [' + obj.elements[i].title + '] deve ser preechido com no mínimo cinco dígitos!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
		}
	/* ------------------------- Fim do tratamento de Login -------------------------------------------- */
	
	// Tratamento do campo vericar senha. Todo formulario que tiver um campo assim deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarconfirma'
	// Senao : id='******confirma'
      	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'CONFIRMA'){
		// obj.elements[i-1].value (campo senha)
		// obj.elements[i].value   (campo confirma senha)
			if (obj.elements[i-1].value != obj.elements[i].value) {
				alert('A Confirmação de Senha não é válida!');
				obj.elements[i].value = '';
				obj.elements[i].focus();
				return false;
			}
		}
	/* ------------------------- Fim do tratamento de Confirmar Senha ----------------------------------- */
		  
   	// Tratamento do campo dia. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checardia'
	// Senao : id='******dia'
	   
       	if (obj.elements[i].id.substring(6).toUpperCase() == 'DIA') {
    	  	var aEntrada = obj.elements[i].value;
	      	var oComprimento = aEntrada.length;
		  	var valido = true;

     	  	if (oComprimento == 2){
 		     	if (aEntrada <= "00" || aEntrada > "31" || isNaN(aEntrada)){
			     	valido = false
			 	}
		  	}
    
		  	if (valido == false){
			 	alert ("Este não parece ser um [Dia] válido. Por favor digite corretamente.")
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
     	  	}
	   	}
	/* ----------------------------------------- Fim do tratamento de Dia --------------------------------- */
		
   	// Tratamento do campo mes. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarmes'
	// Senao : id='******mes'
       	
		if (obj.elements[i].id.substring(6).toUpperCase() == 'MES') {
     	  	var aEntrada1 = obj.elements[i].value;
			var aEntrada2 = obj.elements[i-1].value;
	      	var oComprimento = aEntrada1.length;
		  	var valido = true;
			var validaDia = true;

     	  	if (oComprimento == 2){
 		     	if (aEntrada1 <= "00" || aEntrada1 > "12" || isNaN(aEntrada1)) valido = false;
				if (aEntrada2 > '29' && aEntrada1 == '02') validaDia = false;
		  	}
    
		  	if (valido == false){
			 	alert ("Este não parece ser um [Mês] válido. Por favor digite corretamente.")
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
     	  	}
			
			if (validaDia == false){
			 	alert ("Este [Mês] não possui este nº de dias.")
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
     	  	}
	   	}
	/* ------------------------------------------ Fim do tratamento de Mes ------------------------- */
		
   	// Tratamento do campo ano. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarano'
	// Senao : id='******ano'

       	if (obj.elements[i].id.substring(6).toUpperCase() == 'ANO') {
    	  	var aEntrada = obj.elements[i].value;
	      	var oComprimento = aEntrada.length;
		  	var valido = true;
    	  	var dataserver = new Date();
		  	var oAno = dataserver.getYear();

 		  	if (oComprimento == 4){
				if (aEntrada > oAno || isNaN(aEntrada)) {
				    valido = false;
				}
		  	} else {
				alert('O campo [Ano] deve ser preenchido com quatro dígitos!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
			
          	if (valido == false){
			 	alert ("Este não parece ser um [Ano] válido. Por favor digite corretamente.")
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
    	  	}
	   	}
	/* --------------------------------------- Fim do tratamento de Ano -------------------------------- */ 
	
	// Tratamento do campo HORA. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarhora'
	// Senao : id='******hora'

		if (obj.elements[i].id.substring(6).toUpperCase() == 'HORA') {
     	  	var aEntrada = obj.elements[i].value;
	      	var oComprimento = aEntrada.length;
		  	var valido = true;

     	  	if (oComprimento == 2){
 		     	if (aEntrada < "00" || aEntrada > "24" || isNaN(aEntrada)){
			    	valido = false
			 	}
		  	} else {
				alert('O campo ['+ obj.elements[i].title +'] deve ser preechido com dois dígitos!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
    
		  	if (valido == false){
			 	alert ('Este não parece ser um ['+ obj.elements[i].title +'] válido. Por favor digite corretamente.');
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
     	  	}
	   	}
	/* --------------------------------------- Fim do tratamento de Hora -------------------------------- */
	
	// Tratamento do campo minuto. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checarminuto'
	// Senao : id='******minuto'

		if (obj.elements[i].id.substring(6).toUpperCase() == 'MINUTO') {
     	  	var aEntrada = obj.elements[i].value;
	      	var oComprimento = aEntrada.length;
		  	var valido = true;

     	  	if (oComprimento == 2){
 		     	if (aEntrada < "00" || aEntrada > "59" || isNaN(aEntrada)){
			    	valido = false
			 	}
		  	} else {
				alert('O campo ['+ obj.elements[i].title +'] deve ser preechido com dois dígitos!');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
			}
    
		  	if (valido == false){
			 	alert ('Este não parece ser um ['+ obj.elements[i].title +'] válido. Por favor digite corretamente.');
			 	obj.elements[i].value = "";
			 	obj.elements[i].focus();
			 	return false;
     	  	}
	   	}
	/* --------------------------------------- Fim do tratamento de Minuto -------------------------------- */
	
   	// Tratamento do campo email. Todo formulario que tiver um campo assim, este deve seguir a regra abaixo :
	// Se for obrigatorio : id='checaremail'
	// Senao : id='******email'

	  	if (obj.elements[i].id.substring(6).toUpperCase() == 'EMAIL') {
          	var cInvalido = " /:,;'"											// variável com caracteres inválidos para o campo e-mail
		 	var email     = obj.elements[i].value;								// variável com o valor completo do campo e-mail
			var posArroba = email.indexOf('@');									// variável com a posição do caracter '@'
			var posPonto  = email.indexOf('.');									// variável com a posição do caracter '.'
			var pos1      = email.substring(0, posArroba).length;				// variável com o tamanho da string que está antes do caracter '@'
			var pos2      = email.substring(posArroba + 1, posPonto).length;	// variável com o tamanho da string que está entre os caracteres '@' e '.'
		  	var valido    = true;												// variável de validação do campo e-mail
			
	       	for (var j = 0; j < cInvalido.length; j++) {
		      	cRuim = cInvalido.charAt(j);
				for (var z = 0; z < email.length; z++) {
					oCaracter  = email.charAt(z);
					cCaixaAlta = oCaracter.toUpperCase().charCodeAt(z);
					if (cRuim == oCaracter || oCaracter.charCodeAt(z) == cCaixaAlta) valido = false;
				}
 	      	}
			
          	if (posArroba == -1 || posPonto == -1) valido = false;		// Se não existir os caracteres '@' e '.'
			if (pos1 < 2) valido = false;								// Se o texto antes do caracter '@' for menor que 2
			if (pos2 < 1) valido = false;								// Se o texto entre os caracteres '@' e '.' for menor que 1
           	if (posPonto + 3 > email.length) valido = false;			// Se o texto depois do caracter '.' for menor que 2
			
    	  	if (valido == false) {
             	alert('Este não parece ser um [E-mail] válido. Por favor digite corretamente.');
				obj.elements[i].value = "";
				obj.elements[i].focus();
				return false;
		  	}
	   	}
	/* ---------------------- Fim do tratamento de E-mail -------------------------------------------------- */
    }	
	//window.open('cadastro_ok.asp','','width=330,height=280');
	return true;
}
/* ------------------------------ Fim da Funcao ValidaForm() --------------------------------------------------- */

function selectDados(frm) {
// O objetivo desta função é selecionar os dados (que forem verdadeiros) de uma determinada lista.
// Se for obrigatorio : id='checarselect'
// Senao : id='******select'
	
	var lista = frm.elements.lista.value; // input hidden contendo dados(trazidos de um BD) separdos por um "separador"
	for(var x = 0; x < frm.elements.length; x++) {
		if (frm.elements[x].id.substring(6).toUpperCase() == 'SELECT') {
			var tam = frm.elements[x].length;
			var itens = lista.split(",");
			for (var i = 0; i < (itens.length - 1); i++) {
				var cods = itens[i].split("@esp@");
				for (var j = 0; j < tam; j++) {
					if(frm.elements[x][j].value == cods[0]) frm.elements[x][j].selected = true;
				}
			}
		}
	}
}

function ContaCaracter(objCampo, objCont, total, e) {
	var whichCode = (window.Event) ? e.which : e.keyCode;
	if (whichCode == 8) {
		if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length-1;
	} else if (whichCode == 9 || (whichCode >= 16 && whichCode <= 20) || (whichCode >= 33 && whichCode <= 40)) {
		if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length;
	} else if (whichCode == 45) {
		if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length;
	} else if (whichCode == 46) {
		if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length-1;
	} else if (whichCode == 144) {
		if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length;
	} else if (objCampo.value.length >= total){
		objCampo.value = objCampo.value.substring(0,total);
		alert('O campo [' + objCampo.title + '] não tem mais espaço.');
		return false;
	} else if (objCampo.value.length >= 0) {
		objCont.value = objCampo.value.length+1; }
}

function ContaCaracter2(objCampo,objCont) {
   	if (objCampo.value == '') objCont.value = ''; else objCont.value = objCampo.value.length;
}

//validacao de campos textos (campos que só aceitem "letras" e "espaço")
function checkTexto(val) {
	var Texto = /[QWERTYUIOPASDFGHJKLçZXCVBNMÑqwertyuiopasdfghjklçzxcvbnmñáéíóúÁÉÍÓÚñäëïöüÄËÏÖÜâêîôûÂÊÎÔÛãõÃÕ ]/;
	var strPass = val.value;
	var strLength = strPass.length;
	var lchar = val.value.charAt((strLength) - 1);
	if(lchar.search(Texto) == -1) {
		var tst = val.value.substring(0, (strLength) - 1);
		val.value = tst;
	}
}

//validacao de campos numéricos (campos que só aceitem números)
function checkNum(val) {
	var Num = /[0123456789]/;
	var strPass = val.value;
	var strLength = strPass.length;
	var lchar = val.value.charAt((strLength) - 1);
	if(lchar.search(Num) == -1) {
		var tst = val.value.substring(0, (strLength) - 1);
		val.value = tst;
	}
}
