/*
 FUNÇÕES AJAX - 05-09-2006
 Diego Búrigo Zacarão 
*/

//Variável glogal 
var http_request = false;
var check = true;
var valid = true;


//Cria e retorna um objeto XMLHTTP (global)
function makeObjRequest(){

  var requestObj;

  if (window.XMLHttpRequest){ // se Firefox, Safari, ...
     requestObj  = new XMLHttpRequest()
     try {
        if (xmlhttp.overrideMimeType) {
            //Se possível, ignora cabecalho usado pelo servidor e forca o padrao "text/xml". Alguns navegadores exigem esse padrao e pode dar erro se o servidor nao utilizar ele
            xmlhttp.overrideMimeType('text/xml');
        }
     }catch (e){}
  }else if (window.ActiveXObject){ // se IE
     try {
     	requestObj  = new ActiveXObject("Msxml2.XMLHTTP")
     }catch (e){
       	try{
	   requestObj = new ActiveXObject("Microsoft.XMLHTTP")
	}catch (e){}
     }
  }

  if (!requestObj) {
     alert('Não foi possível criar uma instancia XMLHTTP');
     return false;
  }

  return(requestObj);
}




// Faz uma requisição usando o método GET
function makeGetRequest(url, div) {

   http_request = makeObjRequest();

   http_request.onreadystatechange = function(){
       showRequest(div);
   }
   http_request.open('GET', url, true);
   http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   http_request.send(null);

}





// Faz uma requisição usando o método POST
function makePostRequest(url, parameters, div) {
   
   http_request = makeObjRequest();

   http_request.onreadystatechange = function(){
       showRequest(div)
   }
   http_request.open('POST', url, true);
//xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8;");
  http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
  http_request.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
  http_request.setRequestHeader("Cache-Control", "post-check=0, pre-check=0"); 
  http_request.setRequestHeader("Pragma", "no-cache");
  http_request.setRequestHeader("encoding", "UTF-8");

   //http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   //http_request.setRequestHeader("Content-length", parameters.length); /* Esta opção dá problema no konquerror */
   http_request.setRequestHeader("Connection", "close");
   http_request.send(parameters);

}





// Mosta o resultado da requisição em um div
function showRequest(div) {
   document.getElementById(div).innerHTML = "<div id=\"carregando\">Carregando...</div>";

   if (http_request.readyState == 4) {
      if (http_request.status == 200) {
          result = http_request.responseText;
          document.getElementById(div).innerHTML = result;
 	  extraiScript(result);
      } else {
          document.getElementById(div).innerHTML = "";
          alert('Opss. Houve um problema com a requisição!');
      }
   }
}





// Varre um objeto do tipo form (formulário) e pega todos os campos e valores concatenando-os em uma variável
// ex:  "nome=Diego&idade=21"
function getObjForm(obj) {
   var string = "";
   var child = obj.firstChild;
   while(child) {
      if (child.nodeType == 1)
	 if (child.tagName == "INPUT" && child.type == "text")
	    string += (child.name + "=" + encodeURIComponent(child.value) + "&");
	 else if (child.tagName == "INPUT" && child.type == "hidden")
	    string += (child.name + "=" + encodeURIComponent(child.value) + "&");
	 else if (child.tagName == "INPUT" && child.type == "password")
	    string += (child.name + "=" + encodeURIComponent(child.value) + "&");
	 else if (child.tagName == "INPUT" && (child.type == "radio" || child.type == "checkbox") && child.checked )
	    string += (child.name + "=" + encodeURIComponent(child.value) + "&");
	 else if (child.tagName == "TEXTAREA")
	    string += (child.name + "=" + encodeURIComponent(child.value) + "&");
	 else if (child.tagName == "SELECT")
	    string += (child.name + "=" + encodeURIComponent(child.options[child.selectedIndex].value) + "&");
	 string += getObjForm(child);
	 child = child.nextSibling;
   }
   return string;
}






 function extraiScript(texto){
//Maravilhosa função feita pelo SkyWalker.TO do imasters/forum
//http://forum.imasters.com.br/index.php?showtopic=165277&
    // inicializa o inicio ><
    var ini = 0;
    // loop enquanto achar um script
    while (ini!=-1){
        // procura uma tag de script
        ini = texto.indexOf('<script', ini);
        // se encontrar
        if (ini >=0){
            // define o inicio para depois do fechamento dessa tag
            ini = texto.indexOf('>', ini) + 1;
            // procura o final do script
            var fim = texto.indexOf('</script>', ini);
            // extrai apenas o script
            codigo = texto.substring(ini,fim);
            // executa o script
            //eval(codigo);
            /**********************
            * Alterado por Micox - micoxjcg@yahoo.com.br
            * Alterei pois com o eval não executava funções.
            ***********************/
            novo = document.createElement("script")
            novo.text = codigo;
            document.body.appendChild(novo);
        }
    }
}








// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormPessoa(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio1');
   validaFormValor('nome');
   validaFormValor('cpf');
   validaFormValor('senha');
   validaFormValor('senha2');
   validaFormValor('email');
   validaFormValor('fone_cel'); 
   validaFormValor('end_estado');
   validaFormValor('end_cidade');
   validaFormValor('end_bairro');
   validaFormValor('end_rua');


   validaFormEndereco('cod_end_cidade');
   validaFormEndereco('cod_end_bairro');
   validaFormEndereco('cod_end_rua');



// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio1');
   if(check==true && valid==true) doCPF('cpf');
   if(check==true && valid==true) senhaIgual('senha', 'senha2');
   if(check==true && valid==true) doEmail('email');



   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}




// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormCliente(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio1');
   validaFormValor('nome');
   validaFormValor('cpf');
   validaFormValor('senha');
   validaFormValor('senha2');
   validaFormValor('email');
   validaFormValor('fone_cel'); 


// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio1');
   if(check==true && valid==true) doCPF('cpf');
   if(check==true && valid==true) senhaIgual('senha', 'senha2');
   if(check==true && valid==true) doEmail('email');



   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}





// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormFaleDeSiMesmo(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio2');
   validaFormValor('nascimento');
   validaFormValor('rg');
   validaFormValor('fone_casa');
   validaFormValor('profissao');
   validaFormValor('escolaridade'); 
   validaFormValor('estado_civil');



// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio2');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}






// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormDadosProfissionais(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio');
   validaFormValor('nome');
   validaFormValor('email');
   validaFormValor('fone_trab');
   validaFormValor('end_estado');
   validaFormValor('end_cidade');
   validaFormValor('end_bairro');
   validaFormValor('end_rua');


   validaFormEndereco('cod_end_cidade');
   validaFormEndereco('cod_end_bairro');
   validaFormEndereco('cod_end_rua');

// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');
   if(check==true && valid==true) doEmail('email');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}







// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormEstiloDeVida(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio');
   validaFormValor('provedor');

// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}




// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormHabitos(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio');
   validaFormValor('time_futebol1');

// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}







// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormVoceEOShopping(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio');


// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}









// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormVoceEAEmpresa(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('numero_sorteio');


// Campos que devem ser validados   
   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}







// Faz uma chamada de submit para o formulário de cadastro da Pesquisa da Empresa
function submitFormPesquisaEmpresa(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
   validaFormValor('nome');
   validaFormValor('email');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}









// Faz uma chamada de submit para o formulário de cadastro de Empresas
function submitFormMulheres(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;
   end   = true;

// Campos que devem serem preenchidos
//   validaFormValor('numero_sorteio');

// Campos que devem ser validados   
//   if(check==true && valid==true) tamanhoNSorteio('numero_sorteio');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
     if(end==true){ 
        if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);
           //document.getElementById('feedback').style.visibility = 'visible';	
        }
     }else{ 
	alert("Ao preencher os campos do endereço é necessário que se escolha uma opção no menu flutuante que aparece em cada campo.");
     }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}














