﻿function EnviarFormContato()
{
    var sucesso = true;
    
    // Define os estilos padrões
    document.getElementById('txtEmpresa').className = 'txtfield';
    //document.getElementById('errotxtEmpresa').style.display = 'none';
    
    document.getElementById('txtNome').className = 'txtfield';
    document.getElementById('errotxtNome').style.display = 'none';
    
    document.getElementById('txtEmail').className = 'txtfield';
    //document.getElementById('errotxtEmail').style.display = 'none';
    
    document.getElementById('strNumeroCartao').className = 'txtfield';
    document.getElementById('errostrNumeroCartao').style.display = 'none';

    document.getElementById('txtCPF').className = 'txtfield';
    document.getElementById('errotxtCPF').style.display = 'none';

    document.getElementById('DataNascimento').className = 'txtfield';
    document.getElementById('erroDataNascimento').style.display = 'none';
    
    document.getElementById('txtRG').className = 'txtfield';
    //document.getElementById('errotxtRG').className = 'none';

    document.getElementById('info_cep').className = 'txtfield';
    //document.getElementById('erroinfo_cep').style.display = 'none';

    //document.getElementById('estado').className = 'txtfield';
    //document.getElementById('erroestado').style.display = 'none';   
    
    //document.getElementById('cidade').className = 'txtfield';
    //document.getElementById('errocidade').style.display = 'none'; 
    
    document.getElementById('txtEndereco').className = 'txtfield';
    //document.getElementById('errotxtEndereco').style.display = 'none';
    
    document.getElementById('txtNumero').className = 'txtfield';
    //document.getElementById('errotxtComplemento').style.display = 'none';
    
    document.getElementById('txtBairro').className = 'txtfield';
    //document.getElementById('errotxtBairro').style.display = 'none';
    
    document.getElementById('txtTelefone').className = 'txtfield';
    //document.getElementById('errotxtTelefone').style.display = 'none';
    
    document.getElementById('txtCelular').className = 'txtfield';
    //document.getElementById('errotxtCelular').style.display = 'none';
    
    document.getElementById('txtSenha').className = 'txtfield';
    document.getElementById('errotxtSenha').style.display = 'none';
    
    document.getElementById('txtConfNovaSenha').className = 'txtfield';
    document.getElementById('errotxtConfNovaSenha').style.display = 'none';
    
//    if(EmptyField(document.getElementById('txtEmpresa')))
//    {
//        sucesso = false;
//        document.getElementById('txtEmpresa').className = 'error';
//        document.getElementById('errotxtEmpresa').style.display = '';
//        document.getElementById('errotxtEmpresa').innerHTML = 'Por favor, informe o nome da empresa onde trabalha.';  
//    } 
    
    if(EmptyField(document.getElementById('txtNome')))
    {
        sucesso = false;
        document.getElementById('txtNome').className = 'error';
        document.getElementById('errotxtNome').style.display = '';
        document.getElementById('errotxtNome').innerHTML = 'Por favor, informe seu nome completo.';  
    } 
    
//    if(EmptyField(document.getElementById('txtEmail')))
//    {
//        sucesso = false;
//        document.getElementById('txtEmail').className = 'error';
//        document.getElementById('errotxtEmail').style.display = '';
//        document.getElementById('errotxtEmail').innerHTML = 'Por favor, informe o e-mail para contato.';  
//    }
//    else
//    {
//        if(!valida_email(document.getElementById('txtEmail')))
//        {
//            sucesso = false;
//            document.getElementById('txtEmail').className = 'error';
//            document.getElementById('errotxtEmail').style.display = '';
//            document.getElementById('errotxtEmail').innerHTML = 'E-mail inválido.';  
//        }
//    }
    
    if(EmptyField(document.getElementById('strNumeroCartao')))
    {
        sucesso = false;
        document.getElementById('strNumeroCartao').className = 'error';
        document.getElementById('errostrNumeroCartao').style.display = '';
        document.getElementById('errostrNumeroCartao').innerHTML = 'Por favor, informe o número do cartão.';  
    } 
    
    if(EmptyField(document.getElementById('txtCPF')))
    {
        sucesso = false;
        document.getElementById('txtCPF').className = 'error';
        document.getElementById('errotxtCPF').style.display = '';
        document.getElementById('errotxtCPF').innerHTML = 'Por favor, informe o CPF.';  
    }
    else
    {
          if(!valida_CPF(document.getElementById('txtCPF')))
          {
            sucesso = false;
            document.getElementById('txtCPF').className = 'error';
            document.getElementById('errotxtCPF').style.display = '';
            document.getElementById('errotxtCPF').innerHTML = 'CPF em formato inválido.';  
          }
    }

    if (EmptyField(document.getElementById('DataNascimento'))) {
        sucesso = false;
        document.getElementById('DataNascimento').className = 'error';
        document.getElementById('erroDataNascimento').style.display = '';
        document.getElementById('erroDataNascimento').innerHTML = 'Por favor, informe a sua data de nascimento.';
    }
    else {
        if (!valida_data(document.getElementById('DataNascimento'))) {
            sucesso = false;
            document.getElementById('DataNascimento').className = 'error';
            document.getElementById('erroDataNascimento').style.display = '';
            document.getElementById('erroDataNascimento').innerHTML = 'Data inválida.';
        }
    }
    
//    if(EmptyField(document.getElementById('txtRG')))
//    {
//        sucesso = false;
//        document.getElementById('txtRG').className = 'error';
//        document.getElementById('errotxtRG').style.display = '';
//        document.getElementById('errotxtRG').innerHTML = 'Por favor, informe o RG.';  
//    }
    
//    if(!EmptyField(document.getElementById('info_cep')))
//    {
//        if(!valida_CEP(document.getElementById('info_cep')))
//        {
//            sucesso = false;
//            document.getElementById('info_cep').className = 'error';
//            document.getElementById('erroinfo_cep').style.display = '';
//            document.getElementById('erroinfo_cep').innerHTML = 'CEP em formato inválido.';      
//        }   
//    }
//    else
//    {
//        sucesso = false;
//        document.getElementById('info_cep').className = 'error';
//        document.getElementById('erroinfo_cep').style.display = '';
//        document.getElementById('erroinfo_cep').innerHTML = 'Por favor, informe o CEP.';  
//    }
    
//    if(document.getElementById('estado').value == '0')
//    {
//        sucesso = false;
//        document.getElementById('estado').className = 'error';
//        document.getElementById('erroestado').style.display = '';
//        document.getElementById('erroestado').innerHTML = 'Por favor, informe o estado em que reside.';  
//    }
    
//    if(document.getElementById('cidade').value == '0')
//    {
//        sucesso = false;
//        document.getElementById('cidade').className = 'error';
//        document.getElementById('errocidade').style.display = '';
//        document.getElementById('errocidade').innerHTML = 'Por favor, informe a cidade em que reside.';  
//    }
//    if(EmptyField(document.getElementById('txtEndereco')))
//    {
//        sucesso = false;
//        document.getElementById('txtEndereco').className = 'error';
//        document.getElementById('errotxtEndereco').style.display = '';
//        document.getElementById('errotxtEndereco').innerHTML = 'Por favor, informe o endereço da residência.';  
//    }
//    
//    if(EmptyField(document.getElementById('txtBairro')))
//    {
//        sucesso = false;
//        document.getElementById('txtBairro').className = 'error';
//        document.getElementById('errotxtBairro').style.display = '';
//        document.getElementById('errotxtBairro').innerHTML = 'Por favor, informe o bairro da residência.';  
//    }
//    
//    if(EmptyField(document.getElementById('txtBairro')))
//    {
//        sucesso = false;
//        document.getElementById('txtBairro').className = 'error';
//        document.getElementById('errotxtBairro').style.display = '';
//        document.getElementById('errotxtBairro').innerHTML = 'Por favor, informe o bairro da residência.';  
//    }
//    
//    if(!EmptyField(document.getElementById('txtTelefone')))
//    {
//        if(!valida_telefone(document.getElementById('txtTelefone')))
//        {
//            sucesso = false;
//            document.getElementById('txtTelefone').className = 'error';
//            document.getElementById('errotxtTelefone').style.display = '';
//            document.getElementById('errotxtTelefone').innerHTML = 'Telefone em formato inválido.';  
//        }
//    }
//    else
//    {
//            sucesso = false;
//            document.getElementById('txtTelefone').className = 'error';
//            document.getElementById('errotxtTelefone').style.display = '';
//            document.getElementById('errotxtTelefone').innerHTML = 'Por favor, informe o telefone para contato.'; 
//    }
    
//    if(!EmptyField(document.getElementById('txtCelular')))
//    {
//        if(!valida_telefone(document.getElementById('txtCelular')))
//        {
//            sucesso = false;
//            document.getElementById('txtCelular').className = 'error';
//            document.getElementById('errotxtCelular').style.display = '';
//            document.getElementById('errotxtCelular').innerHTML = 'Telefone em formato inválido.';  
//        }
//    }
//    else
//    {
////            sucesso = false;
////            document.getElementById('txtCelular').className = 'error';
////            document.getElementById('errotxtCelular').style.display = '';
////            document.getElementById('errotxtCelular').innerHTML = 'Por favor, informe o telefone celular.'; 
//    }
    
    if(EmptyField(document.getElementById('txtSenha')))
     {
        sucesso = false;
        document.getElementById('txtSenha').className = 'error';
        document.getElementById('errotxtSenha').style.display = '';
        document.getElementById('errotxtSenha').innerHTML = 'Favor informar a senha.';  
     }
     if(EmptyField(document.getElementById('txtConfNovaSenha')))
     {
        sucesso = false;
        document.getElementById('txtConfNovaSenha').className = 'error';
        document.getElementById('errotxtConfNovaSenha').style.display = '';
        document.getElementById('errotxtConfNovaSenha').innerHTML = 'Favor confirmar a senha.';  
     }
     else
     {
        if(!EmptyField(document.getElementById('txtSenha')) && !EmptyField(document.getElementById('txtConfNovaSenha')) && document.getElementById('txtSenha').value != document.getElementById('txtConfNovaSenha').value)
        {
            sucesso = false;
            document.getElementById('txtConfNovaSenha').className = 'error';
            document.getElementById('errotxtConfNovaSenha').style.display = '';
            document.getElementById('errotxtConfNovaSenha').innerHTML = 'A confirmação de senha não esta igual a senha digitada.Tente novamente.';  
        }
     }
     
    if (!sucesso) {
        alert('Alguns campos não foram preenchidos da forma devida. Por favor, verifique os campos marcados em vermelho.'); 
        return false;
    }

    setCookie('txtNome', document.getElementById('txtNome').value, 1);
    setCookie('strNumeroCartao', document.getElementById('strNumeroCartao').value, 1);
    setCookie('txtCPF', document.getElementById('txtCPF').value, 1);
    setCookie('DataNascimento', document.getElementById('DataNascimento').value, 1);
    


    
    //Informa campos hidden
//    document.getElementById('txtCep').value =document.getElementById('info_cep').value.replace('.','').replace('-','');
//    document.getElementById('txtEstado').value = document.getElementById('estado').options[document.getElementById('estado').selectedIndex].text;
//    document.getElementById('txtCidade').value = document.getElementById('cidade').options[document.getElementById('cidade').selectedIndex].text;
    
//    if(!EmptyField(document.getElementById('txtTelefone')))
//    {
//        var novoArray = document.getElementById('txtTelefone').value.split(')');

//        document.getElementById('txtTelefoneDDD').value = novoArray[0].replace('(','').replace(' ','');
//	    document.getElementById('txtTelefonePrefixo').value = novoArray[1].split('-')[0].replace(' ','');
//	    document.getElementById('txtTelefoneSufixo').value  = novoArray[1].split('-')[1].replace(' ','');
//	}
//	
//	if(!EmptyField(document.getElementById('txtCelular')))
//    {
//        var novoArray = document.getElementById('txtCelular').value.split(')');

//        document.getElementById('txtCelularDDD').value = novoArray[0].replace('(','').replace(' ','');
//	    document.getElementById('txtCelularPrefixo').value = novoArray[1].split('-')[0].replace(' ','');
//	    document.getElementById('txtCelularSufixo').value  = novoArray[1].split('-')[1].replace(' ','');
//	}
	
	document.Formulario.action = 'https://wss.policard.com.br/Sitepolicard/IncluirUsuario.asp';
	document.Formulario.submit();
    
    //Caso tenha chegado até aqui, envia-se o formulário de contato.
    //Informa-mos que apartir desta Data, este Estabelecimento não receberá a Consolidação Impressa!
////    if(confirm('Informa-mos que apartir desta Data, este Estabelecimento não receberá a Consolidação Impressa.')){
////        document.Formulario.action='https://wss.policard.com.br/Sitepolicard/Cadastro_Site_Estabelecimento_Action.asp';
////        document.Formulario.submit();
////    }
////    else
////    {
////        return false;
////    }
    
    
    
}

