function MM_validateForm() {
    //  ---------------------------------------
    if (document.getElementById) {
        var i, p, q, nm, test, num, min, max, errors = '', args = MM_validateForm.arguments;
        firstField = new Array();
        for (i = 0; i < (args.length - 2); i += 4) {
            test = args[i + 2];
            label = args[i + 3];
            val = document.getElementById(args[i]);
            if (val) {
                nm = val.name;
                elInput = val;
                elInput.className = "";
                if ((val = val.value) != "") {
                    if (test.indexOf('isEmail') != -1) {
                        p = val.indexOf('@');
                        if (p < 1 || p == (val.length - 1)) {
                            errors += '- ' + label + ' inválido.\n';
                            elInput.className = "campoErrado";
                            firstField.push(elInput);
                        }
                    } else if (test != 'R') {
                        num = parseFloat(val);
                        if (isNaN(val)) {
                            errors += '- ' + label + ' deve ser um número válido.\n';
                            elInput.className = "campoErrado";
                            firstField.push(elInput);
                        }
                        if (test.indexOf('inRange') != -1) {
                            p = test.indexOf(':');
                            min = test.substring(8, p);
                            max = test.substring(p + 1);
                            if (num < min || max < num) {
                                errors += '- ' + label + ' deve ser um número entre ' + min + ' e ' + max + '.\n';
                                elInput.className = "campoErrado";
                                firstField.push(elInput);
                            }
                        }
                    }
                } else if (test.charAt(0) == 'R') {
                    errors += '- ' + label + ' é obrigatório.\n';
                    elInput.className = "campoErrado";
                    firstField.push(elInput);
                }
            }
        }
        if (errors) {
            alert('Os seguintes erros ocorreram:\n' + errors);
            firstField[0].focus();
        }
        document.MM_returnValue = (errors == '');
    }
}

