﻿/* *********************************************************************************************************

* FUNÇÃO         = SomenteNumeros(e)

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 01/05/2009

* OBJETIVO       = Verifica se o valor digitado em uma text é um numero.

* EXEMPLO DE USO =

* onkeypress="javascript:return SomenteNumeros(event);"

********************************************************************************************************* */

function SomenteNumeros(e) {

    var tecla = new Number();
    if (window.event) {
        tecla = e.keyCode;
    }
    else if (e.which) {
        tecla = e.which;
    }
    else {
        return true;
    }
    if (((tecla < 48) || (tecla > 57)) && (tecla != 8)) {
        return false;
    }

}


/* *********************************************************************************************************

* FUNÇÃO         = MascaraData(fld,event)

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 01/05/2009

* OBJETIVO       = Formata uma text dd/mm/yyyy.

* EXEMPLO DE USO =

* onKeyDown="MascaraData(this,event);"

********************************************************************************************************* */

function MascaraData(fld, event) {

    var c = event.keyCode
    global = fld;
    if (c == 27) {
        setTimeout("global.value = ''", 0);
    }

    if ((c != 8) && (c != 46)) { /*Verifica se Backspace ou Delete*/

        if (fld.value.length == 2) { fld.value = fld.value + '/'; }
        if (fld.value.length == 5) { fld.value = fld.value + '/'; }
        if (fld.value.length > 10) { fld.value = fld.value.substring(0, 10); }
        if (event.keyCode == 12) {
            setTimeout("global.value = ''", 0);
        }
    }
}

/* *********************************************************************************************************

* FUNÇÃO         = validarData(campo)

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 01/05/2009

* OBJETIVO       = Verifica se a Data é Valida

* EXEMPLO DE USO =

* onBlur="validarData(this)"  

********************************************************************************************************* */

function validarData(campo) {
    var expReg = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/;
    var msgErro = 'Formato inválido de data.';
    global = campo;
    if ((campo.value != '') && (campo.value != "__/__/____")) {
        if ((campo.value.match(expReg))) {
            var dia = campo.value.substring(0, 2);
            var mes = campo.value.substring(3, 5);
            var ano = campo.value.substring(6, 10);
            if ((mes == 4 || mes == 6 || mes == 9 || mes == 11) && (dia > 30)) {
                alert("Dia incorreto !!! O mês especificado contém no máximo 30 dias.");
                setTimeout("global.focus()", 0); //Devido ao bug no firefox tem que usar assim
                return false;
            } else {
                if (ano % 4 != 0 && mes == 2 && dia > 28) {
                    alert("Data incorreta!! O mês especificado contém no máximo 28 dias.");
                    setTimeout("global.focus()", 0);
                    return false;
                } else {
                    if (ano % 4 == 0 && mes == 2 && dia > 29) {
                        alert("Data incorreta!! O mês especificado contém no máximo 29 dias.");
                        setTimeout("global.focus()", 0);
                        return false;
                    } else {
                        return true;
                    }
                }
            }
        } else {
            alert(msgErro);
            setTimeout("global.focus()", 0);
            return false;
        }
    }
}

/* *********************************************************************************************************

* FUNÇÃO         = LimpaCampo(fld, event)

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 01/05/2009

* OBJETIVO       = Limpa Campo quando Pressiona a Tecla "ESC"

* EXEMPLO DE USO =

* onKeyDown="LimpaCampo(this,event);"   

********************************************************************************************************* */


function LimpaCampo(fld, event) {

    var c = event.keyCode
    global = fld;
    if (c == 27) {
        setTimeout("global.value = ''", 0);
    }

}

/* *********************************************************************************************************

* FUNÇÃO         = fecha_janela()

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 01/05/2009

* OBJETIVO       = Fecha o Browser

* EXEMPLO DE USO =

* OnClientClick="fecha_janela()"  

********************************************************************************************************* */

function fecha_janela() {
    window.opener = window;
    window.close();
}


/* *********************************************************************************************************

* FUNÇÃO         = mascaraTel(objeto)

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 13/05/2009

* OBJETIVO       = Formata para Telefone 7777-7777 o valor de um text.

* EXEMPLO DE USO =

* onkeypress=   "onkeydown="mascaraTel(this);"

********************************************************************************************************* */

function mascaraTel(objeto) {
    if (objeto.value.indexOf("-") == -1 && objeto.value.length > 4) { objeto.value = ""; }
    if (objeto.value.length == 4) { objeto.value += "-"; }
    //    if (event.keyCode == 8) {
    //        objeto.value = '';
    //    }
}


/* *********************************************************************************************************

* FUNÇÃO         = Confirma()

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 15/05/2009

* OBJETIVO       = Pergunta se deseja realmente fazer o que pretendia.

* EXEMPLO DE USO =

* OnClientClick="return Confirma('Confirma o Desbloqueio do Cartão?');"   Se resposta for não ele num faz nada no botão

********************************************************************************************************* */

function Confirma(texto) {

    if (confirm(texto) == true)
        return true;
    else
        return false;
}
/***********************************************************************************************************

* FUNÇÃO         = IM_MaskEdit()

* AUTOR          = Walter Henrique

* DT_CRIACAO     = 02/07/2009

* OBJETIVO       = Formata o campo de acordo com a Mascara passada por parametro.

* EXEMPLO DE USO =

* onkeypress="return IM_MaskEdit(this, '999.999.999-99', event);"

********************************************************************************************************* */



function IM_MaskEdit(objeto, sMask, evtKeyPress) {

    var i, nCount, sValue, fldLen, mskLen, bolMask, sCod;
    var nTecla = new Number();

    if (window.event) {
        nTecla = evtKeyPress.keyCode;
    } else if (evtKeyPress.which) {
        nTecla = evtKeyPress.which;
    }
    else {
        return true;
    }

    sValue = objeto.value;

    // Limpa todos os caracteres de formatação que

    // já estiverem no campo.

    sValue = sValue.toString().replace("-", "");

    sValue = sValue.toString().replace("-", "");

    sValue = sValue.toString().replace(".", "");

    sValue = sValue.toString().replace(".", "");

    sValue = sValue.toString().replace("/", "");

    sValue = sValue.toString().replace("/", "");

    sValue = sValue.toString().replace(":", "");

    sValue = sValue.toString().replace(":", "");

    sValue = sValue.toString().replace("(", "");

    sValue = sValue.toString().replace("(", "");

    sValue = sValue.toString().replace(")", "");

    sValue = sValue.toString().replace(")", "");

    sValue = sValue.toString().replace(" ", "");

    sValue = sValue.toString().replace(" ", "");

    fldLen = sValue.length;

    mskLen = sMask.length;

    i = 0;

    nCount = 0;

    sCod = "";

    mskLen = fldLen;

    if ((nTecla != 8) && (nTecla != 46)) { /*Verifica se Backspace ou Delete*/

        while (i <= mskLen) {

            bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))

            bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

            if (bolMask) {

                sCod += sMask.charAt(i);

                mskLen++;
            }

            else {

                sCod += sValue.charAt(nCount);

                nCount++;

            }

            i++;

        }
    }

    objeto.value = sCod;

    if (((nTecla < 48) || (nTecla > 57)) && (nTecla != 8)) {
        return false;
    }

    else {

        return true;

    }

}



function Alerta(mensagem) {
    var comando = "alert('" + mensagem + "');";
    setTimeout(comando, 1);
}

function Limpar(objeto) {
    objeto.value = '';
}

function Texto(objeto) {
    objeto.value = 'Walter';
}
   
   