//Função assincrona do populaCidade.
function retorno_populaCidade(ret){
    var dt = ret.value;
    var cidade = document.getElementById('cidade');
    cidade.options.length = 0;
	cidade.options[cidade.options.length] = new Option("Selecione uma cidade","0");            
    for(var i = 0; i < dt.length; i++)
    {                
        cidade.options[cidade.options.length] = new Option(dt[i].Nome, dt[i].Codigo_Cidade);
    }
    document.getElementById('img_cidade').style.display = "none";
}

//Metodo responsável por popular as cidades de acordo com o estado selecionado.
function populaCidade(value)
{
    document.getElementById('img_cidade').style.display = "";
    cadastro_cartao.PopulaCidade(value,retorno_populaCidade);   
}

//Função para ao se dá um Enter cair sobre o evento de submit da pagina de contato
//param:evt = Evento do keyPress
//param:botao = Id do botão que dá o submit na página
function EnterContato(evt,botao)
{
    //Verificando se o que é digitado é somente campos numéricos
    var charCode = (evt.which) ? evt.which : evt.keyCode;
  
    if(charCode==13)
    {
         document.getElementById(botao).onclick();		
         return false;
    }
    return true;
}

function verificaPais(value)
{
    if(value == 0)
    {
        document.getElementById('div_outro_pais').style.display = 'none';
        document.getElementById('div_brasil').style.display = 'none';
    }
    else if(value == '32')//Brazil
    {
        document.getElementById('div_outro_pais').style.display = 'none';
        document.getElementById('div_brasil').style.display = '';
    }
    else
    {
        //Habilitando a pessoa a inserir manualmente o seu estado e cidade.
        document.getElementById('div_outro_pais').style.display = '';
        document.getElementById('div_brasil').style.display = 'none';
    }
}