$(document).ready(function () {
    //funcoesGalerias();
    $(".metro").hide();
    $('#txtAreaTot').attr('name', 'txtAreaTotal');
    $('#idBairros').attr('name', 'bairros');
    $('#txtAreaTot').attr('name', 'areaUtil');
    $('#ddlDorms option[value|=""]').text("Dormitórios");
    PopulaCampos();
    //QUER COMPRAR E QUERO ALUGAR
    $("#ddlPretensao").change(function () {
        if ($("#ddlPretensao").val() == "1") {
            geraMinVenda();
            geraMaxVenda();
        }
        else {
            geraMinLocacao();
            geraMaxLocacao();
        }
        PopulaFinalidade();
    }).change();
    geraFaseObra();
    //Carregar dropdown ddlTipo
    PopulaFinalidade();
    $("#ddlzona").change(function () {
        $.ajax({
            url: "jsonBairroZona.aspx",
            data: "cod_cid=" + $("#cidade").val() + "&cod_zona=" + $('#ddlzona').val(),
            dataType: "json",
            //beforeSend: function () { $("#ddlzona").empty().append("<option value='0'>Carregando...</option>") },
            success: function (json) {
                $('#divbairro').html(bairrosEmChecks(json));
                $('#divbairro').find('input').click(function () {
                    $(this).parent().attr('class', ($(this).attr('checked') ? 'bairroSelecionado' : ''));

                    if ($(this).attr('id') == 'todos') {
                        $('#divbairro').find('input[id!="todos"]').attr('checked', false).parent().attr('class', '');
                    } else {
                        $('#divbairro').find('#todos').attr('checked', false).parent().attr('class', '');
                    }
                });
            }
        });
    });
    $("#txtAreaTot").attr('onblur', 'if (this.value=="") { this.value="Área Privativa";}');
    $("#txtAreaTot").attr('onfocus', 'if (this.value == "Área Privativa") { this.value = ""; }');
    $("#txtAreaTot").attr('value', 'Área Privativa');
    $("#lblAreaTot").html('Área Privativa:');



    ///Metro
    $("#ddlMetro").click(function () {
        $("#lnkMetro").attr("href", "metroListagem.aspx?idCidade=" + $("#cidade").val() + "&tipo=" + $("#ddltipo").val() + "&pretensao=" + $("#ddlPretensao").val());
        $("#lnkMetro").trigger("click");
    });
    $("#ddlMetro").empty().append("<option value='0'>Metrô</option>");

    BairroHTML = "";


    $("#ddltipo").change(function () {
        cidade();
        var valor = $(this).val();
        if (valor == '1' || valor == '24' || valor == '25' || valor == '26' || valor == '27')
            $('#ddlDorms, #ddlSuites').attr('disabled', false);
        else
            $('#ddlDorms, #ddlSuites').attr('disabled', true);
    }).change();

    $("#ddlFinalidade").change(function () {
        CarregarTipo();
    });

    function zonasEmSelect(json) {
        ZonaHTML = "";
        ZonaHTML += '<select id="ddlzona" name="ddlzona">';
        ZonaHTML += '<option selected="selected" value="">Todos as zonas</option>';
        for (i = 0; i < json.zonas.length; i++) {
            ZonaHTML += '<option value="' + json.zonas[i].id + '">';
            ZonaHTML += json.zonas[i].zona;
            ZonaHTML += '</option>';
        }
        ZonaHTML += '</select>';
        return (ZonaHTML);
    }

    function bairrosEmChecks(json) {
        BairroHTML = "";
        BairroHTML += '<div class="bairroSelecionado">';
        BairroHTML += '<input type="checkbox" checked="checked" id="todos" value="" name="bairros"/>';
        BairroHTML += '<label for="todos"> Todos os bairros</label>';
        BairroHTML += '</div>';
        for (i = 0; i < json.bairros.length; i++) {
            BairroHTML += '<div class="">';
            BairroHTML += '<input type="checkbox" id="' + json.bairros[i].bairro + '" value="' + json.bairros[i].id + '" name="bairros"/>';
            BairroHTML += '<label for="' + json.bairros[i].bairro + '"> ' + json.bairros[i].bairro + '</label>';
            BairroHTML += '</div>';
        }
        return (BairroHTML);
    }

    function bairrosEmSelect(json) {
        BairroHTML = "";
        BairroHTML += '<select id="bairro" name="bairro">';
        BairroHTML += '<option id="todos" selected="selected" value="">Todos os Bairros</option>';
        for (i = 0; i < json.bairros.length; i++) {
            BairroHTML += '<option value="' + json.bairros[i].id + '">';
            BairroHTML += json.bairros[i].bairro;
            BairroHTML += '</option>';
        }
        BairroHTML += '</select>';
        return (BairroHTML);
    }

    function todosBairros() {
        if ($("#divbairro").length > 0) {
            $("#todos").click(function () {
                if (this.checked) {
                    $("#divbairro input").not("#todos").attr("checked", false);
                } else {
                    $("#divbairro input").not("#todos").attr("checked", false);
                }
                pintaBairros();
            });
            $("#divbairro input").not("#todos").click(function () {
                $("#todos").attr("checked", false);
                pintaBairros();
            });
            pintaBairros();
        }
    }

    function pintaBairros() {
        if ($("#divbairro").length > 0) {
            $("#divbairro input").each(function () {
                if (this.checked) {
                    $(this).parent().attr("class", "bairroSelecionado");
                } else {
                    $(this).parent().removeAttr("class");
                }
            });
        }
    }

    function geraFaseObra() {
        $('#ddlFaseObra').attr('name', 'ddlfaseConstrucao');
        $('#ddlFaseObra').html("<option value='0'>Fase da Obra</option><option value='1'>Pronto</option><option value='2'>Em construção</option><option value='3'>Não iniciado</option>");
    }
    function geraMinLocacao() {
        $("#ddlValorMin").html("<option value='0'>Valor Mínimo</option><option value='1.000'>R$ 1.000,00</option><option value='2.000'>R$ 2.000,00</option><option value='3.000'>R$ 3.000,00</option><option value='5.000'>R$ 5.000,00</option><option value='10.000'>R$ 10.000,00</option><option value='15.000'>R$ 15.000,00</option>");
    }

    function geraMaxLocacao() {
        $("#ddlValorMax").html("<option value='9999.00'>Valor Máximo</option><option value='1.000'>R$ 1.000,00</option><option value='2.000'>R$ 2.000,00</option><option value='3.000'>R$ 3.000,00</option><option value='5.000'>R$ 5.000,00</option><option value='10.000'>R$ 10.000,00</option><option value='15.000'>R$ 15.000,00</option><option value='999999.000'>Acima de R$ 15.000,00</option>");
    }

    function geraMinVenda() {
        $("#ddlValorMin").html("<option value='0'>Valor Mínimo</option><option value='50.000'>R$ 50.000,00</option><option value='100.000'>R$ 100.000,00</option><option value='250.000'>R$ 250.000,00</option><option value='500.000'>R$ 500.000,00</option><option value='750.000'>R$ 750.000,00</option><option value='1.000.000'>R$ 1.000.000,00</option>");
    }

    function geraMaxVenda() {
        $("#ddlValorMax").html("<option value='999.999.999'>Valor Máximo</option><option value='50.000'>R$ 50.000,00</option><option value='100.000'>R$ 100.000,00</option><option value='250.000'>R$ 250.000,00</option><option value='500.000'>R$ 500.000,00</option><option value='750.000'>R$ 750.000,00</option><option value='1.000.000'>R$ 1.000.000,00</option><option value='999.999.999.999'>Acima de R$ 1.000.000,00</option>");
    }

    $('#pauseButton').click(function () {
        $('#slideshowimovel').cycle('pause');
        return false;
    });

    $('#resumeButton').click(function () {
        $('#slideshowimovel').cycle('resume');
        return false;
    });

    $(".boxSlideShow").each(function () {
        $(this).find("a").slideshow();
    });

    $("#ddlBairro").mouseover(function () {
        $("#lnkBairro").attr("href", "bairroListagem.aspx?idCidade=" + $("#cidade").val() + "&zona=" + $("#ddlzona").val() + "&flFinalidade=" + $('#ddlFinalidade').val());
    })

    var pathname = window.location.href;

    if (pathname.indexOf('?') != -1) {
        var parametros = pathname.split('?');
        valoresEmSelect(parametros[1]);
    }

    function valoresEmSelect(parametros) {
        if (parametros.indexOf('&') != -1) {
            var parametrosList = parametros.split('&');
            for (var i = 0; i < parametrosList.length; i++) {
                var parametro = parametrosList[i].split('=');
                if (parametro[0] == "cidade") {
                    if (parametro[1] == "0") {
                        $("#" + parametro[0]).append("<option value='0' selected='selected' >Cidade</option>");
                    }
                    else {
                        $("#" + parametro[0]).val(parametro[1]);
                    }

                }
            }
        }
    }

    $("#buscaMapa").click(function () {
        $("#frmBusca").attr("action", "busca-mapa.aspx");
        $("#btnEnviar").attr("class", "btnEnviarMapa");
        $(".bairro").show();
        $(".metro").hide();
        $('.areaTotal').show();
    });

    $("#busca").click(function () {
        $("#frmBusca").attr("action", "lancamentos.aspx");
        $("#btnEnviar").attr("class", "btnEnviar");
        $(".bairro").show();
        $(".metro").hide();
        $('.areaTotal').show();
    });

    $("#buscaMetro").click(function () {
        cidades('85');
        $(".bairro").hide();
        $('.areaTotal').hide();
        $('#ddlFinalidade').attr('disabled', '').val('R');
        CarregarTipos('1');
        $('#ddltipo').attr('disabled', '');
        $(".metro").show();
        $('#ddlMetro').attr('disabled', '');
        $("#frmBusca").attr("action", "lancamentos.aspx");
        $("#btnEnviar").attr("class", "btnEnviarMapa");
        $('#cidade').attr('disabled', '').val('85');
    });

    $("#cidade").change(function () {
        var cidade = $(this).val();
        if (cidade == "0") {
            $("#ddlMetro, #ddlBairro, #ddlzona").attr("disabled", true);
        } else {
            $("#ddlBairro").attr("disabled", false);
            if (cidade == "85") {
                $("#ddlMetro").attr("disabled", false);
                zona();
            }
        }
    });
});

