// Define variável global

var xmlhttp;

function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function cep(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
    return v
}

function data(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d{2})(\d{2})(\d)/,"$1/$2/$3") //Esse é tão fácil que não merece explicações
    return v
}

function telefone(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
    return v
}

function cpf(v){
    v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
                                             //de novo (para o segundo bloco de números)
    v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
    return v
}

function soNumeros(v){
    return v.replace(/\D/g,"")
}

function soNumeros_Dec(v){
    v=v.replace(/[^0123456789,.]/g,""); //Remove tudo o que não for Letra
    return v
}

function letras_upper(v){
    v=v.toUpperCase();             //Maiúsculas
    v=v.replace(/[^ABCDEFGHIJKLMNOPQRSTUVXWYZ ]/g,""); //Remove tudo o que não for Letra
    return v
}

function soletras(v){
    v=v.replace(/[^ABCDEFGHIJKLMNOPQRSTUVXWYZabcdefghijklmnopqrstuvxywz ]/g,""); //Remove tudo o que não for Letra
    return v
}

function so_email(v){
    v=v.replace(/[^ABCDEFGHIJKLMNOPQRSTUVXWYZabcdefghijklmnopqrstuvxywz0123456789@-_.]/g,""); //Remove tudo o que não for Letra
    return v
}

function ValidaTelefone(tel){
    varConteudo = tel.value;
    if(varConteudo == ""){
            tel.className='normal';
            return false
    }
    exp = /\(\d{2}\)\ \d{4}\-\d{4}/
    if(!exp.test(tel.value)){
        document.getElementById("popup_resposta").style.display = 'block';
	      document.getElementById("titulo_popup_resposta").innerHTML = "Campo Inv&aacute;lido";
	      document.getElementById("conteudo_popup_resposta").innerHTML = "Por favor. Telefone Informado Inv&aacute;lido!";
	      document.frmAvaliacao.field_telefone.focus();
	      setTimeout("focus_tel();",50);
	  }
	  tel.className='normal';
}

function focus_tel(){
    document.frmAvaliacao.field_telefone.focus();
}

function formata_cpf(valor, campo){
  
  document.getElementById(campo).className='normal';
  
  if(valor == ""){
      return false
  }
  
  varQtd_Max = 11;
  varQtd = valor.length;
  varQtd_Restante = varQtd_Max - varQtd;
  varNovo_Cpf = valor;
  varNome_Campo = campo;
  
  var i
  for (i=0;i<varQtd_Restante;i++) {
    varNovo_Cpf = "0"+varNovo_Cpf;
  }
  
  varCpf_Pre_Format = varNovo_Cpf;
  
  varNovo_Cpf=varNovo_Cpf.replace(/(\d{3})(\d)/,"$1.$2");
  varNovo_Cpf=varNovo_Cpf.replace(/(\d{3})(\d)/,"$1.$2");

  varNovo_Cpf=varNovo_Cpf.replace(/(\d{3})(\d{1,2})$/,"$1-$2");
  
  document.getElementById(campo).value = varNovo_Cpf;
  
  setTimeout("VerificaCPF(varCpf_Pre_Format, varNome_Campo)",0);
  

}

function VerificaCPF(valor_cpf, nome_campo) {

var CPF;
CPF    = valor_cpf;
campo  = nome_campo;

document.getElementById(campo).className='normal';



if (vercpf(CPF)) {
}
else {
    errors="1";
    if (errors){ 
      document.getElementById("popup_resposta").style.display = 'block';
		  document.getElementById("titulo_popup_resposta").innerHTML = "Campo Inválido";
		  document.getElementById("conteudo_popup_resposta").innerHTML = "CPF informado Inválido!";
    }
    
    document.getElementById(campo).value = "";
    document.retorno = (errors == '');
    document.getElementById(campo).focus();
}

}

