﻿/// <reference path="../includes/jquery.intelisense.js" />
$(document).ready(function() {
    inicio();
});


function inicio() {
    //Pega o instituto. Se veio vazio = Unip
    var instituto = $.query(location.search).instituto;
    if (instituto == "")
        instituto = "UNIP";
    $("#hfInstituto").val(instituto);
    
    var c = new Classificado();
    c.carregaCombos();
    $("#frmBuscaClassificados").submit(c.listaClassificados);
    $("#linkVoltar").click(c.exibeControlesFormulario);
}

























//Lógica
function Classificado() {

    var exibeControlesBusca = function() {
        $("#frmBusca").hide();
        $("#gridClassificados").show();
    };

    this.exibeControlesFormulario = function() {
        $("#frmBusca").show();
        $("#gridClassificados").hide();
    };

    this.listaClassificados = function() {
        var validaBusca = function() {
            if (($("#selRamo").val() == "") &&
                ($("#selEstado").val() == "") &&
                ($("#txtPalavraChave").val() == "")) {
                alertModal("Informe ao menos um filtro para a busca", alertType.erro);
                return false;
            } else {
                return true;
            }
        };

        var busca_CallBack = function(json) {
            var strTabela = "";
            if (json.d.length > 0) {
                strTabela += "<h3>Sua busca encontrou " + json.d.length + " classificado(s)</h3><br/><br/><form>";
                $(json.d).each(function() {
                    strTabela += "<label><strong>Título:</strong></label> " + this.titulo + " <br/>";
                    strTabela += "<label><strong>Ramo de atividade:</strong></label> " + this.ramo.nome + " <br/>";
                    strTabela += "<label><strong>Descrição:</strong></label><div style='overflow:auto'> " + this.descricao + "</div>";
                    strTabela += "<label><strong>E-mail:</strong></label>" + this.email + "<br/>";
                    strTabela += "<br/>"
                    strTabela += "<a href='Classificado.aspx?id=" + this.id + "'>Ver classificado completo</a>";
                    strTabela += "<h2></h2>";
                });
                strTabela += "</form>";
            } else {
                strTabela += "Nenhum classificado foi encontrado";
            }
            exibeControlesBusca();
            $("#gridClassificados").html(strTabela);
        };


        if (validaBusca()) {
            var objBusca = {};
            objBusca.siglaInstituto = $("#hfInstituto").val();
            objBusca.idRamo = $("#selRamo").val();
            objBusca.idUf = $("#selEstado").val();
            objBusca.palavraChave = $("#txtPalavraChave").val();

            WebService("../ws/wsClassificado.asmx/listaClassificados", busca_CallBack, objBusca);
        }
        return false;
    };


    var carregaRamos = function() {
        var CallBack = function(json) {
            if (json.d) {
                var selRamo = "<option value=''>Selecione</option><option value=''>- - - - - - - - - - - -</option>";
                for (var i = 0; i < json.d.length; i++) {
                    selRamo += "<option value='" + json.d[i].id + "'>" + json.d[i].nome + "</option>";
                };
                $("#selRamo").html(selRamo);
            }
        };
        var CallBackError = function(e) {
            var selRamo = "<option value='' selected='selected'>Falha ao carregar os ramos</option>";
            $("#selRamo").html(selRamo);
        };
        WebService("../ws/wsRamo.asmx/listaRamos", CallBack, {}, CallBackError);
    };

    var carregaEstados = function() {
        var CallBack = function(json) {
            if (json.d) {
                var selEstado = "<option value=''>Selecione</option><option value=''>- - - - - - - - - - - -</option>";
                for (var i = 0; i < json.d.length; i++) {
                    selEstado += "<option value='" + json.d[i].idEstado + "'>" + json.d[i].sigla + " - " + json.d[i].nome + "</option>";
                };
                $("#selEstado").html(selEstado);
            }
        };
        var CallBackError = function(e) {
            var selEstado = "<option value='' selected='selected'>Falha ao carregar os estados</option>";
            $("#selEstado").html(selEstado);
        };
        WebService("../ws/wsEstado.asmx/listaEstados", CallBack, {}, CallBackError);
    };

    this.carregaCombos = function() {
        carregaRamos();
        carregaEstados();
    };    

}