//Carregar o dropdow ddlTipo
function CarregarTipo() {
    CarregarTipos('0');
}
function CarregarTipos(valor) {
    $.ajax({
        url: "jsonTipo.aspx",
        beforeSend: function () { $("#ddltipo").empty().append("<option value='0'>Carregando...</option>") },
        data: "cod_pret=" + $("#ddlPretensao").val(),
        dataType: "json",
        success: function (json) {
            $("#ddltipo").empty();
            if (json.tipos.length > 0) {
                $("#ddltipo").append("<option value='0' selected='selected' >Tipo</option>");
                for (i = 0; i < json.tipos.length; i++)
                    $("#ddltipo").append("<option value=" + json.tipos[i].id + ">" + json.tipos[i].tipo + "</option>");

                //$("#ddltipo, #ddlValorMax, #cidade, #ddlzona, #txRegioes").attr("disabled",false);
                $("#ddltipo").attr("disabled", false);
                if (valor != '0') {
                    $("#ddltipo").val(valor);
                }

            } else {
                $("#ddltipo").append("<option value='0' selected='selected' >Tipo</option>");
                $("#ddltipo").attr("disabled", true);
            }
            cidades('85');
            $('#ddlDorms').attr('disabled', '');
        },
        error: function (json) {
            var e = json;
        }
    });

}
function regrasExibicao(campo) {

}
//função de bairros por listagem em thickbox
function bairroThickbox(idSelectBairro) {
    $("#" + idSelectBairro).after("<a href=\"bairroListagem.aspx?idCidade=0\"id=\"lnkBairro\" class='thickbox' title=\"Bairros\"></a>");
    $("#" + idSelectBairro).focus(function () {
        $("#lnkBairro").trigger("click");
        $(this).blur();
        return (false);
    })
}