function vercpf (cpf)  {
  if (cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999")
  return false;
  add = 0;
  for (i=0; i < 9; i ++)
  add += parseInt(cpf.charAt(i)) * (10 - i);
  rev = 11 - (add % 11);
  if (rev == 10 || rev == 11)
  rev = 0;
  if (rev != parseInt(cpf.charAt(9)))
  return false;
  add = 0;
  for (i = 0; i < 10; i ++)
  add += parseInt(cpf.charAt(i)) * (11 - i);
  rev = 11 - (add % 11);
  if (rev == 10 || rev == 11)
  rev = 0;
  if (rev != parseInt(cpf.charAt(10)))
  return false;
  return true;
}

function habilita_dependentes(dependentes){
  var varDependentes;
  varDependentes = dependentes;

  if (varDependentes != "" &  varDependentes != "0") {
      document.getElementById("oculta_select").style.display = 'block';   
  }
  else {
      document.getElementById("oculta_select").style.display = 'none';
      document.frmAvaliacao.conjuge.checked=false;
      document.frmAvaliacao.filhos.checked=false;
      document.frmAvaliacao.pais.checked=false;
      document.frmAvaliacao.outros_dependentes.checked=false;
  }
  
}

function KeyPress(id){ 
  
  var_nomeId = id;
  var_conteudo = document.getElementById(var_nomeId).value;
  
  if (var_conteudo != "") {
      document.getElementById(var_nomeId).className='normal';
  }
  else {
      document.getElementById(var_nomeId).className='lemb_preenche';
  }
} 


function formataValorMonetario(campooriginal,decimais,tipo)
{
  if (tipo == "SD"){
      
      varValor_Habitacao   = document.frmAvaliacao.habitacao.value;
      varValor_Alimentacao = document.frmAvaliacao.alimentacao.value;
      varValor_Transporte  = document.frmAvaliacao.transporte.value;
      varValor_Comunicacao = document.frmAvaliacao.comunicacao.value;
      varValor_Saude       = document.frmAvaliacao.saude.value;
      varValor_Vestuario   = document.frmAvaliacao.vestuario.value;
      varValor_Educacao    = document.frmAvaliacao.educacao.value;
      varValor_Higiene     = document.frmAvaliacao.higiene.value;
      varValor_Lazer       = document.frmAvaliacao.lazer.value;
      varValor_Jogo        = document.frmAvaliacao.jogo.value;
      varValor_Outros      = document.frmAvaliacao.valor_outros.value;
      varValor_Prestacao   = document.frmAvaliacao.prestacao.value;
      varValor_Popanca     = document.frmAvaliacao.poupanca.value;
      varValor_Total       = 0;
  
      varValor_Habitacao   = varValor_Habitacao.replace(".","");
      varValor_Alimentacao = varValor_Alimentacao.replace(".","");
      varValor_Transporte  = varValor_Transporte.replace(".","");
      varValor_Comunicacao = varValor_Comunicacao.replace(".","");
      varValor_Saude       = varValor_Saude.replace(".","");
      varValor_Vestuario   = varValor_Vestuario.replace(".","");
      varValor_Educacao    = varValor_Educacao.replace(".","");
      varValor_Higiene     = varValor_Higiene.replace(".","");
      varValor_Lazer       = varValor_Lazer.replace(".","");
      varValor_Jogo        = varValor_Jogo.replace(".","");
      varValor_Outros      = varValor_Outros.replace(".","");
      varValor_Prestacao   = varValor_Prestacao.replace(".","");
      varValor_Popanca     = varValor_Popanca.replace(".","");

      varValor_Habitacao   = varValor_Habitacao.replace(",",".");
      varValor_Alimentacao = varValor_Alimentacao.replace(",",".");
      varValor_Transporte  = varValor_Transporte.replace(",",".");
      varValor_Comunicacao = varValor_Comunicacao.replace(",",".");
      varValor_Saude       = varValor_Saude.replace(",",".");
      varValor_Vestuario   = varValor_Vestuario.replace(",",".");
      varValor_Educacao    = varValor_Educacao.replace(",",".");
      varValor_Higiene     = varValor_Higiene.replace(",",".");
      varValor_Lazer       = varValor_Lazer.replace(",",".");
      varValor_Jogo        = varValor_Jogo.replace(",",".");
      varValor_Outros      = varValor_Outros.replace(",",".");
      varValor_Prestacao   = varValor_Prestacao.replace(",",".");
      varValor_Popanca     = varValor_Popanca.replace(",",".");
 
      varValor_Total = (varValor_Habitacao*1) + (varValor_Alimentacao*1) + (varValor_Transporte*1) + (varValor_Comunicacao*1) + (varValor_Saude*1) + (varValor_Vestuario*1) + (varValor_Educacao*1) + (varValor_Higiene*1) + (varValor_Lazer*1) + (varValor_Jogo*1) + (varValor_Outros*1) + (varValor_Prestacao*1) + (varValor_Popanca*1);
    
      varValor_Total = varValor_Total.toFixed(2);
  
      varValor_Total = "\""+varValor_Total+"\"";
  
      varValor_Total = varValor_Total.replace(".",",");
      varValor_Total = varValor_Total.replace("\"","");
      varValor_Total = varValor_Total.replace("\"","");
      
      document.frmAvaliacao.resultado_valor_despesas.value=varValor_Total; 
  
      setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_valor_despesas,'2', 'ST')",0);
      
  }
  else if (tipo == "SR"){
      
      varValor_Salario        = document.frmAvaliacao.salario.value;
      varValor_Comissoes      = document.frmAvaliacao.comissoes.value;
      varValor_Outras_Rendas  = document.frmAvaliacao.outras_rendas.value;
      varValor_Rec_Monetarias = document.frmAvaliacao.receitas_monetarias.value;
      varValor_Total          = 0;
  
      varValor_Salario        = varValor_Salario.replace(".","");
      varValor_Comissoes      = varValor_Comissoes.replace(".","");
      varValor_Outras_Rendas  = varValor_Outras_Rendas.replace(".","");
      varValor_Rec_Monetarias = varValor_Rec_Monetarias.replace(".","");
      
      varValor_Salario        = varValor_Salario.replace(",",".");
      varValor_Comissoes      = varValor_Comissoes.replace(",",".");
      varValor_Outras_Rendas  = varValor_Outras_Rendas.replace(",",".");
      varValor_Rec_Monetarias = varValor_Rec_Monetarias.replace(",",".");
      
      varValor_Total = (varValor_Salario*1) + (varValor_Comissoes*1) + (varValor_Outras_Rendas*1) + (varValor_Rec_Monetarias*1);
    
      varValor_Total = varValor_Total.toFixed(2);
  
      varValor_Total = "\""+varValor_Total+"\"";
  
      varValor_Total = varValor_Total.replace(".",",");
      varValor_Total = varValor_Total.replace("\"","");
      varValor_Total = varValor_Total.replace("\"","");
      
      document.frmAvaliacao.resultado_renda.value=varValor_Total; 
  
      setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_renda,'2', 'ST')",0);
      
  
  }
  else if (tipo == "SP"){
      
      varValor_Imovel        = document.frmAvaliacao.imovel.value;
      varValor_Veiculo       = document.frmAvaliacao.veiculo.value;
      varValor_Investimento  = document.frmAvaliacao.investimento.value;
      varValor_Fgts          = document.frmAvaliacao.fgts.value;
      varValor_Total         = 0;
  
      varValor_Imovel        = varValor_Imovel.replace(".","");
      varValor_Veiculo       = varValor_Veiculo.replace(".","");
      varValor_Investimento  = varValor_Investimento.replace(".","");
      varValor_Fgts          = varValor_Fgts.replace(".","");
      
      varValor_Imovel        = varValor_Imovel.replace(",",".");
      varValor_Veiculo       = varValor_Veiculo.replace(",",".");
      varValor_Investimento  = varValor_Investimento.replace(",",".");
      varValor_Fgts          = varValor_Fgts.replace(",",".");
      
      varValor_Total = (varValor_Imovel*1) + (varValor_Veiculo*1) + (varValor_Investimento*1) + (varValor_Fgts*1);
    
      varValor_Total = varValor_Total.toFixed(2);
  
      varValor_Total = "\""+varValor_Total+"\"";
  
      varValor_Total = varValor_Total.replace(".",",");
      varValor_Total = varValor_Total.replace("\"","");
      varValor_Total = varValor_Total.replace("\"","");
      
      document.frmAvaliacao.resultado_patrimonio.value=varValor_Total; 
  
      setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_patrimonio,'2', 'ST')",0);
      
      varPatrimonio = varValor_Total;
      varReceitas   = document.frmAvaliacao.resultado_renda.value;
      varTotal_Patrimonio_Receita = 0;
	  
	  //alert(varReceitas);
	  
      if(varReceitas != "0,00" & varReceitas != ""){

          varReceitas        = varReceitas.replace(".","");
          varPatrimonio      = varPatrimonio.replace(".","");
          
          varReceitas        = varReceitas.replace(",",".");
          varPatrimonio      = varPatrimonio.replace(",",".");
          
          varTotal_Patrimonio_Receita = (varPatrimonio) / (varReceitas);
          
          varTotal_Patrimonio_Receita = varTotal_Patrimonio_Receita.toFixed(2);
  
          varTotal_Patrimonio_Receita = "\""+varTotal_Patrimonio_Receita+"\"";
    
          varTotal_Patrimonio_Receita = varTotal_Patrimonio_Receita.replace(".",",");
          varTotal_Patrimonio_Receita = varTotal_Patrimonio_Receita.replace("\"","");
          varTotal_Patrimonio_Receita = varTotal_Patrimonio_Receita.replace("\"","");
      
          document.frmAvaliacao.resultado_patrimonio_receita.value = varTotal_Patrimonio_Receita;
          
          setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_patrimonio_receita,'2', 'ST')",0);
      }
      
  }
  else if (tipo == "SDI"){
      
      varValor_Cheque         = document.frmAvaliacao.cheque.value;
      varValor_Cartao         = document.frmAvaliacao.cartao.value;
      varValor_Emprestimos    = document.frmAvaliacao.emprestimos.value;
      varValor_Financiamentos = document.frmAvaliacao.financiamento.value;
      varValor_Total          = 0;
  
      varValor_Cheque         = varValor_Cheque.replace(".","");
      varValor_Cartao         = varValor_Cartao.replace(".","");
      varValor_Emprestimos    = varValor_Emprestimos.replace(".","");
      varValor_Financiamentos = varValor_Financiamentos.replace(".","");
      
      varValor_Cheque         = varValor_Cheque.replace(",",".");
      varValor_Cartao         = varValor_Cartao.replace(",",".");
      varValor_Emprestimos    = varValor_Emprestimos.replace(",",".");
      varValor_Financiamentos = varValor_Financiamentos.replace(",",".");
      
      varValor_Total = (varValor_Cheque*1) + (varValor_Cartao*1) + (varValor_Emprestimos*1) + (varValor_Financiamentos*1);
    
      varValor_Total = varValor_Total.toFixed(2);
	  
	  if(varValor_Total > 0){
          document.getElementById('resultado_valor_dividas').className='desabilitado_tabelas_vermelho';
      }
      else {
          document.getElementById('resultado_valor_dividas').className='desabilitado_tabelas';
      }
  
      varValor_Total = "\""+varValor_Total+"\"";
  
      varValor_Total = varValor_Total.replace(".",",");
      varValor_Total = varValor_Total.replace("\"","");
      varValor_Total = varValor_Total.replace("\"","");
      
      document.frmAvaliacao.resultado_valor_dividas.value=varValor_Total; 
      
      setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_valor_dividas,'2', 'ST')",0);
      
  
  }
 
  
  
  if(tipo != 'ST'){
  	campooriginal.className='normal_tabelas';
  }
  
  var varCampooriginal = campooriginal.value;
  if (varCampooriginal == ""){
    return;
  }
  
  
  var posicaoPontoDecimal;
  var campo = '';
  var resultado = '';
  var pos,sep,dec;