var resultadoCEP = null;

function makeRequestCEP(url,callback_function) {
	var http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	
	if (!http_request) {
		alert('Unfortunatelly you browser doesn\'t support this feature.');
		return false;
	}
	http_request.onreadystatechange = function() {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				eval('retornoXMLCep(http_request.responseXML, callback_function)');
			} else {
				alert('There was a problem with the request.(Code: ' + http_request.status + ')');
			}
		}
	}
	var Data = new Date();
	http_request.open('GET', url, true);
	http_request.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" );
	http_request.send(null);
}


function retornoXMLCep(xml, retorno){
	var result = new Object();
	var endereco="", bairro="", cidade="", estado="", cep = "";
	if (document.all){
		var nodes = xml.documentElement.childNodes;
		    endereco = result.endereco = nodes.item(0).text;
		    bairro   = result.bairro = nodes.item(1).text;
		    cidade   = result.cidade = nodes.item(2).text;
		    estado   = result.estado = nodes.item(3).text;
		    cep      = result.cep = nodes.item(4).text;
	}else{
		endereco = result.endereco = xml.getElementsByTagName("endereco")[0].childNodes[0].nodeValue;
		if(endereco != "")
		{
		    bairro   = result.bairro = xml.getElementsByTagName("bairro")[0].childNodes[0].nodeValue;
		    cidade   = result.cidade = xml.getElementsByTagName("cidade")[0].childNodes[0].nodeValue;
		    estado   = result.estado = xml.getElementsByTagName("estado")[0].childNodes[0].nodeValue;
		    cep      = result.cep = xml.getElementsByTagName("cep")[0].childNodes[0].nodeValue;
		}
	}
	
	if (estado== "" || cidade == "")
	{
	    DisabledElementos(false);
	    sucesso = false;
        document.getElementById('info_cep').className = 'error';
        document.getElementById('erroinfo_cep').style.display = '';
        document.getElementById('erroinfo_cep').innerHTML = 'Este CEP não foi encontrado no sistema dos Correios. Confira novamente os dados digitados. Caso esteja correto insira manualmente as informações sobre o seu endereço.';  
	}
	else
	{
	    //Limpando o campo caso seja necessário.
	    document.getElementById('info_cep').className = 'txtfield';
        document.getElementById('erroinfo_cep').style.display = 'none';
	
	    resultadoCEP = result;
	    eval(retorno +'(resultadoCEP)');
	 }
}

