﻿var divNavegadorSelecionada = "";
var tdNavegadorSelecionada = "";
var divNavegadorTodos = "";
var itemSelecionado = "";

function IndicarSelecionado(valor) {
    itemSelecionado = valor;
}

function ExibirSubItensNavegadorMarca(div, td, marca) {

    if (itemSelecionado == marca) {
        if (divNavegadorTodos != "")
            FecharTodosNavegador(false);

        if (divNavegadorSelecionada != div && divNavegadorSelecionada != "") {
            FecharSubItensNavegador(divNavegadorSelecionada, tdNavegadorSelecionada, false);
        }

        ConfiguraItemSelecionado(div, td, marca);

        var ajaxPage = ObterDominio() + "carros/ajax.aspx?metodo=obtermodelopormarcanavegador&marcaveiculo=" + marca;
        $.getJSON(ajaxPage,
            function(data) {
                PreencherSubItensNavegadorMarca(data, div, td, marca);
            });
    }

    return false;
}

function PreencherSubItensNavegadorMarca(lista, div, td, marca) {
    if (lista.length > 0) {
        var conteudoColuna1 = "";
        var conteudoColuna2 = "";
        var conteudoColuna3 = "";
        var conteudo = ObterNomeMarca(marca);
        conteudo += ObterLinkFechar(div, td);
        var texto = "";
        var quantidade = "";

        var totalItens = Math.ceil(lista.length / 3);

        for (var i = 0; i < lista.length; i++) {
            conteudoColuna = "<li><a onclick='javascript:AtualizaTipoBusca(4);' href=\"" + lista[i]["Valor"] + "\">" + lista[i]["Texto"] + "</a>&nbsp;(" + lista[i]["Quantidade"] + ")";

            if (i < totalItens)
                conteudoColuna1 += conteudoColuna;
            else if (i < (totalItens * 2))
                conteudoColuna2 += conteudoColuna;
            else
                conteudoColuna3 += conteudoColuna;
        }

        conteudo += "<div class='cx'>";
        conteudo += "<ul>" + conteudoColuna1 + "</ul>";

        if (conteudoColuna2 != "")
            conteudo += "<ul>" + conteudoColuna2 + "</ul>";
        if (conteudoColuna3 != "")
            conteudo += "<ul>" + conteudoColuna3 + "</ul>";

        conteudo += "</div>";            

        $("#" + div).html(conteudo);
        $("#" + div).bgiframe();
    }
}

function ObterNomeMarca(marca) {
    return "<h3>Modelos " + marca + "</h3>"
}

function ObterLinkFechar(div, td) {
    return "<a onclick=\"FecharSubItensNavegador('" + div + "','" + td + "');\"><img src='img/autos/bt-fechar.gif' alt='fechar' title='fechar'></a>";
}

function ExibirSubItensNavegadorModelo(div, td, modelo, marca) {

    if (itemSelecionado == modelo) {
        if (divNavegadorTodos != "")
            FecharTodosNavegador(false);

        if (divNavegadorSelecionada != div && divNavegadorSelecionada != "")
            FecharSubItensNavegador(divNavegadorSelecionada, tdNavegadorSelecionada, false);

        ConfiguraItemSelecionado(div, td, modelo);

        var ajaxPage = ObterDominio() + "carros/ajax.aspx?metodo=obterversoesmaisbuscadas&marcaveiculo=" + marca + "&modeloveiculo=" + modelo;
        $.getJSON(ajaxPage,
            function(data) {
                PreencherSubItensNavegadorModelo(data, div, td, modelo, marca);
            });
    }

    return false;
}

function PreencherSubItensNavegadorModelo(lista, div, td, modelo, marca) {
    if (lista.length > 0) {

        var conteudo = "<h3>Detalhes do modelo - " + modelo + "</h3>";
        conteudo += "<a style=\"cursor:pointer;\" onclick=\"FecharSubItensNavegador('" + div + "','" + td + "');\"><img src=\"img/autos/bt-fechar.gif\" alt=\"fechar\" title=\"fechar\"></a><div class='cx'>";
        conteudo += "<div class=\"col-esq\"><strong>versões</strong><ul>";

        for (var i = 0; i < lista.length; i++) {
            conteudo += "<li><a onclick='javascript:AtualizaTipoBusca(5);' href=\"" + lista[i]["Valor"] + "\">" + lista[i]["Texto"] + "</a><span>(" + lista[i]["Quantidade"] + ")</span></li>";
        }

        conteudo += "</ul>";

        var ajaxPage = ObterDominio() + "carros/ajax.aspx?metodo=obterversaomaisbuscada&marcaveiculo=" + marca + "&modeloveiculo=" + modelo;
        $.getJSON(ajaxPage,
            function(data) {
                PreencherVersaoMaisBuscada(data, modelo, conteudo);
            });
    }
}