//Retira possiveis separadores de milhar
  for (pos=0; pos < varCampooriginal.length; pos ++)
  {
    if (varCampooriginal.charAt(pos)!='.')
        campo = campo + varCampooriginal.charAt(pos);
  }     

//Formata valor monetário com decimais
  posicaoPontoDecimal = campo.indexOf(',');
  if (posicaoPontoDecimal != -1)
   {
      sep = 0;
      for (pos=posicaoPontoDecimal-1;pos >= 0;pos--)
      {
        sep ++;
        if (sep > 3)
        {
           resultado = '.' + resultado;
           sep = 1;
        }

        resultado = campo.charAt(pos) + resultado;   
      }

      // Trata parte decimal
      if (parseInt(decimais) > 0 )
      {
         resultado = resultado + ',';
      
         pos=posicaoPontoDecimal+1;
         for (dec = 1;dec <= parseInt(decimais); dec++)
         {
           if (pos < campo.length)
           {
              resultado = resultado + campo.charAt(pos);
              pos++;
           }
           else
              resultado = resultado + '0';   
         }

      } // trata decimais
   }
   // Trata valor monetário sem decimais
   else
   {
      sep = 0;
      for (pos=campo.length-1;pos >= 0;pos--)
      {
        sep ++;
        if (sep > 3)
        {
           resultado = '.' + resultado;
           sep = 1;
        }
        resultado = campo.charAt(pos) + resultado;   
      }
      // Trata parte decimal
      if (parseInt(decimais) > 0 )
      {
         resultado = resultado + ',';
         for (dec = 1;dec <= parseInt(decimais); dec++)
         {
              resultado = resultado + '0';   
         }
      } // trata decimais
   }

   //document.form.campo4.value = resultado;
   campooriginal.value = resultado;
   
  varTotal_Receitas_Fim = document.frmAvaliacao.resultado_renda.value;
  varTotal_Despesas_Fim = document.frmAvaliacao.resultado_valor_despesas.value;
  
  
  if(varTotal_Receitas_Fim != "" & varTotal_Despesas_Fim != ""){
  
      varTotal_Receitas_Fim        = varTotal_Receitas_Fim.replace(".","");
      varTotal_Despesas_Fim        = varTotal_Despesas_Fim.replace(".","");
          
      varTotal_Receitas_Fim        = varTotal_Receitas_Fim.replace(",",".");
      varTotal_Despesas_Fim        = varTotal_Despesas_Fim.replace(",",".");
      
      varTotal_Diferenca_Rec_Desp = (varTotal_Receitas_Fim*1) - (varTotal_Despesas_Fim*1);
      
      if(varTotal_Diferenca_Rec_Desp >= "0"){
          varControle_Valor = "S";
      }
      else {
          varControle_Valor = "N";
      }
 
      
      //alert(varTotal_Diferenca_Rec_Desp);       
      varTotal_Diferenca_Rec_Desp = varTotal_Diferenca_Rec_Desp.toFixed(2);
	  
	  if (varTotal_Receitas_Fim > 0) {
	  
	  	varPerc_Diferenca_Rec_Desp = ((varTotal_Diferenca_Rec_Desp) / (varTotal_Receitas_Fim) * 100);
		varPerc_Diferenca_Rec_Desp  = varPerc_Diferenca_Rec_Desp.toFixed(1);
	  	
	  }
	  else {
	  	
		varPerc_Diferenca_Rec_Desp = "";
	  }
      
      /*alert(varTotal_Diferenca_Rec_Desp);
      alert(varTotal_Receitas_Fim);*/
      
      
	  
	  if(varTotal_Diferenca_Rec_Desp == ""){
          document.getElementById('resultado_valor_patrimonio_result').className='desabilitado_tabelas';
          document.getElementById('resultado_porcentagem_result').className='desabilitado_tabelas';
      }
      else if (varTotal_Diferenca_Rec_Desp == 0) {
          document.getElementById('resultado_valor_patrimonio_result').className='desabilitado_fundo_verde_tabelas';
          document.getElementById('resultado_porcentagem_result').className='desabilitado_fundo_verde_tabelas';
      }
	  else if (varTotal_Diferenca_Rec_Desp >= 1) {
          document.getElementById('resultado_valor_patrimonio_result').className='desabilitado_fundo_amarelo_tabelas';
          document.getElementById('resultado_porcentagem_result').className='desabilitado_fundo_amarelo_tabelas';
      }
      else {
          document.getElementById('resultado_valor_patrimonio_result').className='desabilitado_fundo_vermelho_tabelas';
          document.getElementById('resultado_porcentagem_result').className='desabilitado_fundo_vermelho_tabelas';
      }
  
      varTotal_Diferenca_Rec_Desp = "\""+varTotal_Diferenca_Rec_Desp+"\"";
      
      varTotal_Diferenca_Rec_Desp = varTotal_Diferenca_Rec_Desp.replace(".",",");
      varTotal_Diferenca_Rec_Desp = varTotal_Diferenca_Rec_Desp.replace("\"","");
      varTotal_Diferenca_Rec_Desp = varTotal_Diferenca_Rec_Desp.replace("\"","");
      
      varPerc_Diferenca_Rec_Desp = "\""+varPerc_Diferenca_Rec_Desp+"\"";
      
      varPerc_Diferenca_Rec_Desp = varPerc_Diferenca_Rec_Desp.replace(".",",");
      varPerc_Diferenca_Rec_Desp = varPerc_Diferenca_Rec_Desp.replace("\"","");
      varPerc_Diferenca_Rec_Desp = varPerc_Diferenca_Rec_Desp.replace("\"","");
      
      document.frmAvaliacao.resultado_valor_patrimonio_result.value = varTotal_Diferenca_Rec_Desp;
      document.frmAvaliacao.resultado_porcentagem_result.value      = varPerc_Diferenca_Rec_Desp;
      
      if(varControle_Valor == "S"){
          //setTimeout("formataValorMonetario(document.frmAvaliacao.resultado_valor_patrimonio_result,'2')",1);
      }
  
  }
  
   
}


