//função para formatar as máscaras dos campos
//usar em onkeyup > ex: onkeyup="Mascaras(this,2,event);"
function Mascaras(campo, tipo, evento) {
    var tecla;
    if (evento.keyCode)
        tecla = evento.keyCode;  //IE
    else
        tecla = evento.which; //Outros browsers

    if ((tecla != 8) && (tecla != 9) && (tecla != 37) && (tecla != 39) && (tecla != 46))
    //Aceita respectivamente backspace, tab, seta p/ direita, seta p/ esquerda e delete
    {
        var aplicamask = campo.value;
        var tam_campo;
        switch (tipo) {
            case 1:  //Aplica máscara de DATA
                tam_campo = 10
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\d{2})/, "$1/");
                aplicamask = aplicamask.replace(/(\/{1}\d{2})/, "$1/");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
            case 2:  //Aplica máscara de CPF
                tam_campo = 14
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\d{3})/, "$1.");
                aplicamask = aplicamask.replace(/([.]\d{3})/, "$1.");
                aplicamask = aplicamask.replace(/(\d{3}[.]\d{3}[.]\d{3})/, "$1-");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
            case 3:  // Aplica máscara de CNPJ
                tam_campo = 18
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\d{2})/, "$1.");
                aplicamask = aplicamask.replace(/([.]\d{3})/g, "$1.");
                aplicamask = aplicamask.replace(/(\d{3}[.]\d{3})/, "$1/");
                aplicamask = aplicamask.replace(/(\/\d{4})/, "$1-");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
            case 4:  // Aplica máscara de TELEFONE
                tam_campo = 13
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\w{1})/, "($1");
                aplicamask = aplicamask.replace(/[(][0]/, "(");
                aplicamask = aplicamask.replace(/([(]\d{2})/, "$1)");
                aplicamask = aplicamask.replace(/([)]\d{4})/, "$1-");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
            case 5: // Aplica máscara de CEP
                tam_campo = 9
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\d{5})/, "$1-");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
            case 6: // Somente números
                aplicamask = aplicamask.replace(/\D/g, "");
                break;
            case 7: // Valores monetários
                aplicamask = aplicamask.replace(/[^0123456789,]/g, "")
                break;
            case 8:  //Aplica máscara de HORA
                tam_campo = 5
                aplicamask = aplicamask.replace(/\D/g, "");
                aplicamask = aplicamask.replace(/(\d{2})/, "$1:");
                aplicamask = aplicamask.replace(/(\/{1}\d{2})/, "$1");
                aplicamask = aplicamask.length > tam_campo ? aplicamask.substring(0, tam_campo) : aplicamask;
                break;
        }
        campo.value = aplicamask;
    }
}

// função para retirar os espaços em branco do início e fim de uma string
function trim(strTexto) {
    return strTexto.replace(/^\s+|\s+$/g, '');
}

function ValidaLogin() {
    var msg = "";

    if (trim(document.getElementById('ctl00_cph_lblCliente').innerHTML) == "") {
        msg = 'E-mail invalido';
        document.getElementById('ctl00_cph_txtEmail').focus();
    }  
    else if ((trim(document.getElementById('ctl00_cph_txtTelefone').value) == "") ||
            (document.getElementById('ctl00_cph_txtTelefone').value.length < 13)) {
        msg = 'Telefone invalido';
        document.getElementById('ctl00_cph_txtTelefone').focus();
    }
    else if (trim(document.getElementById('ctl00_cph_txtSenha').value) == "") {
        msg = 'Informe a sua senha';
        document.getElementById('ctl00_cph_txtSenha').focus();
    }

    if (msg != "") {
        document.getElementById('ctl00_txtMessage').style.display = '';
        document.getElementById('ctl00_txtMessage').innerHTML = msg;
        return false;
    }
    else document.getElementById('ctl00_txtMessage').style.display = 'none';

    return true;
}