function buscaCEPCorreios(controle){
    if(valida_CEP(document.getElementById('info_cep')))
    {
        DisabledElementos(true);
    
        if (resultadoCEP==null || resultadoCEP.cep!=document.getElementById('info_cep').value){
		    makeRequestCEP('_CEP.aspx?cep='+controle.value.replace('.','').replace('-',''),'getCEPUsuario');
	    }else{
		    getCEPUsuario(resultadoCEP);
	    }
	}
}

function DisabledElementos(controle)
{
    document.getElementById('info_cep').disabled = controle;
    document.getElementById('txtEndereco').disabled = controle;
    document.getElementById('estado').disabled = controle;
    document.getElementById('cidade').disabled = controle;
    document.getElementById('txtBairro').disabled = controle;
    if(!controle)
        document.getElementById('img_cep').style.display = 'none';
    else
        document.getElementById('img_cep').style.display = '';
    
}


function getCEPUsuario(resultadoCEP)
{
    DisabledElementos(false);
    
    document.getElementById('txtBairro').value = CharSet(resultadoCEP.bairro);
    
    var end_sem_tp_log = CharSet(resultadoCEP.endereco).split(' ');
    var end_certo = "";
    for(var i = 1; i < end_sem_tp_log.length; i++)
    {
        end_certo = end_certo + " " + end_sem_tp_log[i];
    }
    
    
    document.getElementById('txtEndereco').value = end_certo;
    
    var estadoAtual = cadastro_cartao.DevolveCodigoEstado(CharSet(resultadoCEP.estado)).value
    if(estadoAtual!= 0)
    {
    
        //Percorrendo os estado para se selecionar o estado correto.
        for(var i = 0; i < document.getElementById('estado').length; i++)
        {
            var x=document.getElementById("estado")
            if(x.options[i].value == estadoAtual)
            {
                document.getElementById('estado').selectedIndex = i;
                break;
            }
        }

        //Carregando as cidades...
        document.getElementById('img_cidade').style.display = "";
        var dt = cadastro_cartao.PopulaCidade(estadoAtual).value;   
        var cidade = document.getElementById('cidade');
        cidade.options.length = 0;
        cidade.options[cidade.options.length] = new Option("Selecione uma cidade","0");            
        for(var i = 0; i < dt.length; i++)
        {                
           cidade.options[cidade.options.length] = new Option(dt[i].Nome, dt[i].Codigo_Cidade);
        }
        document.getElementById('img_cidade').style.display = "none";
        //Fim carregando as cidades...


        //Percorrendo as cidades para se selecionar a cidade correta.
        for(var i = 0; i < document.getElementById('cidade').length; i++)
        {
            var x=document.getElementById("cidade")
            if(x.options[i].text == CharSet(resultadoCEP.cidade))
            {
                document.getElementById('cidade').selectedIndex = i;
                break;
            }
        }
    }
}


function PessoaFisicaJuridica(controle)
{
    if(controle.id == 'fisica')
    {
        document.getElementById('li_juridica').style.display="none";
        document.getElementById('li_fisica').style.display="";

    }
    else
    {
        document.getElementById('li_fisica').style.display="none";
        document.getElementById('li_juridica').style.display="";

    }
}



function setCookie(c_name, value, exdays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = c_name + "=" + c_value;
}

function getCookie(c_name) {
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++) {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == c_name) {
            return unescape(y);
        }
    }
}



