function Validavazio(form){
for (i=0;i<form.length;i++){
var obg = form[i].obrigatorio;
if (obg==1){
if (form[i].value == ""){
var nome = form[i].name
alert("O campo " + nome + " é obrigatório.")
form[i].focus();
return false
}
}
}
return true
}
//Validação de data

//Validar data

function ValidaData(campo) {
         data = campo.value;
         dia = (data.substring(0,2));
		 mes = (data.substring(3,5));
         ano = (data.substring(6,10));
		 
		 hoje = new Date();
		 AnoAtual = hoje.getFullYear();
		 
		 var situacaoano = 0;

		 var situacao=0; //variavél que verifica situação; 0 (zero) = verdadeiro; 1 (um) = falso
		 var aux=0; //variável que recebe valor falso ou verdadeiro
		 if (isNaN(dia) || isNaN(mes) || isNaN(ano)){ 		 
             aux=1;
		 }
         // verifica se o dia é valido
		 if ((dia < 01)||(dia < 01 || dia > 30) && (  mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) {
             situacao = 1;
         }         
		 // verifica se o mes é valido
         if (mes < 01 || mes > 12 ) {
             situacao = 1;
         }
         // verifica se e ano bissexto
         if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) {
             situacao = 1;
         }
		 // verifica se e ano é valido
         if (ano < 1900 || ano > AnoAtual) {
             if (ano < 1900){
			     situacao = 1;
			     situacaoano = 1;
			 }
			 if (ano > AnoAtual){
			     situacao = 1;
				 situacaoano = 2;
			 }
         }
         if (campo.value == "") {
             situacao = 1;
         }
		 if (situacao == 1 || aux==1){
		     if (situacaoano == 1){
                 alert("Ano menor que 1900!");
                 campo.value="";
			     
			 }
		     if (situacaoano == 2){
                 alert("Ano maior que "+AnoAtual+"!");
                 campo.value="";
			     
			 }
			 if (situacaoano == 0){
			     alert("Data inválida!");
			 	 campo.value="";
			 	 
			 }
			 
         }
}

//Valida Sexo
function ValidaSexo(){
		 //validar sexo
		 d = document.cadastrocurr1;
         if (!d.sexo[0].checked && !d.sexo[1].checked) {
                   alert("Escolha o sexo!")
                   return false;
         }
         return true;
 }


//Chamar função no campo -> onblur="ValidaEmail(this)"
function ValidaEmail(campo){
         var valida;
         var email=campo.value;
         var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
         if (filter.test(email)){
             valida=true;
		 }
         else if (email == ""){
		     alert("É necessário digitar um e-mail!");
			 campo.value="";
		
		 }
		 else{
             alert("Digite um e-mail válido!");
             valida=false;
			 campo.value="";
	     }
         return (valida);
}

/* Validação de CPF */
function validaCPF(campo){
		 cpf = campo.value;
		 valor = true;
		 erro = new String;
		 if (cpf.length < 11) erro += "São necessários 11 dígitos para verificação do CPF! \n\n";
		 if (cpf=="")
		     return true;
		 //var nonNumbers = /\D/;
		 //if (nonNumbers.test(cpf))
		 if (isNaN(cpf)) erro += "A verificação de CPF suporta apenas números! \n\n";
		 if (cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999"){
			 erro += "Número de CPF inválido!"
		 }
		 var a = [];
		 var b = new Number;
		 var c = 11;
		 for (i=0; i<11; i++){
			 a[i] = cpf.charAt(i);
			 if (i < 9) b += (a[i] *  --c);
		 }
		 if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
		 b = 0;
		 c = 11;
		 for (y=0; y<10; y++) b += (a[y] *  c--);
		 if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
		 if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10])){
			erro +="Número do CPF inválido!";
		 }
		 if (erro.length > 0){
			alert(erro);
			campo.value="";
			campo.focus();
			return false;
		 }
		 return true;
}

// Javascript Document

//adiciona mascara de cnpj
function MascaraCNPJ(cnpj){
        if(mascaraInteiro(cnpj)==false){
                event.returnValue = false;
        }       
        return formataCampo(cnpj, '00.000.000/0000-00', event);
}


//adiciona mascara de cep
function MascaraCep(cep){
                if(mascaraInteiro(cep)==false){
                event.returnValue = false;
        }       
        return formataCampo(cep, '00.000-000', event);
}

//adiciona mascara de data
function MascaraData(data){
        if(mascaraInteiro(data)==false){
                event.returnValue = false;
        }       
        return formataCampo(data, '00/00/0000', event);
}

//adiciona mascara ao telefone
function MascaraTelefone(tel){  
        if(mascaraInteiro(tel)==false){
                event.returnValue = false;
        }       
        return formataCampo(tel, '(00) 0000-0000', event);
}

