jQuery(function(){
    // cantos arredondados AREA BEMVINDOS
    $('#area-bemvindos').corner("bottom");
    $("#area-bemvindos").corner("bottom cc:#abe1f9");
  
    // cantos arredondados TAGS
    $('#tags').corner("6px");
    $('#tags').corner("cc:#fff");
  
    // cantos arredondados MEU CARRINHO
    $('.meu-carrinho > h1').corner("6px");
    $('.meu-carrinho > h1').corner("bottom cc:#0578ae");
    $('.meu-carrinho > h1').corner("bottom cc:#036aa3");
  
    // lista de produtos do carrinho
    $('.ver-tudo').click(function () {
        $('#container_meu_carrinho').slideToggle('medium');
    });

    // formulário de busca
    $("#BuscaTexto").focus(buscaVerificaTexto).blur(buscaVerificaTexto);
    
    // formulário de login
    $("a.logarForm").click(formularioDeLogin);
});

function buscaVerificaTexto(){
    if (this.value == "")
        this.value = "Busca...";
    else if (this.value == "Busca...")
        this.value = "";
}

/* ------------------------- funções de sistema ------------------------ */
function float2moeda(num) {
    var x = 0;

    if(num<0) {
        num = Math.abs(num);
        x = 1;
    }
    if(isNaN(num)) num = "0";
    var 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));
    var ret = num + ',' + cents;
    if (x == 1) ret = ' - ' + ret;
    return ret;
}

function removeFromArray(array, value){
    for (var i in array){
        if (array[i] == value){
            array.splice(i, 1);
            break;
        }
    }
}
function removeFromObject(object, index){
    delete object[index];
}

/* --------------------- box de carregando ------------------------ */
function adicionarCarregando(){
    var content = $("#content");
    content.css("position", "relative");
    content.css("display", "block");
    
    var mask = $("#mask");
    mask.css("background-color", "#FFF");
    mask.css("left", 0);
    mask.css("top", 0);
    mask.css("z-index",8);
    mask.show().fadeTo("fast", 0.5);
    reajustarMascara(content);
    
    var img = $("<img>").attr("src", "img/carregando.gif");
    img.attr("id", "carregando");
    img.css("position", "absolute");
    img.css("display", "display");
    img.css("left", "50%");
    img.css("top", "250px");
    img.css("margin-left", "-136px");
    img.css("margin-top", "-106px");
    img.css("z-index",9);
    content.append(img);
    reajustarMascara(content);
    
    img.get(0).timerPause = false;
    img.get(0).timer = setTimeout("pausarCarregando()", 1500);
}
function removerCarregando(){
    var img = $("#carregando");
    if (img.get(0).timerPause){
        var content = $("#content");
        content.css("position", "");
        content.css("display", "");
    
        // remove o carregando
        img.remove();
    
        // removendo a máscara
        var mask = $("#mask");
        mask.css("background-color", "");
        mask.css("width", "");
        mask.css("height", "");
        mask.css("left", "");
        mask.css("top", "");
        mask.css("z-index", "");
        mask.hide();
    } else {
        img.get(0).timer = setTimeout("removerCarregando()", 250);
    }
}
function pausarCarregando(){
    $("#carregando").get(0).timerPause = true;
}

/* ---------------------- formulário de login ---------------------- */
function formularioDeLogin(){
    // exibe a máscara
    var mask = $("#mask");
    mask.css("background-color", "#000");
    mask.css("left", 0);
    mask.css("top", 0);
    mask.css("z-index",100);
    mask.show().fadeTo("fast", 0.5);
    mask.click(formularioDeLoginFechar)
    
    // redimensiona a máscara para a tela inteira
    reajustarMascara($(document));
    
    // url de login
    loginURL = $(this).attr("href");
    
    // retorna a caixa de login
    var box = $("<div id=\"formularioDeLogin\">");
    box.load("clientes/logar .orderLogin", null, formularioDeLoginLoad);
    box.css("position", "absolute");
    box.css("z-index", 1000);
    box.css("top", $(window).height()/2 - 125);
    box.css("left", $(document).width()/2 - 250);
    $(document.body).append(box);
    
    // desabilita o click
    return false;
}
function formularioDeLoginLoad(){
    // carrega as mascaras
    logarAutoload();
    
    // envia via ajax o submit do formulário
    $("#ClienteLogarForm").submit(formularioDeLoginSubmit);
    
    // link para fechar
    var link = $("<a class=\"fechar\" href=\"javascript:void(0);\" onclick=\"formularioDeLoginFechar()\">[x] Fechar</a>");
    $("#formularioDeLogin").append(link);
}
function formularioDeLoginSubmit(){
    // form
    var form = $(this);
    
    // envia via AJAX
    $.post(form.attr("action"), form.serialize(), formularioDeLoginSubmitRetorno);
    
    // cancela a submissão atual.
    return false;
}
function formularioDeLoginSubmitRetorno(data){
    var message = $(data).find("#authMessage");
    if (message.size() == 0){
        window.location.href = loginURL;
    } else {
        var tr = $("<tr><td colspan=2></td></tr>");
        tr.find("td").append(message);
        tr.insertAfter($("tr.orderHeader"));
        message.delay(2000).fadeOut(400, function(){
            tr.remove()
        });
    }
}
function formularioDeLoginFechar(){
    // remove e fecha a máscara
    $("#formularioDeLogin").remove();
    $("#mask").hide();
    
    // retorna para o padrão
    mask.css("background-color", "");
    mask.css("left", "");
    mask.css("top", "");
    mask.css("z-index","");
}

function reajustarMascara(content){
    var mask = $("#mask");
    mask.css("width", content.width());
    mask.css("height", content.height());
}
