﻿carregando = false;
$(document).ready(function()
{
    if ($("#EmailCliente").val() == "")
    {
        $("#EmailCliente").addClass("email");
    }
    $("#SenhaCliente").addClass("senha");

    ControlaLogin();

    $("#carregando").ajaxError(function(e, xhr, settings)
    {
        var exception = eval("(" + xhr.responseText + ")");
        ShowMensagem(exception.Tipo, exception.Mensagem);
    });

    $("#carregando").ajaxStop(function()
    {
        $(".carregando").remove();
    });

    $("input").mascara();
});

function ShowMensagem(tipo, mensagem, linkRetorno)
{
    $("#divMensagem").dialog("destroy");
    $("#divMensagem").remove();
    
    var divMensagem = $("<div id='divMensagem'></div>");
    divMensagem.append("<p class='mensagem'>" + mensagem + "</p>");

    var pBotoes = $("<p class='botoes'></p>");
    var botao = $("<button class='btOk' style='float:right;' type='button'>Ok</button>");

    divMensagem.append(pBotoes);
    pBotoes.append(botao);

    botao.click(function(e)
    {
        e.preventDefault();
        $("#divMensagem").dialog("close");
        return false;
    });
    
    divMensagem.addClass(tipo);
    
    $("body").append(divMensagem);

    $("#divMensagem").dialog({
        bgiframe: true,
        modal: true,
        autoOpen: true,
        title: "Dr. Util",
        width: "auto",
        minHeight: false,
        close: function()
        {
            $("#divMensagem").dialog("destroy");
//            if (linkRetorno || linkRetorno != "")
//            {
//                //window.location = linkRetorno;
//            }
            $("#divMensagem").remove();
        }
    });
    
}

jQuery.fn.extend
({
    aba: function(callback)
    {
        var aba = $(this);

        $(".aba-conteudo", aba).hide();
        if ($(".aba-conteudo:first").hasClass("acessonegado"))
        {
            $(".aba-conteudo:not(.acessonegado):first").show();
        }
        else
        {
            $(".aba-conteudo:first", aba).show();
        }


        $(".aba-orelha a", aba).removeClass("selecionado");
        if ($(".aba-orelha a:first").hasClass("acessonegado"))
        {
            $(".aba-orelha a:not(.acessonegado):first").addClass("selecionado");
        }
        else
        {
            $(".aba-orelha a:first", aba).addClass("selecionado");
        }


        $(".aba-orelha a", aba).click(function()
        {
            if (!$(this).hasClass("selecionado"))
            {
                $(".aba-orelha a", aba).removeClass("selecionado");
                $(this).addClass("selecionado");

                $(".aba-conteudo", aba).hide();
                $(this.hash).show();
                if (callback)
                {
                    callback($(this.hash));
                }
            }
            $(this).blur();
            return false;
        });
    },
    noTextSelect: function()
    {
        return this.each(function()
        {
            if ($.browser.mozilla)
            {//Firefox
                $(this).css('MozUserSelect', 'none');
            } else if ($.browser.msie)
            {//IE
                $(this).bind('selectstart', function() { return false; });
            } else
            {//Opera, etc.
                $(this).mousedown(function() { return false; });
            }
        });
    },
    tree: function(nivelAberto)
    {
        return this.each(function()
        {
            var oTree = $(this);
            oTree.find("ul").hide();
            oTree.find("li").addClass("fechado");

            var imgAberto = "/skin/images/icoMenos.png";
            var imgFechado = "/skin/images/icoMais.png";

            oTree.find("li:has(ul)").prepend("<img src='" + imgFechado + "' title='Abrir nó' style='cursor: pointer;' class='bulletTree' />")

            oTree.find(".bulletTree").toggle
            (
                function()
                {
                    $(this).parent().addClass("aberto");
                    $(this).parent().removeClass("fechado");
                    $(this).parent().find("> ul").slideDown();
                    $(this).attr("src", imgAberto)
                           .attr("title", "Fechar nó")
                           .attr("alt", "[Fechado]");
                },
                function()
                {
                    $(this).parent().addClass("fechado");
                    $(this).parent().removeClass("aberto");
                    $(this).parent().find("> ul").slideUp();
                    $(this).attr("src", imgFechado)
                           .attr("title", "Abrir nó")
                           .attr("alt", "[Aberto]");
                }
            );
        });
    },
    valData: function()
    {
        var objRet = new Object();
        var valor = $(this).val();
        objRet.inicio = null;
        objRet.fim = null;

        var data = Date.parse(valor);
        if (data == null)
        {
            var arrData = valor.split(" - ");
            if (arrData.length == 2)
            {
                objRet.inicio = Date.parse(arrData[0]);
                objRet.fim = Date.parse(arrData[1]);
            }
        }
        else
        {
            objRet.inicio = data;
            objRet.fim = data;
        }

        return objRet;
    },
    valNumber: function()
    {
        var strVal = $(this).val();
        if (this.attr("validacao") == "valor")
        {
            strVal = strVal.replace(/[^0-9,]/g, "");
        }
        else
        {
            strVal = strVal.replace(/\D/g, "");
        }

        return strVal;
    },
    enable: function()
    {
        $(this).removeAttr("disabled");
    },
    disable: function()
    {
        $(this).attr("disabled", "disabled");
        $(this).unbind("click");
    },
    sameHeight: function()
    {
        var maxHeight = 0;
        var objs = this;
        objs.each(function()
        {
            if ($(this).height() > maxHeight)
            {
                maxHeight = $(this).height();
            }
        });

        objs.height(maxHeight);
    },
    maxlength: function(maxVal)
    {
        $(this).keyup(function()
        {
            if ($(this).val().length > maxVal)
                $(this).val($(this).val().substring(0, maxVal));
        });
    },
    carregando: function()
    {
        var target = $(this)
        var divCarregando = $("<div class='carregando' id='divCarregando_" + target.attr("id") + "'><div class='block'></div></div>")
        $("body").append(divCarregando);
        divCarregando.css("width", target.outerWidth())
                     .css("height", target.outerHeight())
                     .css("position", "absolute")
                     .css("left", target.offset().left)
                     .css("top", target.offset().top)
                     .css("z-index", 2000);
                     
    },
    carregado: function()
    {
        var target = $(this);
        $("#divCarregando_" + target.attr("id")).remove();
    }

});

