// JavaScript Document

function abreTextbox(numero,check){
	if(check.checked){
		document.getElementById('txt'+numero).style.display = 'block';
	}
	else{
		document.getElementById('txt'+numero).style.display = 'none';
	};
}

function validaFormulario(frm,d){
	var valido = true;
	var x = d.split(',');
	
		for(var i=0;i<x.length-1;i++){
		var id = 'chk'+x[i];
		var check = document.getElementById(id);
		var id2 = 'txt'+x[i];
		var text = document.getElementById(id2);

		if(check.checked==true){
			if (text.value==''){
				alert('Preencha o campo QUAL?');
				text.style.display = 'block';
				text.focus();
				return false;
			}
		}
	}
	
with(frm){
	if(selCurso.value==0){
		alert('Por favor, escolha o curso.');
		valido = false;
		selCurso.focus();
	}
	else if(txtNome.value==''){
		alert('Por favor, preencha o campo Nome.');
		valido = false;
		txtNome.focus();
	}
	else if(txtCPF.value==''){
		alert('Por favor, preencha o campo CPF.');
		valido = false;
		txtCPF.focus();
	}
	else if(txtCPF.value=='01234567890'){
		alert('Por favor, informe um CPF válido.');
		valido = false;
		txtCPF.value='';
		txtCPF.focus();
	}
	else if(!isCPFCNPJ(txtCPF.value,1)){
    	alert('Por favor, informe um CPF válido.');
      	valido = false;
		txtCPF.value='';
	 	txtCPF.focus();
   	}
	else if(txtEmail.value==''){
		alert('Por favor, preencha o campo E-mail.');
		valido = false;
		txtEmail.focus();
	}
	else if(txtEmail.value.indexOf('@') == -1){
		alert('Por favor, preencha o campo E-mail corretamente.');
		valido = false;
		txtEmail.focus();
	}
	else if(!validaEmail(txtEmail)){
		alert("O e-mail informado parece não estar correto!");
		valido = false;
		txtEmail.focus();
	}
	else if(txtCEP.value==''){
		alert('Por favor, preencha o campo CEP.');
		valido = false;
		txtCEP.focus();
	}
	else if(txtCEP.value.length!=9){
		alert('Por favor, preencha o campo CEP corretamente.');
		valido = false;
		txtCEP.focus();
	}
	else if(txtEndereco.value==''){
		alert('Por favor, preencha o campo Endereço.');
		valido = false;
		txtEndereco.focus();
	}
	else if(selRegiaoReside.value==0){
		alert('Por favor, escolha a região onde reside.');
		valido = false;
		selRegiaoReside.focus();
	}
	else if(selTrabalha.value==0){
		alert('Por favor, escolha a região onde trabalha.');
		valido = false;
		selTrabalha.focus();
	}
	else if(txtBairro.value==''){
		alert('Por favor, preencha o campo Bairro.');
		valido = false;
		txtBairro.focus();
	}
	else if(txtMunicipio.value==''){
		alert('Por favor, preencha o campo Município.');
		valido = false;
		txtMunicipio.focus();
	}
	else if(txtUF.value==''){
		alert('Por favor, preencha o campo UF.');
		valido = false;
		txtUF.focus();
	}
	else if(txtUF.value.length!=2){
		alert('Por favor, preencha o campo UF corretamente.');
		valido = false;
		txtUF.value='';
		txtUF.focus();
	}
	else if(isnotNumber(txtUF.value)){
		alert('Por favor, preencha o campo UF corretamente.');
		valido = false;
		txtUF.value='';
		txtUF.focus();
	}
	else if(txtResidencial.value=='' &&	txtComercial.value=='' && txtCelular.value==''){
		alert('Por favor, preencha pelo menos um campo Telefone.');
		valido = false;
		txtResidencial.focus();
	}
	else if(txtResidencial.value.length>0 && txtResidencial.value.length!=14){
		alert('Por favor, preencha o campo Telefone Residencial corretamente.');
		valido = false;
		txtResidencial.focus();
	}
	else if(txtComercial.value.length>0 && txtComercial.value.length!=14){
		alert('Por favor, preencha o campo Telefone Comercial corretamente.');
		valido = false;
		txtComercial.focus();
	}
	else if(txtCelular.value.length>0 && txtCelular.value.length!=14){
		alert('Por favor, preencha o campo Celular corretamente.');
		valido = false;
		txtCelular.focus();
	}
}//fecha with
	
return valido;
}//fecha function

function foco_inicial(){
	document.forms[0].txtNome.focus();
}

function isNumber(sText){
	var ValidChars = "0123456789 -()";
	var IsNumber=false;
	var Char;
	for (i = 0; i < sText.length && IsNumber == false; i++){
	  Char = sText.charAt(i);
	  if (ValidChars.indexOf(Char) == -1){
		  IsNumber = true;
	  }
	}
	return IsNumber;
} 

function isnotNumber(sText){
	var ValidChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var IsNumber=false;
	var Char;
	for (i = 0; i < sText.length && IsNumber == false; i++){
	  Char = sText.charAt(i);
	  if (ValidChars.indexOf(Char) == -1){
		  IsNumber = true;
	  }
	}
	return IsNumber;
}

