﻿function fechaCalendario(c)
//========================================================================
//Autor:    Fagner Coin Pereira
//Data:     13/09/2009
//Função:   Fecha o calendário (Ajax:CalendarExtend) após selecionar data
//========================================================================
{
    //Não necessita passagem de parâmetro;
    c.hide();
}

function AbrePopUp(pagina, titulo, parametros)
{
    window.open(pagina, titulo, parametros);
}

function pageLoad() 
{
    //Ajusta tela com o divLoading
    var adiv = document.getElementById('divLoading');
    str = screen.availWidth - 280;
    str = str + "px";
    adiv.style.left = str;
}

function BeginRequestHandler(sender, args) {
    var elem = args.get_postBackElement();
    AtivarLoading('visible', 'divLoading');
}

function EndRequestHandler(sender, args) {
    AtivarLoading('hidden', 'divLoading');
}

function AtivarLoading(visstring, elem)
{
    var adiv = $get(elem);
    adiv.style.visibility = visstring;

    if (navigator.appName == "Netscape")
        str = window.pageYOffset;
    else
        str = document.documentElement.scrollTop;

    str = str + 3;
    str = str + "px";
    adiv.style.top = str;
    str = screen.availWidth - 280;
    str = str + "px";
    adiv.style.left = str;
}
function SelecionaTodos(checkAllBox, gridView)
//========================================================================
//Autor:    Fagner Coin Pereira
//Data:     25/07/2007
//Função:   Marcar ou desmarcar todos os itens checkbox de uma gridview
//========================================================================
{
    // pega o valor do checkbox do header
    var actchk = document.getElementById(gridView + '$ctl01$' + this)
    var frm = document.forms[0];

    if (actchk) {
        var actVar = checkAllBox.checked;
    } else {
        var actVar = checkAllBox.checked;
    }

    for (i = 0; i < frm.length; i++) {
        e = frm.elements[i];
        if (e.type == 'checkbox')
            e.checked = actVar;
    }
}
function ValidaValorMonetario(e) {
    //========================================================================
    //Autor:    Fagner Coin Pereira
    //Data:     23/09/2009
    //Função:   Valida os caracteres digitados no campo monetário...
    //========================================================================
    switch (String.fromCharCode(event.keyCode)) {
        case "0":
            break;
        case "1":
            break;
        case "2":
            break;
        case "3":
            break;
        case "4":
            break;
        case "5":
            break;
        case "6":
            break;
        case "7":
            break;
        case "8":
            break;
        case "9":
            break;
        case ",":
            // garante que só existirá uma vírgula...
            if (event.srcElement.value.indexOf(",", 0) != -1) {
                event.returnValue = false;
            }
            break;
        default:
            // se não for um caracter válido, não o considera...
            event.returnValue = false;
            return;
    }
}
function FormataValorMonetario(IDCampo, decimais) {
    //========================================================================
    //Autor:    Fagner Coin Pereira
    //Data:     23/09/2009
    //Função:   Função para formatação de valor monetário...
    //========================================================================
    var posicaoPontoDecimal;
    var campo = '';
    var resultado = '';
    var pos, sep, dec;
    var vl = document.getElementById(IDCampo);

    // se o primeiro caracter for a vírgula, coloca um 0 antes...
    if (vl.value.charAt(0) == ',') {
        vl.value = '0' + vl.value;
    }
    //      // se o primeiro caracter for 0 seguido de qualquer outro, remove-o...
    //      if ((vl.value.charAt(0) == "0") && (vl.value.charAt(1) != ","))
    //      {
    //          vl.value = vl.value.replace(
    //      }
    // retira possiveis separadores de milhar...
    for (pos = 0; pos < vl.value.length; pos++) {
        if (vl.value.charAt(pos) != '.')
            campo = campo + vl.value.charAt(pos);
    }

    // formata o 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 a 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 o 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 a parte decimal...
        if (parseInt(decimais) > 0) {
            resultado = resultado + ',';
            for (dec = 1; dec <= parseInt(decimais); dec++) {
                resultado = resultado + '0';
            }
        }
    }

    // se o primeiro caracter for a vírgula, coloca um 0 antes...
    if (resultado.charAt(0) == ',') {
        resultado = '0' + vl.value;
    }

    if ((resultado == '') || (resultado == '0')) {
        resultado = '0,00';
    }

    // retorna o valor formatado...
    vl.value = resultado;

}
function HabilitaDesabilitaControle(NomeControle) {
    //========================================================================
    //Autor:    Fagner Coin Pereira
    //Data:     10/12/2008
    //Função:   Desabilita/habilita o controle informado...
    //========================================================================
    var vCtrl = document.getElementById(NomeControle);
    var acao = true;
    if (vCtrl.disabled == true)
        acao = false;

    vCtrl.disabled = acao;
}
function FecharPanel(panel)
{
    b = document.getElementById(panel);
    b.className = "panelHide";
}
function AbrirPanel(panel)
{
    b = document.getElementById(panel);
    if (navigator.appName == "Netscape")
        str = window.pageYOffset;
    else
        str = document.documentElement.scrollTop;

    str = str + 100;
    str = str + "px";
    b.style.top = str;
}