﻿function showFinancial(st) {
    objOpened = document.getElementById("financialOpened");

    if (st == true) {
        updateOpenedFinancialControl();
        objOpened.style.display = "";
        showProperty(false);

        /* IE6 fix*/
        showFinancialSelectFields(false);
        showPropertySelectFields(false);

    } else {
        updateClosedFinancialControl();
        objOpened.style.display = "none";

        /* IE6 fix*/
        showFinancialSelectFields(true);
        showPropertySelectFields(true);
    }

}

function showAnalytics(st) {
    objOpened = document.getElementById("analyticsOpened");

    if (st == true) {
        updateOpenedAnalyticsControl();
        objOpened.style.display = "";
        showProperty(false);

        /* IE6 fix*/
        showFinancialSelectFields(false);
        showPropertySelectFields(false);
    } else {
        updateClosedAnalyticsControl();
        objOpened.style.display = "none";

        /* IE6 fix*/
        showFinancialSelectFields(true);
        showPropertySelectFields(true);
    }
}

function showProperty(st) {
    objOpened = document.getElementById("propertyOpened");

    if (st == true) {
        updateOpenedPropertyControl();
        objOpened.style.display = "";
        showFinancial(false);

        /* IE6 fix*/
        showPropertySelectFields(false);

    } else {
        updateClosedPropertyControl();
        objOpened.style.display = "none";

        /* IE6 fix*/
        showPropertySelectFields(true);
    }
}

/* IE6 fix */
function showFinancialSelectFields(st) {
    var selects = $("#searchFilterClosed").find("select");
    for (var i = 0; i < selects.length; i++) {
        selects[i].style.display = (st == true ? "" : "none");
    }
}

function showPropertySelectFields(st) {
    selects = $("#propertyClosed").find("select");
    for (var i = 0; i < selects.length; i++) {
        selects[i].style.display = (st == true ? "" : "none");
    }
}



function showForeclosure() {
    var st = document.getElementById("filter_ForSale").checked;
    var arr = new Array();
    arr = document.getElementsByName("Foreclosure");

    for (var i = 0; i < arr.length; i++) {
        var obj = document.getElementsByName("Foreclosure").item(i);
        obj.disabled = !st;
    }
}

function forRent_Click() {
    var st = document.getElementById("filter_ForRent").checked;
    if (st) {
        document.getElementById("filter_ForSale").checked = false;
        showForeclosure();
    }
    clearFinancial();

    updatePropertyTypes();
}

function forSale_Click() {
    var st = document.getElementById("filter_ForSale").checked;
    showForeclosure();
    if (st) {
        document.getElementById("filter_ForRent").checked = false;
    }
    clearFinancial();

    updatePropertyTypes();
}

function updatePropertyTypes() {
    var forSale = document.getElementById("filter_ForSale").checked;
    var propertyTypesDropDown = document.getElementsByName("filter.PropertyTypes");

    if (forSale) {
        if (propertyTypesDropDown[0].options[6].selected)
            propertyTypesDropDown[0].options[0].selected = propertyTypesDropDown[1].options[0].selected = true;
        propertyTypesDropDown[0].options[6].disabled = propertyTypesDropDown[1].options[6].disabled = true;
    }
    else {
        propertyTypesDropDown[0].options[6].disabled = propertyTypesDropDown[1].options[6].disabled = false;
    }
}

function clearFinancial() {
    var inputs = $("#financialOpened").find("input");
    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].name.length > 0)
            var elms = document.getElementsByName(inputs[i].name);
        for (var j = 0; j < elms.length; j++)
            elms[j].value = ""
    }
}


function updateOpenedPropertyControl() {
    var propertyTypesControls = document.getElementsByName("filter.PropertyTypes");

    for (i = 0; i < propertyTypesControls[0].options.length; i++) {
        propertyTypesControls[0].options[i].selected = propertyTypesControls[1].options[i].selected;
    }
}

function updateClosedPropertyControl() {
    var propertyTypesControls = document.getElementsByName("filter.PropertyTypes");

    for (i = 0; i < propertyTypesControls[1].options.length; i++) {
        propertyTypesControls[1].options[i].selected = propertyTypesControls[0].options[i].selected;
    }
}

function updateOpenedAnalyticsControl() {
    var measureTypesControls = document.getElementsByName("filter.MeasureType.MeasureId");
    for (i = 0; i < measureTypesControls.length - 1; i++) {
        try {
            measureTypesControls[i].checked = measureTypesControls[measureTypesControls.length - 1].options[i].selected;
        }
        catch (err)
        { }
    }
}

function updateClosedAnalyticsControl() {
    var measureTypesControls = document.getElementsByName("filter.MeasureType.MeasureId");
    for (i = 0; i < measureTypesControls.length - 1; i++) {
        try {
            measureTypesControls[measureTypesControls.length - 1].options[i].selected = measureTypesControls[i].checked;
        }
        catch (err)
        { }
    }
}

function updateOpenedFinancialControl() {
    var minPriceElements = document.getElementsByName("filter.MinAskingPriceDiscount");
    minPriceElements[0].value = minPriceElements[1].value;
    var maxPriceElements = document.getElementsByName("filter.MaxAskingPriceDiscount");
    maxPriceElements[0].value = maxPriceElements[1].value;

    var minPriceElements = document.getElementsByName("filter.MinCCR_BT");
    minPriceElements[0].value = minPriceElements[1].value;
    var maxPriceElements = document.getElementsByName("filter.MaxCCR_BT");
    maxPriceElements[0].value = maxPriceElements[1].value;
}

function updateClosedFinancialControl() {
    var minPriceElements = document.getElementsByName("filter.MinAskingPriceDiscount");
    minPriceElements[1].value = minPriceElements[0].value;
    var maxPriceElements = document.getElementsByName("filter.MaxAskingPriceDiscount");
    maxPriceElements[1].value = maxPriceElements[0].value;

    var minPriceElements = document.getElementsByName("filter.MinCCR_BT");
    minPriceElements[1].value = minPriceElements[0].value;
    var maxPriceElements = document.getElementsByName("filter.MaxCCR_BT");
    maxPriceElements[1].value = maxPriceElements[0].value;
}

function updateFields() {
    updateOpenedFinancialControl();
    updateOpenedAnalyticsControl();
    updateOpenedPropertyControl();
}

function showGeocodeError(show) {
    var lblGeocodeError = document.getElementById("lblGeocodeError");
    if (show)
        lblGeocodeError.style.display = "block";
    else
        lblGeocodeError.style.display = "none";
}      