// JavaScript Document


function emptySelect (selectObj) {

	for (var i=0; i < selectObj.options.length; i++) {

			selectObj.options[i] = null;

	}

	selectObj.options.length = 0;

}



function populateSelect (selectObj, optionsArray) {

	var start = selectObj.length;

	for (var i = start; i < optionsArray.length + start; i++) {

		selectObj.options[i] = optionsArray[i-start];	

	}

}



function makeSelectedByValue (selectObj, optionValue) {

	for (var i=0; i < selectObj.options.length; i++) {

			if (selectObj.options[i].value == optionValue) selectObj.options[i].selected = true;

	}

}



function showCitiesByRegions (regionSID, citySID, addOther) {

	var selectObj, regionID, optionsArray, selected;

	if (!(selectObj = document.getElementById(regionSID))) return false;

	regionID = parseInt(selectObj.options[selectObj.selectedIndex].value);

	if (!(selectObj = document.getElementById(citySID))) return false;

	emptySelect (selectObj);

	//if (!regionID) return false; 

	if (regionID) {

		if (typeof(Cities[regionID]) != 'undefined') {

			optionsArray = new Array();

			optionsArray[0] = new Option ('-', '0');

			populateSelect (selectObj, optionsArray);

			optionsArray = Cities[regionID];

		} else {

			optionsArray = new Array();

			if (regionID != -1) optionsArray[0] = new Option ('-', '0');

		}

	}

	else 

	{

		optionsArray = new Array();

		optionsArray[0] = new Option ('Place', '0');

		populateSelect (selectObj, optionsArray);

		optionsArray = new Array();

		var tmpArray1 = new Array();

		var tmpArray2 = new Array();

		var j=0;

		for (key in Cities) 

		{

			//alert(key);

			//continue;

			for (var i=0; i < Cities[key].length; i++) 

			{

				tmpArray1[Cities[key][i].text] = Cities[key][i].value;

				tmpArray2[j] = Cities[key][i].text;

				j++;

			}

		}

		tmpArray2.sort();

		var i=0;

		for (myKey in tmpArray2) 

		{

			optionsArray[i] = new Option (tmpArray2[myKey], tmpArray1[tmpArray2[myKey]]);

			i++;

		}

	}

	

	if (addOther) optionsArray[optionsArray.length] = new Option ('other', "-1");

	

	populateSelect (selectObj, optionsArray);

	makeSelectedByValue (selectObj, defaultCityID);

}



function setPriceRanges (categorySelectID) {
	var selectObj, inputObj, categoryID;
	if (!(selectObj = document.getElementById(categorySelectID))) return false;
	
	categoryID = selectObj.value;
	if (!categoryID) return false;
	inputObj = document.getElementById("min_price");
	inputObj.value = priceTagsMin[categoryID];
	inputObj = document.getElementById("max_price");
	inputObj.value = priceTagsMax[categoryID];
}



function _setPriceRanges (categorySelectID, priceSelectID) {
	var selectObj, categoryID;
	if (!(selectObj = document.getElementById(categorySelectID))) return false;
	categoryID = selectObj.value;
	if (!(selectObj = document.getElementById(priceSelectID))) return false;
	emptySelect (selectObj);
	populateSelect (selectObj, priceRanges[categoryID]);
}