// JScript source code
function VerificaConsistencia() {
    /**********************************************/
    /** VALIDA NOME DO ASSOCIADO                 **/
    /**********************************************/
    if (document.FilieAASP.TxtNomeAssociado.value == '') {
        alert('Informe o Nome de Associado.')
        document.FilieAASP.TxtNomeAssociado.focus();
        return false;
    }

    /**********************************************/
    /** VALIDA DOCUMENTOS - CPF                  **/
    /**********************************************/
    if (document.FilieAASP.TxtCPF.value == '') {
        alert('Informe o CPF.')
        document.FilieAASP.TxtCPF.focus();
        return false;
    }

    if ((document.FilieAASP.TxtCPF.value).length < 11) {
        alert('CPF informado é inválido.')
        document.FilieAASP.TxtCPF.focus();
        return false;
    }

    if (fc_VerificaRepeticao(document.FilieAASP.TxtCPF.value)) {
        alert('CPF informado é inválido.')
        document.FilieAASP.TxtCPF.focus();
        return false;
    }

    /**********************************************/
    /** VALIDA CONTATO TELEFONICO CORRESPODENCIA **/
    /**********************************************/
    if (document.FilieAASP.TxtDDDTelefone1.value == '') {
        alert('Informe o DDD do telefone para contato.')
        fc_desabilitaCamposDne();
        document.FilieAASP.TxtDDDTelefone1.focus();
        return false;
    }

    if (document.FilieAASP.TxtTelefone.value == '') {
        alert('Informe o Telefone para contato.')
        fc_desabilitaCamposDne();
        document.FilieAASP.TxtTelefone.focus();
        return false;
    }

    if ((document.FilieAASP.TxtTelefone.value).length < 7) {
        alert('Telefone para contato inválido.')
        fc_desabilitaCamposDne();
        document.FilieAASP.TxtTelefone.focus();
        return false;
    }

    if (fc_VerificaRepeticao(document.FilieAASP.TxtTelefone.value)) {
        alert('Telefone para contato é inválido.')
        document.FilieAASP.TxtTelefone.focus();
        return false;
    }

    /**********************************************/
    /** VALIDA EMAIL DE CONTATO                  **/
    /**********************************************/
    if (document.FilieAASP.TxtEmail.value == '') {
        alert('Informe o E-mail para contato')
        fc_desabilitaCamposDne();
        document.FilieAASP.TxtEmail.focus();
        return false;
    }

    if (ValidaEmail(document.FilieAASP.TxtEmail.value) == false) {
        alert('E-mail inválido')
        fc_desabilitaCamposDne();
        document.FilieAASP.TxtEmail.focus();
        return false;
    }

    /**********************************************/
    /** VALIDA NUMERO DE CORRESPODENCIA          **/
    /**********************************************/
    if (isNaN(document.FilieAASP.TxtNumero.value)) {
        alert('Número inválido.');
        document.FilieAASP.TxtNumero.focus();
        return false;
    }

    /**********************************************/
    /** DESABILTA BAIRRO&CIDADE DE CORRESPODENCIA**/
    /**********************************************/
    if (window.event) {
        //document.FilieAASP.TxtBairro.disabled = false;
        //document.FilieAASP.TxtCidade.disabled = false;
    }
    else {
        //$('TxtBairro').disabled = false;
        //$('TxtCidade').disabled = false;
    }

    return true;
}

function enviarSolicitacao() {
    if (VerificaConsistencia()) {
        document.FilieAASP.submit();
    }
}

/************************************************************************/
/* 
FUNÇÕES AJAX PARA PREENCHIMENTO DOS CAMPOS 
ENDEREÇO, BAIRRO, CIDADE E ESTADO
*/
function fc_getEnderecoByCep(editCep) {

    if (editCep.value.length < 8) {
        $('tdBairro').innerHTML = '';
        $('tdCidade').innerHTML = '';
        $('tdEstado').innerHTML = '';
        $('tdEndCom').innerHTML = '';

        return;
    }

    $('tdEndCom').innerHTML = 'Buscando dados ...';
    var pars = 'ordem=1&cep=' + editCep.value;
    var url = appUrl + "cursos/newsletter/cadastro_dne_ajax.asp";
    var myAjax = new Ajax.Request(
	        url,
    {
        method: 'get',
        parameters: pars,
        onComplete: fc_resultEndereco
    });
}

