// JavaScript Document



//adiciona mascara ao CPF
function MascaraCPF(cpf){
	if(mascaraInteiro(cpf)==false){
		event.returnValue = false;
		}
		return formataCampo(cpf, '000.000.000-00', event);
}

//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)                        
    	alert('CPF Invalido!');         
 }
 
 //valida numero inteiro com mascara
function mascaraInteiro(){
	if (event.keyCode < 48 || event.keyCode > 57){
		event.returnValue = false;
		return false;        
		}        
	return true;
}

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;         
	}
}