// Faz uma chamada de submit para o formulário de cadastro de clientes
function submitFormAcademico(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;

// Campos que devem ser preenchidos
   validaFormValor('area_curso');
   validaFormValor('area_pretendente');
   validaFormValor('matricula');
   validaFormValor('nome');
   validaFormValor('cpf');
   validaFormValor('senha');
   validaFormValor('senha2');
   validaFormValor('rg');
   validaFormValor('nascimento');
   validaFormValor('sexo');
   validaFormValor('nacionalidade');
   validaFormValor('estado_civil');
   validaFormValor('escolaridade');
   validaFormValor('residir_fora');
   validaFormValor('fone_casa');
   validaFormValor('email');
   validaFormValor('pai');
   validaFormValor('mae');
   validaFormValor('end_estado');
   validaFormValor('end_cidade');
   validaFormValor('end_bairro');
   validaFormValor('end_rua');
   validaFormValor('trabalhando');
   validaFormValor('min_aceitavel');
   validaFormValor('interesse1');
   validaFormValor('interesse2');
   validaFormValor('interesse3');
   validaFormValor('perfil_profissional');
   validaFormValor('end_estado');


   validaFormEndereco('cod_end_cidade');
   validaFormEndereco('cod_end_bairro');
   validaFormEndereco('cod_end_rua');


// Campos que devem ser validados
   //if(check==true && valid==true) doCPF('cpf');
   if(check==true && valid==true) doCPF('cpf');
   if(check==true && valid==true) senhaIgual('senha', 'senha2');
   if(check==true && valid==true) doDate('nascimento');
   if(check==true && valid==true) doEmail('email');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
      if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
         var parameters = getObjForm(obj);
         makePostRequest(url, parameters, div);	
      }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}






// Faz uma chamada de submit para o formulário de cadastro de Eventos
function submitFormLogin(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;

// Campos que devem ser preenchidos
   validaFormValor('numero');
   validaFormValor('senha');
    
   if(check==true){
     // var parameters = getObjForm(obj);
     // makePostRequest(url, parameters, div);	
     //obj.submit();
     obj.submit();
     
   }else{
      alert("Os campos CPF/CNPJ e Senha são obrigatorios!");
   }
}



// Faz uma chamada de submit para o formulário de cadastro de Eventos
function submitFormLembrar(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;

// Campos que devem ser preenchidos
   validaFormValor('numero');

     if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);	
        }else{
           alert("Preencha o campo com seu CPF ou CNPJ!");
        }

}





// Observa se um dado campo está preenchido
function senhaIgual(child, child2){

   var valor1 = document.getElementById(child).value;
   var valor2 = document.getElementById(child2).value;

   if(valor1 != valor2){
	alert("Senha não confere. Digite novamente!");
        document.getElementById(child).value="";
        document.getElementById(child2).value="";
        document.getElementById(child).style.border = '1px solid #f75f00';
        document.getElementById(child2).style.border = '1px solid #f75f00';
	document.getElementById(child).focus();
        valid = false;
   }else{
      document.getElementById(child).style.border = '1px solid #c3bdb4';
      document.getElementById(child2).style.border = '1px solid #c3bdb4';
   }
}


// Observa se um dado campo está preenchido
function validaFormValor(child){

   if(document.getElementById(child).value == "") {
      document.getElementById(child).style.border = '1px solid #f75f00';
      if(check==true) document.getElementById(child).focus(); // se não há campo anterior não preenchido, seta o foco
      check = false;
   }else{
      document.getElementById(child).style.border = '1px solid #c3bdb4';
   }

}



// Observa se um dado campo está preenchido (Cadastro de endereço)
function validaFormEndereco(child){

   var field = child.replace(/cod_/g,"");

   if(document.getElementById(child).value == "") {
      document.getElementById(field).style.border = '1px solid #f75f00';
      document.getElementById(field).value = "";
      if(check==true) document.getElementById(field).focus(); // se não há campo anterior não preenchido, seta o foco
      check = false;
   }else{
      document.getElementById(field).style.border = '1px solid #c3bdb4';
   }

}



function mudouEndereco(child){


     if(child.name=="end_estado"){
      	document.getElementById('cod_end_cidade').value = "";
      	document.getElementById('end_cidade').value = "";
     }

     if(child.name=="end_cidade" || child.name=="end_estado"){
	document.getElementById('cod_end_bairro').value = "";
	document.getElementById('end_bairro').value = "";
     }

	document.getElementById('cod_end_rua').value = "";
	document.getElementById('end_rua').value = "";


}