//adiciona mascara a moeda
function MascaraMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, e){
    var sep = 0;
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true;
	var t = new String(objTextBox.value);
	if (whichCode == 8){
	objTextBox.value = t.substring(0, t.length-1);
	}
    key = String.fromCharCode(whichCode); // Valor para o código da Chave
    if (strCheck.indexOf(key) == -1) return false; // Chave inválida
    len = objTextBox.value.length;
    for(i = 0; i < len; i++)
        if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
    aux = '';
    for(; i < len; i++)
        if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) objTextBox.value = '';
    if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
    if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
    if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
                aux2 += SeparadorMilesimo;
                j = 0;
            }
            aux2 += aux.charAt(i);
            j++;
        }
        objTextBox.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
        objTextBox.value += aux2.charAt(i);
        objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
    }
    return false;
}

//adiciona mascara ao CPF
function MascaraCPF(cpf){
        if(mascaraInteiro(cpf)==false){
                event.returnValue = false;
        }       
        return formataCampo(cpf, '000.000.000-00', event);
}

//adiciona mascara a hora
function MascaraHora(Hora, campo){   
   var hora01 = '';   
   hora01 = hora01 + Hora;   
   if (hora01.length == 2){   
      hora01 = hora01 + ':';   
      campo.value = hora01;   
   }   
   if (hora01.length == 5){   
      ValidaHora(campo);   
   }   
}   


function MascaraCPF(cpf){
        if(mascaraInteiro(cpf)==false){
                event.returnValue = false;
        }       
        return formataCampo(cpf, '000.000.000-00', event);
}

//valida hora
function ValidaHora(campo){   
	
   hrs = (campo.value.substring(0,2));   
   min = (campo.value.substring(3,5));   
   estado = "";   
   if ((hrs < 00 ) || (hrs > 23) || ( min < 00) ||( min > 59)){   
      estado = "errada";   
   }   
  
   if (campo.value == "") {   
      estado = "errada";   
   }   
   if (estado == "errada") {
	  campo.value = ""; 
      alert("Hora inválida!");   
   }
   } 
   
   



//valida telefone
function ValidaTelefone(tel){
        exp = /\(\d{2}\)\ \d{4}\-\d{4}/
        if(!exp.test(tel.value)){
				tel.value = "";
                alert('Numero de Telefone Inválido!');
}
}

//valida celular
function ValidaCelular(cel){
        exp = /\(\d{2}\)\ \d{4}\-\d{4}/
        if(!exp.test(cel.value)){
				cel.value = "";
                alert('Numero de Celular Inválido!');
}
}


//valida CEP
function ValidaCep(cep){
        exp = /\d{2}\.\d{3}\-\d{3}/
        if(!exp.test(cep.value)){
				cep.value = "";
                alert('Numero de Cep Inválido!');               
}
}
//valida data
function VValidaData2(data){
        exp = /\d{2}\/\d{2}\/\d{4}/
        if(!exp.test(data.value)){
				data.value = "";
                alert('Data Inválida!');                        
}
}

//valida o CPF digitado
function ValidarCPF(Objcpf){
        var cpf = Objcpf.value;
        exp = /\.|\-/g
        cpf = cpf.toString().replace( exp, "" ); 
        var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
        var soma1=0, soma2=0;
        var vlr =11;
        
        for(i=0;i<9;i++){
                soma1+=eval(cpf.charAt(i)*(vlr-1));
                soma2+=eval(cpf.charAt(i)*vlr);
                vlr--;
        }       
        soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
        soma2=(((soma2+(2*soma1))*10)%11);
        
        var digitoGerado=(soma1*10)+soma2;
        if(digitoGerado!=digitoDigitado){
		cpf = ""
		cpf.value = ""
		Objcpf.value = ""
		alert('CPF Inválido!');         
		}
}

//valida numero inteiro com mascara
function mascaraInteiro(){
        if (event.keyCode < 48 || event.keyCode > 57){
                event.returnValue = false;
                return false;
        }
        return true;
}


//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){
        var cnpj = ObjCnpj.value;
        var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
        var dig1= new Number;
        var dig2= new Number;
        
        exp = /\.|\-|\//g
        cnpj = cnpj.toString().replace( exp, "" ); 
        var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));
                
        for(i = 0; i<valida.length; i++){
                dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);  
                dig2 += cnpj.charAt(i)*valida[i];       
        }
        dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
        dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
        
        if(((dig1*10)+dig2) != digito){
		cnpj = ""
		cnpj.value = ""
		ObjCnpj.value = ""
		
		
			     alert('CNPJ Inválido!');
		}
		
}

//formata de forma generica os campos
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; 
        }
}

/* Função que verifica se campos obrigatórios estão vazios, antes de continuar cadastro */
//function validacontinua(){ 

//if(document.cadastrocurr1.nome_cur.value=="") 
//{ 
//alert( "O campo Nome não pode ficar vazio!" ); 
//document.cadastrocurr1.nome_cur.focus(); 
//return false; 
//}
//if(document.cadastrocurr1.email_cur.value=="") 
//{ 
//alert( "O campo E-mail não pode ficar vazio!" ); 
//document.cadastrocurr1.email_cur.focus(); 
//return false; 
//}
//if(document.cadastrocurr1.msg_cur.value=="") 
//{ 
//alert( "O campo Mensagem não pode ficar vazio!" ); 
//document.cadastrocurr1.msg_cur.focus(); 
//return false; 
//}
//}