function validaData()
{
    if ($("#datepicker").val() != "")
    {
        if (!validaDataFim("#datepicker"))
        {
            return false;
        } return true;
    } return true;
}

function validaDataFim(lData)
{
    var data = $(lData).valData();
    if (data.inicio == null)
    {
        return true;
    }
    else
    {
        if (data.inicio.isAfter(data.fim))
        {
            return false;
        }
        else
        {
            return true;
        }
    }
}

function confirm(msg, funcOk)
{
    $("#divConfirm").remove();
    $("body").append("<div id='divConfirm' class='display: none;' title='Dr. Útil'></div>");
    
    var strBotoes = ""
    strBotoes += "<p class='botoes'>";
    strBotoes += "<button class='btOk'><span>OK</span></button>";
    strBotoes += "<button class='btCancelar'><span>Cancelar</span></button>";
    strBotoes += "</p>";
    
    $("#divConfirm").html(msg);
    $("#divConfirm").append(strBotoes);
    
    $("#divConfirm").dialog({
        bgiframe: true,
        modal: true,
        autoOpen: true,
        width: "450px",
        close: function()
        {
            $("#divConfirm").remove();
        }
    });
    
    //Define os eventos dos botões
    $("#divConfirm button.btOk").click(function()
    {
        $("#divConfirm").dialog('close');
        funcOk();
    });
    
    $("#divConfirm button.btCancelar").click(function()
    {
        $("#divConfirm").dialog('close');
    });
}

function ControlaIndices(obj, i)
{
    $(obj).find("input,select,textarea").each(function()
    {
        var nome = $(this).attr("name");
        nome = nome.replace(/((\[[0-9]+\])*\.)(.+)$/, "[" + i + "].$3");
        $(this).attr("name", nome);
    });
}

function AbrirRastreamento(id)
{
    window.open("http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_LINGUA=001&P_TIPO=001&P_COD_UNI=" + id, "popRastreamento", "width=520,height=400");
}

function ControlaLogin()
{
$("#EmailCliente").focus(function()
    {
        $(this).removeClass("email");
    });
    $("#EmailCliente").blur(function()
    {
        if($.trim($(this).val()) == "")
            $(this).addClass("email"); 
     });

     $("#SenhaCliente").focus(function()
     {
         $(this).removeClass("senha");
     });
     $("#SenhaCliente").blur(function()
     {
         if ($.trim($(this).val()) == "")
             $(this).addClass("senha");
     });
}

function float2moeda(num)
{
    x = 0;

    if (num < 0)
    {
        num = Math.abs(num);
        x = 1;
    }

    if (isNaN(num))
        num = "0";

    cents = Math.floor((num * 100 + 0.5) % 100);

    num = Math.floor((num * 100 + 0.5) / 100).toString();
    if (cents < 10)
        cents = "0" + cents;

    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
        num = num.substring(0, num.length - (4 * i + 3)) + '.' + num.substring(num.length - (4 * i + 3));

    ret = num + ',' + cents;
    if (x == 1)
        ret = ' - ' + ret; return ret;

    return num;
}


function ImprimirBoleto(id, reemissao)
{
    window.open(Url.Boleto + "?Codigo=" + id + "&Reemissao=" + reemissao, "popBoleto", "width=620,height=400");
}
