//-----> PADRONIZAÇÃO DO JAVASCRIPT

//-----> Funcional em: IE e Firefox

//-----> Autor:David Augustynczyk / 2006

//

//-----> LEGENDA DAS FUNÇÕES:

//

// v_... = validação ...

// m_... = máscara ...







//-----> somente números:

function v_NR(tecla)

{

if(typeof(tecla) == 'undefined')

var tecla = window.event;

var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);



// permite números, 8=backspace, 46=del e 9=tab

if ( (codigo >= 48 && codigo <= 57) || (codigo >= 96 && codigo <= 105) || codigo == 8 || codigo == 46 || codigo == 9 )

{ return true; }
else
{ alert("Apenas números são permitidos !"); return false; } 

}







//-----> máscara cnpj:

function m_CNPJ(campo,tammax) {



var vr = campo.value;

vr = vr.replace( "-", "" );

vr = vr.replace( "/", "" );

vr = vr.replace( ".", "" );

vr = vr.replace( ".", "" );

var tam = vr.length;



if (tam < tammax) { tam = vr.length + 1 ; }



tam = tam - 1;

if ( (tam > 2) && (tam <= 5) ) {

vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ) ; }

if ( (tam >= 6) && (tam <= 8) ) {

vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }

if ( (tam >= 9) && (tam <= 11) ) {

vr = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }

if ( (tam >= 12) && (tam < 14) ) {

vr = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; }



campo.value = vr;	

}







//-----> máscara cpf:	

function m_CPF(campo,tammax) {



var vr = campo.value;

vr = vr.replace( "-", "" );

vr = vr.replace( ".", "" );

vr = vr.replace( ".", "" );

var tam = vr.length;



if (tam < tammax) { tam = vr.length + 1; }



tam = tam - 1;

if ( (tam > 2) && (tam <= 11) ) {

vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ); }

if ( (tam == 10) ) {

vr = vr.substr( 0, tam - 7 ) + '.' + vr.substr( tam - 7, 3 ) + '.' + vr.substr( tam - 4, tam ); }



campo.value = vr;

}







//-----> máscara cep:

function m_CEP(campo,tammax) {



var vr = campo.value;

vr = vr.replace( "-", "" );

vr = vr.replace( ".", "" );

var tam = vr.length;



if (tam < tammax) { tam = vr.length + 1; }



tam = tam - 1;

if ( (tam > 2) && (tam <= 8) ) {

vr = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ); }

if ( (tam == 7) ) {

vr = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, tam ); }



campo.value = vr;

}







//-----> máscara data:

function m_DATA(campo,tammax,tecla) {



if(typeof(tecla) == 'undefined')

var tecla = window.event;

var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);



var vr = campo.value;

vr = vr.replace( "/", "" );

vr = vr.replace( "/", "" );

var tam = vr.length;



if (tam < tammax) { tam = vr.length + 1; }

if (codigo == 8) { tam = tam - 1; }



tam = tam - 1;

if ( (tam >= 2) && (tam < 3) ) {

vr = vr.substr( 0, tam - 0 ) + '/' + vr.substr( tam - 0, 2 ); }

if ( (tam >= 3) && (tam < 4) ) {

vr = vr.substr( 0, tam - 1 ) + '/' + vr.substr( tam - 1, 2 ); }

if (tam == 4) {

vr = vr.substr( 0, tam - 2 ) + '/' + vr.substr( tam - 2, 2 ) + '/' + vr.substr( tam - 0, 5 ); }

if (tam == 5) {

vr = vr.substr( 0, tam - 3 ) + '/' + vr.substr( tam - 3, 2 ) + '/' + vr.substr( tam - 1, 6 ); }

if (tam == 6) {

vr = vr.substr( 0, tam - 4 ) + '/' + vr.substr( tam - 4, 2 ) + '/' + vr.substr( tam - 2, 7 ); }

if (tam == 7) {

vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 2 ) + '/' + vr.substr( tam - 3, 8 ); }



campo.value = vr;

}







//-----> máscara hora:

function m_HORA(campo,tammax,tecla) {



if(typeof(tecla) == 'undefined')

var tecla = window.event;

var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);



var vr = campo.value;

vr = vr.replace( ":", "" );

vr = vr.replace( ":", "" );

var tam = vr.length;



if (tam < tammax) { tam = vr.length + 1; }

if (codigo == 8) { tam = tam - 1; }



tam = tam - 1;

if ( (tam >= 2) && (tam < 3) ) {

vr = vr.substr( 0, tam - 0 ) + ':' + vr.substr( tam - 0, 2 ); }

if ( (tam >= 3) && (tam < 4) ) {

vr = vr.substr( 0, tam - 1 ) + ':' + vr.substr( tam - 1, 2 ); }

if (tam == 4) {

vr = vr.substr( 0, tam - 2 ) + ':' + vr.substr( tam - 2, 2 ) + ':' + vr.substr( tam - 0, 5 ); }

if (tam == 5) {

vr = vr.substr( 0, tam - 3 ) + ':' + vr.substr( tam - 3, 2 ) + ':' + vr.substr( tam - 1, 6 ); }



campo.value = vr;

}