function finalidadesEmSelect(json) {
    $("#ddlFinalidade").attr('name', 'finalidade');
    $("#ddlFinalidade").empty();
    if (json.finalidades.length > 0) {
        var text;
        $("#ddlFinalidade").append("<option value='' selected='selected' >Finalidades</option>");
        for (i = 0; i < json.finalidades.length; i++) {
            if (json.finalidades[i].finalidade == "A")
                text = "Finalidade";
            else if (json.finalidades[i].finalidade == "R")
                text = "Residencial";
            else
                text = "Comercial";

            $("#ddlFinalidade").append("<option value=" + json.finalidades[i].finalidade + ">" + text + "</option>")
        }
        $("#ddlFinalidade").attr("disabled", false);
    } else {
        $("#ddlFinalidade").append("<option value='0' selected='selected' >Finalidade</option>");
        $("#ddlFinalidade").attr("disabled", true);
    }
}
function PopulaCampos() {
    $("#ddlPretensao").empty();
    $("#ddlPretensao").append("<option value='1' selected='selected' >Comprar</option>");
    $("#ddlPretensao").append("<option value='2' >Alugar</option>");

    $("#ddltipo, #cidade, #ddlzona, #ddlBairro, #ddlMetro, #ddlDorms, #ddlSuites").attr("disabled", true);
}
function PopulaFinalidade() {
    $.ajax({
        url: "jsonFinalidadeEmpreendimento.aspx",
        beforeSend: function () { $("#ddlFinalidade").empty().append("<option value='0'>Carregando...</option>").attr("disabled", true) },
        data: "cod_pretensao=" + $("#ddlPretensao").val(),
        dataType: "json",
        success: function (json) {
            finalidadesEmSelect(json);
            $('#ddlFinalidade').val('R');
            CarregarTipos('1');
        },
        error: function () {

        }
    });
}

function cidade() {
    cidades('0');
}

function cidades(valor) {
    $.ajax({
        url: "jsonCidade.aspx",
        data: "ddlPretensao=" + $("#ddlPretensao").val() + "&" + "ddlFinalidade=" + $("#ddlFinalidade").val() + "&" + "ddltipo=" + $("#ddltipo").val() + "&" + "valorInformado=" + $("#ddlValorMax").val() + "&" + "ddlEstado=1",
        dataType: "json",
        beforeSend: function () { $("#cidade").empty().append("<option value='0'>Carregando...</option>") },
        success: function (json) {
            if (json.cidades.length) {
                $("#cidade").empty();
                $("#cidade").append("<option selected='selected' value='0'>Cidade</option>");
                for (i = 0; i < json.cidades.length; i++)
                    $("#cidade").append("<option value=" + json.cidades[i].id + ">" + json.cidades[i].cidade + "</option>");

                $("#cidade").attr("disabled", false);
            }
            else {
                $("#cidade").empty().append("<option value='0'>Cidade</option>");
                $("#cidade").attr("disabled", true);
            }

            if (valor != '0') {
                $("#cidade").val(valor);
            }

            zona();
        },
        error: function (error) {
            $("#cidade").empty().append("<option value='0'>Cidade</option>");
        }
    })
}