function fc_resultEndereco(req) {
    var retorno = req.responseText;

    campos = retorno.split('\n');
    if (campos.length == 4) {
        $('tdBairro').innerHTML = campos[0];
        $('tdCidade').innerHTML = campos[1];
        $('tdEstado').innerHTML = campos[2];
        $('tdEndCom').innerHTML = campos[3];
    } else {
        $('tdBairro').innerHTML = '';
        $('tdCidade').innerHTML = '';
        $('tdEstado').innerHTML = '';
        $('tdEndCom').innerHTML = retorno;
    }
    //alert(retorno);
}

function fc_verificaOutro(selEnd, cep) {
    var pars = 'ordem=2' +
               '&endereco=' + escape(selEnd.value) +
               '&cep=' + cep;
    var url = appUrl + "cursos/newsletter/cadastro_dne_ajax.asp";
    $('tdEndCom').innerHTML = 'Buscando dados ...';

    var myAjax = new Ajax.Request(
	        url,
    {
        method: 'get',
        parameters: pars,
        onComplete: fc_verificaOutroResponse
    });
}

function fc_verificaOutroResponse(req) {
    fc_resultEndereco(req);
}
/************************************************************************/

function fc_desabilitaCamposDne() {
    if (window.event) {
        //document.FilieAASP.TxtBairro.disabled = true;
        //document.FilieAASP.TxtCidade.disabled = true;
        document.FilieAASP.LstEstado.disabled = true;
    }
    else {
        //$('TxtBairro').disabled = true;
        //$('TxtCidade').disabled = true;
        $('LstEstado').disabled = true;
    }
}

function fc_VerificaTxtNumero(evt) {
    var charCode = (evt.which) ? evt.which : event.keyCode
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        alert('Digite somente números. Utilize o Complemento do Endereço para demais caracteres.');
        return false;
    }

    return true;
}

function checkMail(mail) {
    var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);

    if (typeof (mail) == "string") {
        if (er.test(mail))
            return true;
        else {
            alert('E-mail inválido!')
            document.getElementById('email').value = "";
        }
    }
    else if (typeof (mail) == "object") {
        if (er.test(mail.value))
            return true;
        else {
            alert('E-mail inválido!')
            document.getElementById('email').value = "";
        }
    }
    else {
        alert('E-mail inválido!')
        document.getElementById('email').value = "";
    }
}

function fc_validacpf() {
    if (!Verify(document.FilieAASP.TxtCPF.value, 'CPF')) {
        alert('CPF inválido.');
        document.FilieAASP.TxtCPF.value = '';
        return false;
    }
}

function LimpaCampos() {
    document.getElementById('nome').value = "";
    document.getElementById('cpf').value = "";
    document.getElementById('NumOAB').value = "";
    document.getElementById('ddd').value = "";
    document.getElementById('fone').value = "";
    document.getElementById('email').value = "";
    document.getElementById('txtCep').value = "";
    document.getElementById('numero').value = "";
    document.getElementById('complemento').value = "";
    document.getElementById('TxtCidade').value = "";
    document.getElementById('LstEstado').value = "";
    document.getElementById('TxtBairro').value = "";
    document.getElementById('TxtEndCorrespondencia').value = "";
}

function fc_RetiraCaracteresEspeciais() {
    var vsObj = document.FilieAASP.TxtNomePai;
    vsObj.value = vsObj.value.replace(/\W/g, ' ');
    return vsObj.value
}