function validarCPF(obj){
   var oCpf = obj.value;
   oCpf = oCpf.replace('-', '');
   oCpf = oCpf.replace('.', '');
   oCpf = oCpf.replace('.', '');
   oCpf = oCpf.replace('/', '');
   
   var cpf = oCpf;
   
   if(cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111" ||
	  cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" ||
	  cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" ||
	  cpf == "88888888888" || cpf == "99999999999"){
	  window.alert("CPF inválido. Tente novamente.");
	  obj.value = '';
	  return false;
   }

   soma = 0;
   for(i = 0; i < 9; i++)
   	 soma += parseInt(cpf.charAt(i)) * (10 - i);
   resto = 11 - (soma % 11);
   if(resto == 10 || resto == 11)
	 resto = 0;
   if(resto != parseInt(cpf.charAt(9))){
	 window.alert("CPF inválido. Tente novamente.");
	 obj.value = '';
	 return false;
   }
   soma = 0;
   for(i = 0; i < 10; i ++)
	 soma += parseInt(cpf.charAt(i)) * (11 - i);
   resto = 11 - (soma % 11);
   if(resto == 10 || resto == 11)
	 resto = 0;
   if(resto != parseInt(cpf.charAt(10))){
     window.alert("CPF inválido. Tente novamente.");
	 obj.value = '';
	 return false;
   }
   
   fnConsultaCPF(cpf);
   
   return true;
}

var valido;
function ValidaEmail(obj){
	//Form = document.cadastrosite;
	var str = obj.value;
	var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if(filter.test(str)){
	  valido = true;
	}else{
	  if(obj.value.length!=0){
		  alert("E-mail inválido.");
		  obj.value='';
		  valido = false;
	  }
	}
	return valido;
}

function toggle(elementID,destination,destination2){
	var target1 = document.getElementById(elementID);
	var target2 = document.getElementById(destination);
	var target3 = document.getElementById(destination2);
	if (target1.checked == true) {
		//target1.style.display = 'block';
		target2.readOnly=true;
		target2.value='';
		target3.value='';
	} else {
		//target1.style.display = 'none';
		target2.readOnly=false;
		target2.focus();
	}
}

function isNumberKey(e){
	if (!e){ e = window.event;  }
	var code;   
	if (e.keyCode) code = e.keyCode;   
		  
	else if (e.which) code = e.which; // Netscape 4.?   
		  
	if (e.altKey)  
	{  
		  return false;  
	}  
		  
	if (code > 31 && (code < 48 || code > 57))  
	{  
		  return false;  
	}
}

function checaData(obj){//função de validação das data
	if(obj.value.length > 0){
		var min_year=1900;
		var dia=obj.value.substr(0,2),mes=obj.value.substr(3,2),ano=obj.value.substr(6,4);
		if (isNaN(dia) || isNaN(mes) || isNaN(ano)){//verifica se e numerico
			alert("A data deve ser numérica");
			obj.value='';
			return(false);
		}
		if (dia<=0 || dia>31 || mes<=0 || mes>12 || ano<min_year){
			alert("A data é invalida");
			obj.value='';
			return(false);
		}
		if (mes==2 && dia>28){
			alert("A data é invalida");
			obj.value='';
			return(false);
		}
		if (mes==4 || mes==6 || mes==9 || mes==11){
			if (dia>30){
				alert("A data é invalida");
				obj.value='';
				return(false);
			}
			return(true);
		}
		return(true);
	}
}

function compareDates(data1, data2, obj){
	//Verifica se data2 é maior que data1
	//var data1 = "10/10/2000";
	//var data2 = "15/10/2000";
	
	if(data2.length == 10){
		if ( parseInt( data2.split( "/" )[2].toString() + data2.split( "/" )[1].toString() + data2.split( "/" )[0].toString() ) >= parseInt( data1.split( "/" )[2].toString() + data1.split( "/" )[1].toString() + data1.split( "/" )[0].toString() ) )
		{
		  //alert( "maior" );
		  //return false;
		}
		else
		{
		  //alert( "menor" );
		  alert("A data de término dever ser maior que a data de início.");
		  obj.value='';
		  obj.focus();
		  return false;
		}
	}
}

//Ajax
function ajaxInit() {
	var req;
		try {
			req = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(e) {
		try {
			req = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(ex) {
			try {
		req = new XMLHttpRequest();
			} catch(exc) {
	alert("Esse browser não tem recursos para uso do Ajax");
		req = null;
			}
		}
	}
	return req;
}

function fnConsultaCPF(cpf){
	//if(id.length > 0){
		var StringUrl = "consultacpf.asp?sid="+Math.random()+"&cpf="+cpf;
		var imgload = "img/loading.gif";
		//alert(imgload);
		
		ajax = ajaxInit();
		ajax.open("GET", StringUrl, true);
		ajax.setRequestHeader('Content-type','application/x-www-form-urlencoded; charset=utf-8'); 
		ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
		ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
		ajax.setRequestHeader("Content-Type", "text/html; charset=utf-8"); 
		ajax.setRequestHeader("Pragma", "no-cache");
		ajax.onreadystatechange=function() {			
				if (ajax.readyState==1){
					//document.getElementById('divCPF').innerHTML = '&nbsp;&nbsp;<div style="width:1000px; font-family:Verdana; font-weight:bold; font-size:11pt; text-align:center; padding:3px;"><img src='+imgload+' align="absmiddle"></div>';
				}
				if (ajax.readyState==4){
					if(ajax.responseText.length != 0){
						document.getElementById('CPF').value = '';
						alert("O CPF informado já se encontra cadastrado.");
					}
				}
			}
		ajax.send(null);
	//}
}