// Valida datas no formato DD/MM/AAAA
function doDate(child){
  
  var reDate = /^((0[1-9]|[12]\d)\/(0[1-9]|1[0-2])|30\/(0[13-9]|1[0-2])|31\/(0[13578]|1[02]))\/\d{4}$/; // DD/MM/AAAA
  var valor = document.getElementById(child).value;
  
  if (!reDate.test(valor)){
     if (valor != null && valor != "") {
	alert("Data inválida. "+ valor);
        document.getElementById(child).value="";
        document.getElementById(child).style.border = '1px solid #f75f00';
	document.getElementById(child).focus();
        valid = false;
     }
  }else{
        document.getElementById(child).style.border = '1px solid #c3bdb4';
  }
}





// Valida e-mail
function doEmail(child){
 
  var reEmail = /^\w+([\._-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
  var valor = document.getElementById(child).value;

  if (!reEmail.test(valor)){
     if (valor != null && valor != "") {
	alert("Favor informe um e-mail válido.");
        document.getElementById(child).value="";
        document.getElementById(child).style.border = '1px solid #f75f00';
        document.getElementById(child).focus();
        valid = false;
     }
  }else{
        document.getElementById(child).style.border = '1px solid #c3bdb4';
  }
}





// Valida CPF
function doCPF(child){

  var valor = document.getElementById(child).value;

  if ((!isCpf(valor)) || valor.length!=14){
     if (valor != null && valor != "") {
	alert("Favor informe um CPF válido.");
        document.getElementById(child).value="";
        document.getElementById(child).style.border = '1px solid #f75f00';
        document.getElementById(child).focus();
        valid = false;
     }
  }else{
        document.getElementById(child).style.border = '1px solid #c3bdb4';
  }
}







// Valida CNPJ
function doCNPJ(child){

  var valor = document.getElementById(child).value;

  if (!isCnpj(valor)){
     if (valor != null && valor != "") {
	alert("Favor informe um CNPJ válido.");
        document.getElementById(child).value="";
        document.getElementById(child).style.border = '1px solid #f75f00';
        document.getElementById(child).focus();
        valid = false;
     }
  }else{
      document.getElementById(child).style.border = '1px solid #c3bdb4';
  }
}







function tamanhoNSorteio(child){

	var size = document.getElementById(child).value.length;

	if (size != 6){
		alert("Numero para sorteio deve conter 6 dígitos.");
        	document.getElementById(child).value="";
        	document.getElementById(child).style.border = '1px solid #f75f00';
        	document.getElementById(child).focus();
        	valid = false;
	}else{
      		document.getElementById(child).style.border = '1px solid #c3bdb4';
  	}

}




/* 
Função para habilitar e desabilitar um conjunto de campos (checkbox) com a seguinte estrutura de nomeação:
campo1, campo2, campo3 ,campoN.
Chamada da função: citeDois('campo', N);
*/
function citeDois(nome, tam){

	var i=1;
	var qtd=0;

 	while(i<=tam){
	   if (document.getElementById(nome+i).checked == true)
		qtd++;
	   i++;
	}

// Quantidade limite de seleções, acima de DUAS seleções os outros campos serão desabilitados.
	if(qtd>=2){
	   i=1;
 	   while(i<=tam){
	      if (document.getElementById(nome+i).checked == false)
		  document.getElementById(nome+i).disabled=true;
	      i++;
	   }
	}else{
	   i=1;
 	   while(i<=tam){
	      if (document.getElementById(nome+i).checked == false)
		  document.getElementById(nome+i).disabled=false;
	      i++;
	   }
	}	
}



/*
Valida de a data final de um pediodo é menor que a data inicial
*/
function validaPeriodo(data_inicial,data_final){

	// Verifica se data2 é maior que data1
	var data1 = document.getElementById(data_inicial).value;
	var data2 = document.getElementById(data_final).value;


	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() ) ){
  		return true;
	}else{
  		alert( "Data Final é menor que a Data Inicial!");
		document.getElementById(data_final).style.border = '1px solid #f75f00';
		document.getElementById(data_final).focus();
        	document.getElementById(data_final).select();
		return false;
	}

      	document.getElementById(data_final).style.border = '1px solid #c3bdb4';
  	

}



/*
Valida de a data final de um pediodo é menor que a data inicial
*/
function validaPeriodoIdade(idade_inicial,idade_final){

	// Verifica se data2 é maior que data1
	var data1 = document.getElementById(idade_inicial).value;
	var data2 = document.getElementById(idade_final).value;

	if(parseInt(data2.toString()) >= parseInt(data1.toString())){
  		return true;
	}else{
  		alert( "Idade Final é menor que a Idade Inicial!");
        	document.getElementById(idade_final).focus();
		return false;
	}


}