function ValidaCadastro() {
    var msg = "";

    if ((trim(document.getElementById('ctl00_cph_txtEmail').value) == "") ||
       (document.getElementById('ctl00_cph_txtEmail').value.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1)) {
        msg = 'E-mail invalido';
        document.getElementById('ctl00_cph_txtEmail').focus();
    }
    else if ((trim(document.getElementById('ctl00_cph_txtCnpj').value) == "") ||
            (document.getElementById('ctl00_cph_txtCnpj').value.length < 14)) {
        msg = 'CNPJ invalido';
        document.getElementById('ctl00_cph_txtCnpj').focus();
    }
    else if (trim(document.getElementById('ctl00_cph_txtNome').value) == "") {
        msg = 'Informe o seu nome';
        document.getElementById('ctl00_cph_txtNome').focus();
    }
    else if ((trim(document.getElementById('ctl00_cph_txtTelefone').value) == "") ||
            (document.getElementById('ctl00_cph_txtTelefone').value.length < 13)) {
        msg = 'Telefone invalido';
        document.getElementById('ctl00_cph_txtTelefone').focus();
    }
    else if (trim(document.getElementById('ctl00_cph_txtSenha').value) == "") {
        msg = 'Informe a sua senha';
        document.getElementById('ctl00_cph_txtSenha').focus();
    }
    else if (trim(document.getElementById('ctl00_cph_txtConfirma').value) == "") {
        msg = 'Confirme a sua senha';
        document.getElementById('ctl00_cph_txtConfirma').focus();
    }
    else if ((trim(document.getElementById('ctl00_cph_txtSenha').value)) !=
            (trim(document.getElementById('ctl00_cph_txtConfirma').value))) {
        msg = 'Confirmacao de senha invalida';
        document.getElementById('ctl00_cph_txtConfirma').focus();
    }

    if (msg != "") {
        document.getElementById('ctl00_txtMessage').style.display = '';
        document.getElementById('ctl00_txtMessage').innerHTML = msg;
        return false;
    }
    else document.getElementById('ctl00_txtMessage').style.display = 'none';

    return true;
}

function ValidaLembrar() {
    var msg = "";

    if ((trim(document.getElementById('ctl00_cph_txtEmail').value) == "") ||
       (document.getElementById('ctl00_cph_txtEmail').value.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1)) {
        msg = 'E-mail invalido';
        document.getElementById('ctl00_cph_txtEmail').focus();
    }

    if (msg != "") {
        document.getElementById('ctl00_txtMessage').style.display = '';
        document.getElementById('ctl00_txtMessage').innerHTML = msg;
        return false;
    }
    else document.getElementById('ctl00_txtMessage').style.display = 'none';

    return true;
}

function CarregaEmail() {
    var email = document.getElementById('ctl00_cph_txtEmail').value;
    if (email != "")
        PageMethods.CarregaEmail(email, SucessoEmail);

    return false;
}

function SucessoEmail(email) {
    if (email.Telefone != null) {
        document.getElementById('divCliente').style.display = '';
        document.getElementById('ctl00_cph_lblCliente').innerHTML = "Cliente: " + email.Cliente.Fantasia;
        document.getElementById('ctl00_cph_txtTelefone').value = email.Telefone;
        document.getElementById('ctl00_cph_txtSenha').focus();

        if (email.Cliente.Bloqueado) {
            document.getElementById('ctl00_txtMessage').style.display = '';
            document.getElementById('ctl00_txtMessage').innerHTML = "Cliente bloqueado";
        }
        else {
            PageMethods.VerificaPendencias(email.Cliente.Codigo, email.Cliente.Dependentes_id, SucessoPendencias);
            document.getElementById('ctl00_txtMessage').style.display = 'none';
        }
    }
    else {
        document.getElementById('divCliente').style.display = 'none';
        document.getElementById('ctl00_cph_lblCliente').innerHTML = "";
        document.getElementById('ctl00_cph_txtTelefone').value = "";
    }
}

function VerificaExisteEmail() {
    var email = document.getElementById('ctl00_cph_txtEmail').value;
    if (email != "")
        PageMethods.VerificaExisteEmail(email, SucessoVerifica);
    else document.getElementById('divExiste').style.display = 'none';

    return false;
}

function SucessoVerifica(existe) {
    if (existe) {
        document.getElementById('divExiste').style.display = '';
        document.getElementById('ctl00_cph_txtEmail').focus();
    }
    else document.getElementById('divExiste').style.display = 'none';
}

function CarregaCliente() {
    var cnpj = document.getElementById('ctl00_cph_txtCnpj').value;
    if (cnpj.length == 14)
        PageMethods.CarregaCliente(cnpj, SucessoCliente);
    else document.getElementById('divCliente').style.display = 'none';

    return false;
}

function SucessoCliente(cliente) {
    if (cliente.Fantasia != null) {
        document.getElementById('ctl00_cph_lblCliente').innerText = "Cliente: " + cliente.Fantasia;
        if (cliente.Bloqueado) {
            document.getElementById('ctl00_txtMessage').style.display = '';
            document.getElementById('ctl00_txtMessage').innerHTML = "Cliente bloqueado";
        }
        else {
            PageMethods.VerificaPendencias(cliente.Codigo, cliente.Dependentes_id, SucessoPendencias);
            document.getElementById('ctl00_txtMessage').style.display = 'none';
        }
    }
    else
        document.getElementById('ctl00_cph_lblCliente').innerText = "Cliente nao cadastrado";
    document.getElementById('divCliente').style.display = '';
}

function SucessoPendencias(haPendencia) {
    if (haPendencia) {
        document.getElementById('ctl00_txtMessage').style.display = '';
        document.getElementById('ctl00_txtMessage').innerHTML = "Verifique sua situacao financeira junto a Big Automacao";
    }
    else document.getElementById('ctl00_txtMessage').style.display = 'none';
}