function zona() {
    $.ajax({
        url: "jsonZonas.aspx",
        data: "cod_cid=" + $("#cidade").val(),
        dataType: "json",
        beforeSend: function () { $("#ddlzona").empty().append("<option value='0'>Carregando...</option>") },
        success: function (json) {
            if (json == "error") {
                $("#ddlzona").attr("disabled", "disabled");
                $("#ddlzona").empty();
                $("#ddlzona").append("<option selected='selected' value='0' >Região</option>");
            }
            else {
                $("#ddlzona").empty();
                $("#ddlzona").attr("disabled", false);
                $("#ddlzona").append("<option selected='selected' value='0'>Região</option>");
                for (i = 0; i < json.zonas.length; i++) {
                    $("#ddlzona").append("<option value=" + json.zonas[i].id + ">" + json.zonas[i].zona + "</option>");
                }
            }
        },
        error: function (error) {
            $("#ddlzona").attr("disabled", "disabled");
            $("#ddlzona").empty();
            $("#ddlzona").append("<option selected='selected' value='0' >Região</option>");
        }
    });
}

function funcoesGalerias() {
    if ($('#perspectiva').find('li').length < 1)
        $('.galeria_fotos').hide();
    else {
        $("#perspectiva").carousel({
            itemsPerPage: 4,
            itemsPerTransition: 1,
            easing: 'linear',
            noOfRows: 1
        });
        $("#slideshowimovel").cycle({
            speed: 800,
            timeout: 4000,
            pager: '#perspectiva',
            pagerAnchorBuilder: function (idx, slide) {
                // return selector string for existing anchor 
                return '#perspectiva li:eq(' + idx + ') img';
            },
            after: function () {
                $("#slideshowimovel").parent().find('#legenda').html($(this).attr('title'));
            }
        });
        $('.albumimovel #perspectiva').before('<div id="legenda"></div>');
        $("#slideshowimovel a").slideshow(); 
    }
    //Plantas
    $('#plantasFotos').find('#perspectiva').eq(0).attr('id', 'perspectivaPlanta');
    if ($('#perspectivaPlanta').find('li').length < 1) {
        $('#abas_empreendimento').find('a[title|="Plantas"]').parent().remove();
        $('#plantas').remove();
    }
    else {
        $('#perspectivaPlanta').carousel({
            itemsPerPage: 4,
            itemsPerTransition: 1,
            easing: 'linear',
            noOfRows: 1
        });
        $('#plantasFotos').find('#slideshowimovel').eq(0).attr('id', 'slideShowPlanta');
        $('#slideShowPlanta').cycle({
            timeout: 6000,
            speed: 1000,
            fastOnEvent: 1,
            after: function () {
                $(this).parent().find('#legenda').html($(this).attr('title'));
            },
            pager: '#perspectiva',
            pagerAnchorBuilder: function (idx, slide) {
                // return selector string for existing anchor 
                return '#perspectivaPlanta li:eq(' + idx + ') img';
            }
        });
        $('#perspectivaPlanta').before('<div id="legenda"></div>');
        $("#slideShowPlanta a").slideshow(); 
    }

    //------------------------------------------Decorado
    $('#decoradoFotos').find('#perspectiva').eq(0).attr('id', 'perspectivaDecorado');
    if ($('#perspectivaDecorado').find('li').length < 1) {
        $('#abas_empreendimento').find('a[title|="Decorado"]').parent().remove();
        $('#decorado').remove();
    }
    else {
        $('#perspectivaDecorado').carousel({
            itemsPerPage: 4,
            itemsPerTransition: 1,
            easing: 'linear',
            noOfRows: 1
        });
        $('#decoradoFotos').find('#slideshowimovel').eq(0).attr('id', 'slideShowDecorado');
        $('#slideShowDecorado').cycle({
            timeout: 6000,
            speed: 1000,
            fastOnEvent: 1,
            after: function () {
                $(this).parent().find('#legenda').html($(this).attr('title'));
            },
            pager: '#perspectiva',
            pagerAnchorBuilder: function (idx, slide) {
                // return selector string for existing anchor 
                return '#perspectivaDecorado li:eq(' + idx + ') img';
            }
        });
        $('#perspectivaDecorado').before('<div id="legenda"></div>');
        $("#slideShowDecorado a").slideshow(); 
    }
}
