function verifica_email(objeto){
	//algoritmo para verificar o email
	//criado pro Ricardo S R / D F - 04 de março de 2008
	//Livre para todos os usuário modificar e melhorar....
	var qtdearroba=0;
	var qtdestraposarroba=0;
	var qtdestraposponto=0;
	var qtdearroba=0;
	var qtdeponto=0;
	//var tamanho = 0;
    var temp = "";
	var conteudo=objeto.value;
	var tamanho = objeto.value.length;
	if (objeto.value != '') {
		if((objeto.value.indexOf('@') <= 0)){
			alert('Erro 1 - O email está no formato inválido.');
			objeto.focus();
			return false;
		} else {
			for (var i=0;i<tamanho;i++) {
				temp=conteudo.substring(i, i+1);
				if (temp == '@') {
					qtdearroba=qtdearroba+1;
					if (qtdearroba>1) {
						qtdestraposarroba=0;											
						qtdeponto=0;
						i=tamanho;
					}
				} else {
					if (qtdearroba>0) {
						if (temp == '.') {
							if (qtdestraposarroba==0) {
								qtdestraposponto=0;
								qtdeponto=0;
								i=tamanho;
							} else {
								qtdestraposponto=0;
								qtdeponto=1;
							}
						} else {
							qtdestraposarroba=1;					
							if (qtdeponto>0) {
								qtdestraposponto=1;
							}
						}
					}
				}
			}
			if (qtdearroba>1) {
				alert('Erro 2 - O email está no formato inválido.');
				objeto.focus();
				return false;			
			} else {
				if (qtdestraposarroba<1) {
					alert('Erro 3 - O email está no formato inválido.');
					objeto.focus();
					return false;
				} else {
					if (qtdeponto<1) {
						alert('Erro 4 - O email está no formato inválido.');
						objeto.focus();
						return false;
					} else {
						if (qtdestraposponto<1) {
							alert('Erro 5 - O email está no formato inválido.');
							objeto.focus();
							return false;
						}			
					}
				}
			}
		}
	}
}
function trava() //TRAVANDO A TECLA CTRL+N
{
	var tecla=window.event.keyCode; 
	if (tecla==78) {
		event.keyCode=0; event.returnValue=false;
		alert('Tecla inválida!');	
	}
}
function ucase(objeto) {
	 if ((event.keyCode == '34') || (event.keyCode == '39')) //Testa se NÃO foram digitados números
	{
		alert(event.keyCode);
		alert('Tecla xxxx!');
		event.keyCode = '127';
		
	} else {
		objeto.value=objeto.value.toUpperCase();
	}	
	objeto.focus();
}
function lcase(objeto) {
 if (event.keyCode == '10') //Testa se foi digitado Enter
	{
	} else if (event.keyCode == '34' || event.keyCode == '39') //Testa se NÃO foram digitados números
	{
		alert('Tecla inválida!');
		event.keyCode = '127';
	} else {
		objeto.value=objeto.value.toLowerCase();
	}	
}
function MascaraCNPJ(cnpj){
    if(mascaraInteiro(cnpj)==false){
        event.returnValue = false;
    }    
    return formataCampo(cnpj, '00.000.000/0000-00', event);
}
//adiciona mascara de números
function MascaraNumeros(numero){
    if(mascaraInteiro(numero)==false){
        event.returnValue = false;
    }    
    return formataCampo(numero, '00000000000000', 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 ao CPF
function MascaraCPF(cpf){
    if(mascaraInteiro(cpf)==false){
        event.returnValue = false;
    }    
    return formataCampo(cpf, '000.000.000-00', event);
}

//valida telefone
function ValidaTelefone(tel){
    exp = /\(\d{2}\)\ \d{4}\-\d{4}/
    if(!exp.test(tel.value))
        alert('Numero de Telefone Invalido!');
}

//valida CEP
function ValidaCep(cep){
    exp = /\d{2}\.\d{3}\-\d{3}/
    if(!exp.test(cep.value)) 
	        alert('Numero de Cep Invalido!');        
}

//valida data
function ValidaData(data){
    exp = /\d{2}\/\d{2}\/\d{4}/
    if(!exp.test(data.value)) {
		data.backcolor=255;          
        alert('Data Invalida!');  
	} else {		
		VerificaData(data.value);
	}
}

//Verficando a Data
function VerificaData(digData) 
{
    var bissexto = 0;
    var data = digData; 
    var tam = data.length;
    if (tam == 10) 
    {
        var dia = data.substr(0,2)
        var mes = data.substr(3,2)
        var ano = data.substr(6,4)
        if ((ano > 1900)||(ano < 2100))
        {
			switch (mes) 
            {
				case '01':
					if  (dia <= 31) 
						return (true);
					break;
				case '02':
					if  (dia <= 29) {
						return (true);
					} else {
						/* Validando ano Bissexto / fevereiro / dia */ 
						if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0)) 
						{ 
							bissexto = 1; 
						} 
						if ((bissexto == 1) && (dia <= 29)) 
						{ 
							return true;                 
						} 
						if ((bissexto != 1) && (dia <= 28)) 
						{ 
							return true; 
						}    
					}        
					break                        
				case '03':
					if  (dia <= 31) 
						return (true);
						break;
				case '04':
					if  (dia <= 30) 
						return (true);
						break;
				case '05':
					if  (dia <= 31) 
						return (true);
						break;
				case '06':
					if  (dia <= 30) 
						return (true);
						break;
				case '07':
					if  (dia <= 31) 
						return (true);
						break;
				case '08':
					if  (dia <= 31) 
						return (true);
						break;
				case '09':
					if  (dia <= 30) 
						return (true);
						break;
				case '10':
					if  (dia <= 31) 
						return (true);
						break;
				case '11':
					if  (dia <= 30) 
						return (true);
						break;
				case '12':
					if  (dia <= 31) 
						return (true);
						break;
			}
		}
		return false;
    }    
    alert("A Data "+data+" é inválida!");
    return false;
}
//valida o CPF digitado
function ValidarCPF(Objcpf){
    var cpf = Objcpf.value;
    exp = /\.|\-/g
    
	
	cpf = cpf.toString().replace( exp, '' );
	if (cpf != '') {
		if ((cpf != "11111111111")&&(cpf != "22222222222")&&(cpf != "33333333333")&&(cpf != "44444444444")&&(cpf != "55555555555")&&(cpf != "66666666666")&&(cpf != "77777777777")&&(cpf != "88888888888")&&(cpf != "99999999999")&&(cpf != "00000000000")) {
			
			if (((cpf.charAt(9))) && ((cpf.charAt(10)))) {
				
				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 (cpf != '') { 
				
					if (digitoGerado != digitoDigitado) {
						alert('CPF Invalído');
					}
				}
	
			} else {
				
				alert('CPF Invalído');
				Objcpf.focus();
			}
		
		} else {
			
			alert('CPF Invalído');
			Objcpf.focus();
			
		}
	}
}

//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)    
        alert('CNPJ Invalido!');
        
}

//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;
    }
}



function numero(e) { 
	if (window.event) //IE 
	{ 
		tecla = e.keyCode; 
	} else if (e.which) //FF 
	{ 
		tecla = e.which; 
	} 
	//techa==8 é para permitir o backspace funcionar para apagar 
	
	if ( (tecla >= 48 && tecla <= 57)||(tecla == 8 ) ) { 
		return true; 
	} else { 
		return false; 
	} 
}

