﻿$(document).ready(function() {

    $(".ico_star").each(function() {
        alert($(this).html());
    });

    $("#tipoOperacaoCompramapa").click(function() {
        ObtemFaixaValoresMapa(0);

        $("#statusObramapa").html(optsEstagioObra);
    });

    $("#tipoOperacaoAluguelmapa").click(function() {
        ObtemFaixaValoresMapa(1);

        $("#statusObramapa").html("<option value='Finalizada'>Pronto</option>");
    });

    $("#tipoImovel1mapa").change(TipoImovelMapaChanged);

    $("#procurarmapa").click(function() {

        if (!ValidaCampos())
            return false;

        var tipoOperacaoValor = $('input[name=tipoOperacaomapa]:checked').val();
        var url = pathROOT + "BuscaMapa/?tipoOperacao=" + tipoOperacaoValor + "&tipoImovel=" + $("#tipoImovel2mapa").val() + "&valor=" + $("#faixaValormapa").val() + "&uf=" + $("#ufmapa").val() + "&qtQuartos1=" + $("#qtQuartos1mapa").val() + "&qtQuartos2=" + $("#qtQuartos2mapa").val() + "&statusObra=" + $("#statusObramapa").val();
        var cidadeValor = $("#cidademapa").val();
        if (cidadeValor != '') {
            url += "&cidade=" + cidadeValor;
        }
        var bairro1Valor = $("#bairro1mapa").val();
        if (bairro1Valor != '') {
            url += "&bairro1=" + bairro1Valor;
        }
        window.location = url;

        return false;
    });

    $("#ufmapa").change(function() {
        selecionaEstadoMapa($(this).val());
    });

    $("#cidademapa").change(CidadeMapaChanged);

    $("#qtQuartos1mapa").change(function() {
        QtQuartos1MapaChanged($(this).val() != "");
    });

    $("#bairro1mapa").change(function() {
        if ($(this).val() == "" && !$(this).hasClass("erro")) {
            $(this).addClass("erro");
        }
        else {
            $(this).removeClass("erro");
        }
    });
});

function TipoImovelMapaChanged() {
    $("#tipoImovel2mapa option").remove();

    $.get(pathROOT + "RestService.aspx", { tipo: $("#tipoImovel1mapa").val(), cmd: "ObtemTipoImovel" }, function(retorno) {

        var valores = retorno.split('#');
        for (var j = 0; j < valores.length; j++) {
            var valor = valores[j].split('|');
            $("#tipoImovel2mapa").append("<option value='" + valor[0] + "'>" + valor[1] + "</option>");
        }
    });
}

function CidadeMapaChanged() {

    if ($("#cidademapa").val() != "") {
        $("#cidademapa").removeClass("erro");
        $("#bairro1mapa option").remove();
        $("#bairro1mapa").append("<option value=''>Carregando</option>");
        $("#bairro1mapa").removeClass("inputOn").addClass("inputOff");
        $("#bairro1mapa").attr("disabled", false);

        $.get(pathROOT + "RestService.aspx", { cidade: $("#cidademapa").val(), cmd: "ObtemBairros" }, function(retorno) {

            $("#bairro1mapa option").remove();

            $("#bairro1mapa").append("<option value=''>1ª opção</option>");

            var partesRetorno = retorno.split('*');

            if (retorno.length > 0) {

                $("#bairro1mapa").removeClass("inputOff");
                $("#bairro1mapa").addClass("inputOn");

                $("#bairro1mapa").append(retorno);

                if ($("#bairro1mapa").val() == "") {
                    $("#bairro1mapa").addClass("erro");
                }
            }
        });
    }
    else {
        $("#bairro1mapa").append("<option value=''>1ª opção</option>");
        $("#bairro1mapa").attr("disabled", true).val('');
        if (!$("#cidademapa").hasClass("erro")) {
            $("#cidademapa").addClass("erro");
        }
    }
}

function selecionaEstadoMapa(estado) {

    $("#cidademapa option").remove();
    $("#cidademapa").append("<option value=''>Carregando</option>");

    $("#bairro1mapa option").remove();
    $("#bairro1mapa").append("<option value=''>1ª opção</option>");
    $("#bairro1mapa").removeClass("inputOn").addClass("inputOff");

    $("#cidademapa").removeClass("inputOn").addClass("inputOff");

    $.get(pathROOT + "RestService.aspx", { uf: estado, cmd: "ObtemCidades" }, function(retorno) {

        $("#cidademapa option").remove();
        $("#cidademapa").append("<option value''>Indiferente</option>");

        if (retorno.length > 0) {

            $("#cidademapa").removeClass("inputOff");
            $("#cidademapa").addClass("inputOn");

            var cidades = retorno.split('#');
            for (var j = 0; j < cidades.length; j++) {
                var cidade = cidades[j].split('|');
                $("#cidademapa").append("<option value='" + cidade[0] + "'>" + cidade[1] + "</option>");
            }

            CidadeMapaChanged();
        }
    });
}

function ObtemFaixaValoresMapa(tipo) {

    $("#faixaValormapa option").remove();

    $.get(pathROOT + "RestService.aspx", { tipo: tipo, cmd: "ObtemFaixaValor" }, function(retorno) {

        $("#faixaValormapa").append("<option value=''>Indiferente</option>");

        var valores = retorno.split('#');
        for (var j = 0; j < valores.length; j++) {
            var valor = valores[j].split('|');
            $("#faixaValormapa").append("<option value='" + valor[0] + "'>" + valor[1] + "</option>");
        }
    });
}

function QtQuartos1MapaChanged(mostra2) {
    if (mostra2) {
        $("#qtQuartos2mapa").removeClass("inputOff").addClass("inputOn");
        $("#qtQuartos2mapa").attr("disabled", "");
    }
    else {
        $("#qtQuartos2mapa").removeClass("inputOn").addClass("inputOff");
        $("#qtQuartos2mapa").attr("disabled", "disabled");
    }
}

function ValidaCampos() {
    var isValido = true;

    if ($("#cidademapa").val() == "") {
        isValido = false;
        if (!$("#cidademapa").hasClass("erro"))
            $("#cidademapa").addClass("erro");
    }
    else {
        $("#cidademapa").removeClass("erro");
    }

    if ($("#bairro1mapa option:selected").val() == "") {
        isValido = false;
        if (!$("#bairro1mapa").hasClass("erro"))
            $("#bairro1mapa").addClass("erro");
    }
    else {
        $("#bairro1mapa").removeClass("erro");
    }

    return isValido;
}