//inicia movimentação de objetos

function fechar(nome){
    var varNome_popup;
    varNome_popup = nome;
    document.getElementById(varNome_popup).style.display = 'none';
	if(varNome_popup == "popup_resposta"){
		document.getElementById("conteudo_popup_resposta").innerHTML = "";
		document.getElementById("titulo_popup_resposta").innerHTML = "";
	}
	if(varNome_popup == "popup_resposta_dividas"){
		document.getElementById("conteudo_popup_resposta_dividas").innerHTML = "";
		document.getElementById("titulo_popup_resposta_dividas").innerHTML = "";
	}

}
function abrir(nome){
    var varNome_popup;
    varNome_popup = nome;
    document.getElementById(varNome_popup).style.display = 'block';

}

//Controle de Navegacao pelo TAB (pagina avaliacao financeira)

function controle_tab(campo, prox_campo){
       campo.className='normal';
       document.getElementById(prox_campo).focus();
}


function controle_dependentes_tab(campo, prox_campo){
       varQtd_Dependentes = document.getElementById('combo_dependentes').value;
        		 
       if(varQtd_Dependentes > 0){
       	 			campo.className='normal';
       	 			document.getElementById('conjuge').focus();	
       }
       else{
       	 			campo.className='normal';
       	 			document.getElementById(prox_campo).focus();	
       }
}

function controle_dependentes_outros_tab(campo, prox_campo){
       document.getElementById(prox_campo).focus();
}