// Faz uma chamada de submit para o formulário de cadastro de Eventos
function submitFormExportar(obj) {
   
// Variáveis de controle Globais
   check = true;
   valid = true

// Campos que devem ser preenchidos
   validaFormValor('tipo_cadastro');
   //validaFormValor('sexo');
  // validaFormValor('idade_inicial');
  // validaFormValor('idade_final');
   validaFormValor('data_inicial');
   validaFormValor('data_final');

   //if(check==true && validaPeriodoIdade('idade_inicial','idade_final')==false)
 //	return false;

   if(check==true && valid==true) doDate('data_inicial');
   if(check==true && valid==true) doDate('data_final');


   if(check==true){
      if(valid==true){ // se validações ok (data)  
	if(validaPeriodo('data_inicial','data_final')==true){
     	   return true;
        }
      }
     
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
   return false;
}




// Faz uma chamada de submit para o formulário de cadastro de clientes
function submitFormUsuarios(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;

// Campos que devem ser preenchidos
   validaFormValor('nome');
   validaFormValor('login');
   validaFormValor('senha');
   validaFormValor('senha2');
   validaFormValor('email');
   validaFormValor('tipo');


// Campos que devem ser validados
   if(check==true && valid==true) senhaIgual('senha', 'senha2');
   if(check==true && valid==true) doEmail('email');


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
      if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
         var parameters = getObjForm(obj);
         makePostRequest(url, parameters, div);	
      }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}





// Faz uma chamada de submit para o formulário de consulta de cliente no módulo de cadastro de pontuação
function submitFormConsultaCliente(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;

     if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
           var parameters = getObjForm(obj);
           makePostRequest(url, parameters, div);	
     }

}




// Faz uma chamada de submit para o formulário de cadastro de clientes
function submitFormPontuacao(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;

// Campos que devem ser preenchidos
   //validaFormValor('documento');
 
   /*var i=1;

   while(document.getElementById('qtd_produtos').value >= i){
      validaFormValor('produto'+i);
      validaFormValor('valor_produto'+i); 
      i++;

   }
*/

   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
      if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
         var parameters = getObjForm(obj);
         makePostRequest(url, parameters, div);	
      }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}


// Faz uma chamada de submit para o formulário de cadastro pontuação
function submitFormPontuacao2(obj, url, div) {
   
// Variáveis de controle Globais
   check = true;
   valid = true;

// Campos que devem ser preenchidos
   //validaFormValor('documento');
 
   var i=1;

   while(document.getElementById('qtd_produtos').value >= i){
      validaFormValor('produto'+i);
      validaFormValor('valor_produto'+i); 
      i++;

   }


   if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
      if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
         var parameters = getObjForm(obj);
         makePostRequest(url, parameters, div);	
      }
   }else{
      alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
   }
   
}




// Faz uma chamada de submit para o formulário de cadastro de dependentes
function submitFormDependentes(obj, url, div){
   
// Variáveis de controle Globais
   check = true;
   valid = true;


   var i=1;
   mudou=false;
   while(i<=7){

     if(document.getElementById('codigo'+i).value == "" && document.getElementById('nome'+i).value != "")
        mudou=true;

     i++;
   }

   if(mudou==false){ // se nao houver mudança na página, não envia.
      alert("Você deve acrescentar um dependente para então enviar o formulário!");
  
   }else{
	
	// Valida campos preenchidos.
	// se nome for preenchido o nascimento também deve ser
	
	var i=1;
	while(i<=7){
	
	if(document.getElementById('nome'+i).value != ""){
	   validaFormValor('nascimento'+i);
	   validaFormValor('parentesco'+i);
	}
	
	i++;
	}
	
	
	if(check==true){ // se nao estiver campo obrigatorios nao preenchidos
	if(valid==true){ // se validações ok (e-mail, cpf, cnpj)  
		var parameters = getObjForm(obj);
		makePostRequest(url, parameters, div);	
	}
	}else{
	alert("Há campo(s) obrigatorio(s) não preenchido(s)!");
	}
   }
}