function isCPFCNPJ(campo,pType){
   if( isEmpty( campo ) ){return false;}

   var campo_filtrado = "", valor_1 = " ", valor_2 = " ", ch = "";
   var valido = false;
        
   for (i = 0; i < campo.length; i++){
      ch = campo.substring(i, i + 1);
      if (ch >= "0" && ch <= "9"){
         campo_filtrado = campo_filtrado.toString() + ch.toString()
         valor_1 = valor_2;
         valor_2 = ch;
      }
      if ((valor_1 != " ") && (!valido)) valido = !(valor_1 == valor_2);
   }
   if (!valido) campo_filtrado = "12345678912";

   if (campo_filtrado.length < 11){
      for (i = 1; i <= (11 - campo_filtrado.length); i++){campo_filtrado = "0" + campo_filtrado;}
   }

	if(pType <= 1){
		if ( ( campo_filtrado.substring(9,11) == checkCPF( campo_filtrado.substring(0,9) ) ) && ( campo_filtrado.substring(11,12)=="") ){return true;}
	}

	if((pType == 2) || (pType == 0)){
		if (campo_filtrado.length >= 14){
			if ( campo_filtrado.substring(12,14) == checkCNPJ( campo_filtrado.substring(0,12) ) ){ return true;}
		}
	}
	
	return false;
}

function checkCNPJ(vCNPJ){
   var mControle = "";
   var aTabCNPJ = new Array(5,4,3,2,9,8,7,6,5,4,3,2);
   for (i = 1 ; i <= 2 ; i++){
      mSoma = 0;
      for (j = 0 ; j < vCNPJ.length ; j++)
         mSoma = mSoma + (vCNPJ.substring(j,j+1) * aTabCNPJ[j]);
      if (i == 2 ) mSoma = mSoma + ( 2 * mDigito );
      mDigito = ( mSoma * 10 ) % 11;
      if (mDigito == 10 ) mDigito = 0;
      mControle1 = mControle ;
      mControle = mDigito;
      aTabCNPJ = new Array(6,5,4,3,2,9,8,7,6,5,4,3);
   }
   return( (mControle1 * 10) + mControle );
}

function checkCPF(vCPF){
   var mControle = ""
   var mContIni = 2, mContFim = 10, mDigito = 0;
   for (j = 1 ; j <= 2 ; j++){
      mSoma = 0;
      for (i = mContIni ; i <= mContFim ; i++)
         mSoma = mSoma + (vCPF.substring((i-j-1),(i-j)) * (mContFim + 1 + j - i));
      if (j == 2 ) mSoma = mSoma + ( 2 * mDigito );
      mDigito = ( mSoma * 10 ) % 11;
      if (mDigito == 10) mDigito = 0;
      mControle1 = mControle;
      mControle = mDigito;
      mContIni = 3;
      mContFim = 11;
   }
   return( (mControle1 * 10) + mControle );
}

function isEmpty(pStrText){
	var	len = pStrText.length;
	var pos;
	var vStrnewtext = "";

	for (pos=0; pos<len; pos++){
		if (pStrText.substring(pos, (pos+1)) != " "){
			vStrnewtext = vStrnewtext + pStrText.substring(pos, (pos+1));
		}
	}

	if (vStrnewtext.length > 0)
		return false;
	else
		return true;
}

function checarCPFAntesSubmit(txtCPF){
	var isValid = true;
	
	if(!isCPFCNPJ(txtCPF.value,1)){
		alert('Por favor, informe um CPF válido.');
		txtCPF.value='';
		isValid = false;
		txtCPF.focus();
	}//of if
	//the cpf is valid
	else{
		//Tenta criar o objeto xmlHTTP
        try{
        	xmlhttp = new XMLHttpRequest();
        }catch(ee){
			try{
            	xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }catch(E){
				xmlhttp = false;
			}//of catch
        }//of catch
		url = "json_pre_cadastro.php?cpf="+txtCPF.value
		
		//Abre a conexão
        xmlhttp.open("GET",url,true);

        //Função para tratamento do retorno
        xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4){
				//Mostra o HTML recebido
				retorno=unescape(xmlhttp.responseText.replace(/\+/g," "))
			
				var array_retorno = eval(retorno);
				if(array_retorno.length>=1){
					alert('Esse CPF já está cadastrado! Para maiores informações, entre em contato com a FECAP pelo telefone: 3242-2015.');
					txtCPF.value=''
				}
				/*
				with(document.forms[0]){
					selCurso.value = array_retorno[0]. 
					txtNome.value = array_retorno[0].PPIN_NOME
					txtEndereco.value = array_retorno[0].PPIN_ENDERECO
					txtComplemento.value = array_retorno[0].PPIN_ENDERECO_COMP
					txtBairro.value = array_retorno[0].PPIN_BAIRRO
					txtMunicipio.value = array_retorno[0].
					txtCEP.value  = array_retorno[0].PPIN_CEP
                }*/
			}
        }
        //Executa
        xmlhttp.send(null);
	}//of else
	return isValid;   	
}//of txtCPF

function foco(txtCPF,frm){
	var valida = true;
	if(txtCPF.value.length!=11){
		alert('Por favor, preencha o campo CPF corretamente.');
		valida = false;
		txtCPF.value='';
		txtCPF.focus();
	}
return valida;
}

function valida_data(obj) {
	var data_arr 	= obj.value.split("/");
	var dia 		= data_arr[0];
	var mes 		= data_arr[1];
	var ano 		= data_arr[2];
	

	var dtAtual 	= new Date();
	
	if ( (dtAtual.getFullYear() - ano) < 18) {
		alert("A data de nascimento deve contemplar idade maior ou igual a 18 anos.");
		obj.focus();
	}
	else {
		return true;
	}
}
