// JavaScript Document

function isTime(a){
	time = /^\d{2}:\d{2}$/;
	return time.test(a);
}

function isDate(a){
	date = /^((0[1-9]|[12]\d)\/(0[1-9]|1[0-2])|30\/(0[13-9]|1[0-2])|31\/(0[13578]|1[02]))\/\d{4}$/;
	return date.test(a);
}

function isNumber(a){
	return !(isNaN(a));
}

function isEmail(a){
	email = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
	return email.test(a);
}

function isCNPJ(a){
	return (VerifyCNPJ(a));
}

function isCPF(a){
	return (isCpfCnpj(a));
}

/*
 * Funes usadas para validao do CNPJ
 */

	function isNUMB(c){if((cx=c.indexOf(","))!=-1){c=c.substring(0,cx)+"."+c.substring(cx+1);}if((parseFloat(c)/c!=1)){if(parseFloat(c)*c==0){return(1);}else{return(0);}}else{return(1);}}
	function LIMP(c){while((cx=c.indexOf("-"))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf("/"))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf(","))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf("."))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf("("))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf(")"))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}while((cx=c.indexOf(" "))!=-1){c=c.substring(0,cx)+c.substring(cx+1);}return(c);}
	function VerifyCNPJ(CNPJ){CNPJ=LIMP(CNPJ);if(isNUMB(CNPJ)!=1){return(0);}else{if(CNPJ==0){return(0);}else{g=CNPJ.length-2;if(RealTestaCNPJ(CNPJ,g)==1){g=CNPJ.length-1;if(RealTestaCNPJ(CNPJ,g)==1){return(1);}else{return(0);}}else{return(0);}}}}
	function RealTestaCNPJ(CNPJ,g){var VerCNPJ=0;var ind=2;var tam;for(f=g;f>0;f--){VerCNPJ+=parseInt(CNPJ.charAt(f-1))*ind;if(ind>8){ind=2;}else{ind++;}}VerCNPJ%=11;if(VerCNPJ==0||VerCNPJ==1){VerCNPJ=0;}else{VerCNPJ=11-VerCNPJ;}if(VerCNPJ!=parseInt(CNPJ.charAt(g))){return(0);}else{return(1);}}



// Funo de validao corrente

function vF(frm){
  //objPNA.changeLanguage("P");
  d		= document;
  mF 	= frm ? frm : d.forms[1];
  e		= mF.elements;
  err	= 0;
  for (i = 0; i <= e.length - 1; i++){
    f = e[i];
	if (f.name.substring(0,1) == "_" && f.value != "" && f.value != "-1") {
		if (f.name.substring(1,4) == "tim"){
			if (!(isTime(f.value))){
			  alert ("Digite uma hora vlida em " + f.name.substring(4));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "dat") {
			if (!(isDate(f.value))){
			  alert ("Digite uma data vlida em " + f.name.substring(4));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "num") {
			if (!(isNumber(f.value)) || (f.value == "")){
			  alert ("Digite um nmero em " + f.name.substring(4));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "txt"){
		  if (f.value == ""){
		    alert("Preencha o campo " + f.name.substring(4) + " corretamente.");
			f.focus();
			err++;
			break;
		  }
		} else if (f.name.substring(1,4) == "ema"){
			if (!(isEmail(f.value)) || (f.value == "")){
			  alert ("Digite um email em " + f.name.substring(4));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "arq"){
			if (f.value == ""){
			  alert ("Use o boto procurar para escolher um arquivo em seu computador");
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "slt"){
			if (f.value == ""){
			  alert ("Selecione uma opo em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(1,4) == "mon"){
			if (f.value == ""){
			  alert ("Digite um valor monetrio em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		}
		
	} else {
	
	    if (f.name.substring(0,3) == "tim"){
			if (!(isTime(f.value))){
			  alert ("Digite uma hora vlida em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "dat") {
			if (!(isDate(f.value))){
			  alert ("Digite uma data vlida em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "num") {
			if (!(isNumber(f.value)) || (f.value == "")){
			  alert ("Digite um nmero em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "txt"){
		  if (f.value == ""){
		    alert("Preencha o campo " + f.name.substring(3) + " corretamente.");
			f.focus();
			err++;
			break;
		  }
		} else if (f.name.substring(0,3) == "ema"){
			if (!(isEmail(f.value)) || (f.value == "")){
			  alert ("Digite um email em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "arq"){
			if (f.value == ""){
			  alert ("Use o boto procurar para escolher um arquivo em seu computador");
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "slt"){
			if (f.value == ""){
			  // Hide "ID_" of the alert
			  if (f.name.indexOf("ID_") != -1)
			    alert ("Selecione uma opo em " + f.name.substring(6));
			  else
				alert ("Selecione uma opo em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.id.substring(0,3) == "cnf"){
			f_conf = e[i-1];
			if (f.value != f_conf.value){
				alert("O Email no confere com a confirmao");
				f.focus();
				err++;
			  	break;
			} 
		} else if (f.name.substring(0,3) == "cnp"){
			if (!(isCNPJ(f.value)) || (f.value == "")){
			  alert ("Digite um CNPJ Vlido em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "cpf"){
			if (!(isCPF(f.value)) || (f.value == "")){
			  alert ("Digite um CPF Vlido em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		} else if (f.name.substring(0,3) == "mon"){
			if (f.value == ""){
			  alert ("Digite um valor monetrio em " + f.name.substring(3));
			  f.focus();
			  err++;
			  break;
			}
		}	
		
	}
  }
  if (err != 0) {
	return false;
  } else
    return true;
}



function verifySearch(frm){
	
	param = frm.sltBusca;
	valor = frm.busca; 
  
	if (param.value.indexOf("Data") != -1 && valor.value != "")
		if (!(isDate(valor.value))){
			  alert ("Digite uma data vlida na busca");
			  valor.focus();
			  return false;
		}
	return true;
	
}