function RetiraAcentos(Campo) {

    var Acentos = "ãâáàãââÃÂÁÀÃÂêéèêÉÈÊíìîÍÌÎôóòõôÓÒÔÕûúùüûÚÙÜÛýÝçÇabcdefghijklmnopqrstuvxwyz;.,/\|:!#$%¨&*()ºªªº¨<>?[]{}^~@´`+-¹²³°_%§¬¢£=";
    var Traducao = "AAAAAAAAAAAAAEEEEEEEIIIIIIOOOOOOOOOUUUUUUUUUYYCCABCDEFGHIJKLMNOPQRSTUVXWYZ";
    var Posic, Carac;
    var TempLog = "";
    for (var i = 0; i < Campo.length; i++) {
        Carac = Campo.charAt(i);
        Posic = Acentos.indexOf(Carac);
        if (Posic > -1)
            TempLog += Traducao.charAt(Posic);
        else
            TempLog += Campo.charAt(i);
    }

    return (TempLog);
}

function RetiraAcentosNumeros(Campo) {

    var Acentos = "ãâáàãââÃÂÁÀÃÂêéèêÉÈÊíìîÍÌÎôóòõôÓÒÔÕûúùüûÚÙÜÛýÝçÇabcdefghijklmnopqrstuvxwyz;.,/\|:!#$%¨&*()ºªªº¨<>?[]{}^~@´`+-¹²³°_%§¬¢£=0123456789";
    var Traducao = "AAAAAAAAAAAAAEEEEEEEIIIIIIOOOOOOOOOUUUUUUUUUYYCCABCDEFGHIJKLMNOPQRSTUVXWYZ";
    var Posic, Carac;
    var TempLog = "";
    for (var i = 0; i < Campo.length; i++) {
        Carac = Campo.charAt(i);
        Posic = Acentos.indexOf(Carac);
        if (Posic > -1)
            TempLog += Traducao.charAt(Posic);
        else
            TempLog += Campo.charAt(i);
    }

    return (TempLog);
}

function fc_OnlyNumbers(Campo) {

    var Acentos = "0123456789";
    var Traducao = "0123456789";
    var Posic, Carac;
    var TempLog = "";
    for (var i = 0; i < Campo.length; i++) {
        Carac = Campo.charAt(i);
        Posic = Acentos.indexOf(Carac);
        if (Posic > -1)
            TempLog += Traducao.charAt(Posic);
    }

    return (TempLog);
}

/*Funcão - Limita tamanho de campo, qndo CEP for de Localidade*/
/*function fc_limita_EndLocalidade(Endereco) {

var Carac = "";
var EnderecoNovo = "";

for (var i = 0; i <= Endereco.length; i++) {

Carac = Endereco.charAt(i);
if (i > 21) {
alert('Endereço por Localidade está limitado até 22 posições !');
i = 90;
}
else {
EnderecoNovo += Carac;
}
}

return (EnderecoNovo);
}*/

/*Funcão - Limita tamanho de campo, qndo CEP for de Localidade*/
function fc_limita_ComplLocalidade(Complemento) {

    if ($('TxtEndCorrespondencia').size != 71) return Complemento;

    var ComplementoNovo = "";
    for (var i = 0; i < 10; i++) {
        ComplementoNovo += Complemento.charAt(i);
    }

    return (ComplementoNovo);
}

// Somente é possivel digita Letras/Espacos/backspace/seta(esq,dir).
function fc_OnlyLetters(e) {
    var key;
    var keychar;
    var reg;

    if (window.event) {
        // for IE, e.keyCode or window.event.keyCode can be used
        key = e.keyCode;
    } else if (e.which) {
        // netscape
        key = e.which;
    } else {
        // no event, so pass through
        return true;
    }
    keychar = String.fromCharCode(key);
    reg = /[^\A-Z\a-z\ \b]/;

    return !reg.test(keychar);
}

function fc_OnlyNumbersLetters(e) {
    var key;
    var keychar;
    var reg;

    if (window.event) {
        // for IE, e.keyCode or window.event.keyCode can be used
        key = e.keyCode;
    } else if (e.which) {
        // netscape
        key = e.which;
    } else {
        // no event, so pass through
        return true;
    }
    keychar = String.fromCharCode(key);
    reg = /[^\A-Z\a-z\ \w\b]/;

    return !reg.test(keychar);
}
