﻿/// <reference path="fw/mootools.js" />

function Init() {

}


//estate type

function TypeChanged(obj) {
    var estateTypeId = 0;
    estateTypeId = obj.value.toInt();
    if (OfferSearch != null && OfferSearch.LoadRegionsDD != null) {
        ddRegion.setProperty('disabled', 'disabled');
        OfferSearch.LoadRegionsDD(estateTypeId, TypeChanged_callback, obj);
    }
}

function TypeChanged_callback(res, args) {
    if (res != null && res.value != null) {
    
        var obj = args.context[3][1];
        var ddRegionOut = $('ddRegionOut');

        if ($defined(ddRegion) && $defined(ddRegionOut)) {
            
            ddRegion.setProperty('html', '');
            var resArray = res.value;
            
            for (var i = 0; i < resArray.keys.length; i++) {
                var optelm = new Element('option', { 'value': resArray.keys[i], 'text': resArray.values[i] });
                if (ddRegion.value == resArray.values[i]) {
                    optelm.setProperty('selected', 'selected');
                }
                ddRegion.adopt(optelm);
            }

            ddRegionOut.erase();
            ddRegionOut.adopt(ddRegion);
            ddRegion.removeProperty('disabled');
            
            RegionChanged(ddRegion);            
        }
    }
}


// region

function RegionChanged(obj) {
    var regionId = 0;
    var s = obj.value;
    regionId = obj.value.toInt();
    if (OfferSearch != null && OfferSearch.LoadCitiesDD != null) {
        cityDD.setProperty('disabled', 'disabled');
        
        var estateType = 0;
        if ($defined(ddType)) {
            estateType = ddType.value.toInt();
        }

        OfferSearch.LoadCitiesDD(regionId, estateType, RegionChanged_callback, arguments[1]);
    }
}

function RegionChanged_callback(res, args) {
    var a = arguments;
    if (res != null && res.value != null) {
        var obj = args.context[3][1];
        var ddCitiesOut = $('ddCitiesOut');
        if ($defined(cityDD) && $defined(ddCitiesOut)) {
            cityDD.setProperty('html', '');
            var resArray = res.value;
            for (var i = 0; i < resArray.length; i++) {
                cityDD.adopt(new Element('option', { 'text': res.value[i] }));
            }

            ddCitiesOut.erase();
            ddCitiesOut.adopt(cityDD);

            cityDD.removeProperty('disabled');
        }
    }
}