function PreencherVersaoMaisBuscada(versao, modelo, conteudo) {

    conteudo += "<strong>" + modelo + "</strong>";
    conteudo += "<p>Busca de <b>" + modelo + "</b>: " + versao.QuantidadeBusca.toString() + "/mês<br/>";
    conteudo += "<b>" + modelo + "</b> mais buscado:</p>";

    conteudo += "<div class=\"cx-maisbuscado\">";
    conteudo += "<a href=\"" + versao.Link + "\">";
    conteudo += "Versão: " + versao.Versao + "<br/>";
    conteudo += "Preço: " + versao.FaixaPreco + "<br/>";
    conteudo += "Ano: " + versao.Ano + "<br/>";
    conteudo += "Cor: " + versao.Cor + "<br/>";
    conteudo += "</a>";
    conteudo += "</div>";
    conteudo += "<div class=\"cx-maisbuscado-sombra\"/>";
    conteudo += "</div>";

    conteudo += "<div class=\"col-dir\">";
    conteudo += "<strong>dados de mercado</strong>";
    conteudo += "<div class=\"col-dados\">";
    conteudo += "<div class=\"valor\">R$</div>";
    conteudo += "<div id=\"graficoModelo\" style=\"margin-top:0px; margin-left:20px; width:350px; height:180px;\"></div>";
    conteudo += "<div class=\"ano\">Ano</div>";
    conteudo += "</div>";
    conteudo += "</div>";
    conteudo += "</div>"
  

    var ajaxPage = ObterDominio() + "carros/ajax.aspx?metodo=obtermediaveiculoanovalor&modeloveiculo=" + modelo;
    $.getJSON(ajaxPage,
            function(data) {
                PreencherGraficoVersao(data, modelo, conteudo);
            });
}

function PreencherGraficoVersao(lista, modelo, conteudo) {

    $("#divSubItemModelo").html(conteudo);
    $("#divSubItemModelo").bgiframe();

    var valores = new Array();
    var anos = new Array();

    for (var i = 0; i < lista.length; i++) {
        anos[i] = lista[i]["Ano"];
        valores[i] = lista[i]["Valor"];
    }

    if (lista.length > 0) {
        plot2 = $.jqplot('graficoModelo', [valores], {
            legend: { show: false },
            title: 'Preço Médio das Ofertas x Ano de Fabricação',
            seriesDefaults: {
                renderer: $.jqplot.BarRenderer,
                rendererOptions: { barPadding: 2 }
            },
            grid: {
                background: 'white',
                borderColor: '#CCCCCC',
                borderWidth: 1.0
            },
            axes: {
                xaxis: {
                    renderer: $.jqplot.CategoryAxisRenderer,
                    ticks: anos
                },
                yaxis: {
                    autoscale: false,
                    tickOptions: { formatString: '%.0f' }
                }
            },
            seriesColors: ["#f2922c", "#8ec73f", "#00abed", "#8d218e", "#138491", "#35abee", "#256eba", "#342f90", "#8d228e", "#8f2c62"]
        });
    }
    else {
        $("#graficoModelo").html("Nenhum dado gráfico foi encontrado.");
    }
}

function FecharSubItensNavegador(div, td, efeito) {
    $("#" + div + "Shadow").hide();

    if (efeito != null)
        $("#" + div).hide("");
    else
        $("#" + div).hide("slow");

    $("#" + tdNavegadorSelecionada).removeClass("menu-lateral-selecionado");
    divNavegadorSelecionada = "";
    tdNavegadorSelecionada = "";
    itemSelecionado = "";
    return false;
}

function ExibirTodosNavegador(div) {
    divNavegadorTodos = div;

    if (divNavegadorSelecionada != "") {
        FecharSubItensNavegador(divNavegadorSelecionada, tdNavegadorSelecionada, false);
    }

    ExibeDiv(div);
}

function ExibeDiv(div) {
    var top = RetornarPosicaoDiv(div);
    var left = $("#" + div).parent().offset().left + 150;

    $("#" + div).css("top", top);
    $("#" + div).css("left", left);
    $("#" + div).bgiframe();
    $("#" + div).show();

    $("#" + div + "Shadow").css("top", top + 6);
    $("#" + div + "Shadow").css("left", left + 6);
    $("#" + div + "Shadow").show();
}

function FecharTodosNavegador(efeito) {
    if (efeito != null)
        $("#" + divNavegadorTodos).hide("");
    else
        $("#" + divNavegadorTodos).hide("slow");

    $("#" + divNavegadorTodos + "Shadow").hide();
    divNavegadorTodos = "";
}

function ConfiguraItemSelecionado(div, td, valor) {
    $("#" + div).html("<img src=\"http://" + location.host + "/img/carregando-gde.gif\">");

    ExibeDiv(div);

    if (tdNavegadorSelecionada != "")
        $("#" + tdNavegadorSelecionada).removeClass("menu-lateral-selecionado");

    $("#" + td).addClass("menu-lateral-selecionado");

    divNavegadorSelecionada = div;
    tdNavegadorSelecionada = td;
}

function TratarErro(div) {
    $("#" + div).html("Não foi possível obter informações");
}

function RetornarPosicaoDiv(div) {
    var posicaoScroll = $(window).height() + $(window).scrollTop();
    var tamanhoDisponivelPai = posicaoScroll - $("#" + div).parent().offset().top;
    var tamanhoDiv = $("#" + div).css("height").toString().replace("px", "");
    var posicao = 0;

    //Verifica se é necessário posicionar para cima
    if (tamanhoDisponivelPai < tamanhoDiv) {
        //calcula a diferença necessária para renderizar corretamente acima        
        posicao = $("#" + div).parent().offset().top + (tamanhoDisponivelPai - tamanhoDiv);
    }
    else {
        //Verifica se é necessário posicionar para baixo
        if ($(window).scrollTop() > $("#" + div).parent().offset().top) {
            //calcula a diferença necessária para renderizar corretamente abaixo
            posicao = $("#" + div).parent().offset().top + ($(window).scrollTop() - $("#" + div).parent().offset().top);
        }
        else {
            //renderiza ao lado do objeto pai
            posicao = $("#" + div).parent().offset().top;
        }
    }

    return posicao;
}
