var fsElementDisplayed = null;
var rozpetiCen = new Array();
/*
	definice rozmezi cen
		- prvni index je typ nabidky
		- druhy index je id ceny
		- pole pod druhym indexem jsou jednotliva rozmezi cen (pro atribut "value" tagu "option" se jen nahradi znak + za -)
*/
//long term flat cenove rozpeti
rozpetiCen['price_from_to_longflat'] = new Array();
rozpetiCen['price_from_to_longflat'][1] = new Array();		//CZK
rozpetiCen['price_from_to_longflat'][1][0] = '0-13000';
rozpetiCen['price_from_to_longflat'][1][1] = '13000-20000';
rozpetiCen['price_from_to_longflat'][1][2] = '20000-30000';
rozpetiCen['price_from_to_longflat'][1][3] = '30000+';
rozpetiCen['price_from_to_longflat'][2] = new Array();		//EUR
rozpetiCen['price_from_to_longflat'][2][0] = '0-500'
rozpetiCen['price_from_to_longflat'][2][1] = '500-700';
rozpetiCen['price_from_to_longflat'][2][2] = '700-1000';
rozpetiCen['price_from_to_longflat'][2][3] = '1000+';
rozpetiCen['price_from_to_longflat'][3] = new Array();		//USD
rozpetiCen['price_from_to_longflat'][3][0] = '0-700'
rozpetiCen['price_from_to_longflat'][3][1] = '700-1000';
rozpetiCen['price_from_to_longflat'][3][2] = '1000-1500';
rozpetiCen['price_from_to_longflat'][3][3] = '1500+';
rozpetiCen['price_from_to_longflat'][4] = new Array();		//GBP
rozpetiCen['price_from_to_longflat'][4][0] = '0-350'
rozpetiCen['price_from_to_longflat'][4][1] = '350-500';
rozpetiCen['price_from_to_longflat'][4][2] = '500-700';
rozpetiCen['price_from_to_longflat'][4][3] = '700+';

//long term house cenove rozpeti
rozpetiCen['price_from_to_longhouse'] = new Array();
rozpetiCen['price_from_to_longhouse'][1] = new Array();		//CZK
rozpetiCen['price_from_to_longhouse'][1][0] = '0-30000';
rozpetiCen['price_from_to_longhouse'][1][1] = '30000-50000';
rozpetiCen['price_from_to_longhouse'][1][2] = '50000+';
rozpetiCen['price_from_to_longhouse'][2] = new Array();		//EUR
rozpetiCen['price_from_to_longhouse'][2][0] = '0-1000'
rozpetiCen['price_from_to_longhouse'][2][1] = '1000-1700';
rozpetiCen['price_from_to_longhouse'][2][2] = '1700+';
rozpetiCen['price_from_to_longhouse'][3] = new Array();		//USD
rozpetiCen['price_from_to_longhouse'][3][0] = '0-1500'
rozpetiCen['price_from_to_longhouse'][3][1] = '1500-2500';
rozpetiCen['price_from_to_longhouse'][3][2] = '2500+';
rozpetiCen['price_from_to_longhouse'][4] = new Array();		//GBP
rozpetiCen['price_from_to_longhouse'][4][0] = '0-700'
rozpetiCen['price_from_to_longhouse'][4][1] = '700-1200';
rozpetiCen['price_from_to_longhouse'][4][2] = '1200+';

//sales cenove rozpeti
rozpetiCen['price_from_to_sales'] = new Array();
rozpetiCen['price_from_to_sales'][1] = new Array();		//CZK
rozpetiCen['price_from_to_sales'][1][0] = '0-4mil';
rozpetiCen['price_from_to_sales'][1][1] = '4mil-7mil';
rozpetiCen['price_from_to_sales'][1][2] = '7mil+';
rozpetiCen['price_from_to_sales'][2] = new Array();		//EUR
rozpetiCen['price_from_to_sales'][2][0] = '0-150000'
rozpetiCen['price_from_to_sales'][2][1] = '150000-250000';
rozpetiCen['price_from_to_sales'][2][2] = '250000+';
rozpetiCen['price_from_to_sales'][3] = new Array();		//USD
rozpetiCen['price_from_to_sales'][3][0] = '0-200000'
rozpetiCen['price_from_to_sales'][3][1] = '200000-350000';
rozpetiCen['price_from_to_sales'][3][2] = '350000+';
rozpetiCen['price_from_to_sales'][4] = new Array();		//GBP
rozpetiCen['price_from_to_sales'][4][0] = '0-100000'
rozpetiCen['price_from_to_sales'][4][1] = '100000-170000';
rozpetiCen['price_from_to_sales'][4][2] = '170000+';

function setPricesOptions() {
	if (this.selectedIndex>=0 && this.options[this.selectedIndex].value!='') {
		//vezmeme si jen potrebnou cast pole s rozpetim cen
		var cenyProVybranouMenu = rozpetiCen[this.relatedElement.id][this.options[this.selectedIndex].value];
		//odstranime z selectboxu na vyber ceny vsechny tagy s cenovym rozpetim (1 option je "Nevybrano")
		this.relatedElement.options.length=1;
		for (var i=0; i<cenyProVybranouMenu.length; i++) {
			var newOptElement = new Option(cenyProVybranouMenu[i],cenyProVybranouMenu[i].replace('\+','-'));
			if (vybranaCenaProFastSearch && vybranaCenaProFastSearch!='' && newOptElement.value == vybranaCenaProFastSearch)
				newOptElement.selected=true;
			this.relatedElement.options[this.relatedElement.options.length] = newOptElement;
		}
	}
}

function showHideFastSearch() {
	if (fsElementDisplayed) {
		fsElementDisplayed.style.display='none';
		fsElementDisplayed=null;
	}
	
	if (this.value.indexOf('short')===0 && this.value!='short_office') {
		fsElementDisplayed=document.getElementById('fastSearchShort');
		fsElementDisplayed.style.display='block';
	}
	else if (this.value=='mid_flat') {
		fsElementDisplayed=document.getElementById('fastSearchMidTerm');
		fsElementDisplayed.style.display='block';
	}
	else if (this.value=='long_flat') {
		fsElementDisplayed=document.getElementById('fastSearchLongFlat');
		fsElementDisplayed.style.display='block';
	}
	else if (this.value=='long_house') {
		fsElementDisplayed=document.getElementById('fastSearchLongHouse');
		fsElementDisplayed.style.display='block';
	}
	else if (this.value.indexOf('com_')===0 || this.value=='short_office') {
		fsElementDisplayed=document.getElementById('fastSearchCommercials');
		fsElementDisplayed.style.display='block';
	}
	else if (this.value.indexOf('sales_')===0) {
		fsElementDisplayed=document.getElementById('fastSearchSales');
		fsElementDisplayed.style.display='block';
	}
}

function removeNaNValue() {
	var hodnota = parseInt(this.value.replace(' ',''));
	this.value = (!isNaN(hodnota)?hodnota:'');
}

function checkFormIDSearch() {
	var regInt	= new RegExp('^[0-9]+$');
	
	var errText ='';
	if(!regInt.test(document.getElementById('offer_id').value)){
		errText += jsMsgIDSearch;
	}
	if (errText=='') return true;
	else {
		alert(errText);
		return false;
	}

}

function checkAndRemoveFastSearch() {
	if (this.type.value=='') return false;

	var fsShortElement = document.getElementById('fastSearchShort');
	var fsMidTermElement = document.getElementById('fastSearchMidTerm');
	var fsLongFlatElement = document.getElementById('fastSearchLongFlat');
	var fsLongHouseElement = document.getElementById('fastSearchLongHouse');
	var fsCommercialsElement = document.getElementById('fastSearchCommercials');
	var fsSalesElement = document.getElementById('fastSearchSales');

	if (fsShortElement.style.display=='none') fsShortElement.parentNode.removeChild(fsShortElement);
	if (fsMidTermElement.style.display=='none') fsMidTermElement.parentNode.removeChild(fsMidTermElement);
	if (fsLongFlatElement.style.display=='none') fsLongFlatElement.parentNode.removeChild(fsLongFlatElement);
	if (fsLongHouseElement.style.display=='none') fsLongHouseElement.parentNode.removeChild(fsLongHouseElement);
	if (fsCommercialsElement.style.display=='none') fsCommercialsElement.parentNode.removeChild(fsCommercialsElement);
	if (fsSalesElement.style.display=='none') fsSalesElement.parentNode.removeChild(fsSalesElement);
	return true;
}

function initSearchBoxes () {
	/* NASTAVENI PREPINANI CENOVEHO ROZPETI PODLE MENY */
	var cenaSelectEl = document.getElementById('price_from_to_longflat');
	var menaSelectEl = document.getElementById('currency_longflat');
	if (cenaSelectEl && menaSelectEl) {
		menaSelectEl.relatedElement = cenaSelectEl;
		menaSelectEl.onchange = setPricesOptions;
		//nastavime cenove rozpeti podle defaultne vybrane meny
		menaSelectEl.onchange();
	}
	var cenaSelectEl = document.getElementById('price_from_to_longhouse');
	var menaSelectEl = document.getElementById('currency_longhouse');
	if (cenaSelectEl && menaSelectEl) {
		menaSelectEl.relatedElement = cenaSelectEl;
		menaSelectEl.onchange = setPricesOptions;
		//nastavime cenove rozpeti podle defaultne vybrane meny
		menaSelectEl.onchange();
	}
	var cenaSelectEl = document.getElementById('price_from_to_sales');
	var menaSelectEl = document.getElementById('currency_sales');
	if (cenaSelectEl && menaSelectEl) {
		menaSelectEl.relatedElement = cenaSelectEl;
		menaSelectEl.onchange = setPricesOptions;
		//nastavime cenove rozpeti podle defaultne vybrane meny
		menaSelectEl.onchange();
	}
	
	/* NASTAVENI DISPLAY=NONE PRES JAVASCRIPT - pokud je nastaveno CSS tridou, v JS se to neprojevi - pripadne nastaveni promenne obsahujici zobrazenou cast formulare */
	if (document.getElementById('fastSearchShort').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchShort').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchShort');
	if (document.getElementById('fastSearchMidTerm').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchMidTerm').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchMidTerm');
	if (document.getElementById('fastSearchLongFlat').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchLongFlat').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchLongFlat');
	if (document.getElementById('fastSearchLongHouse').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchLongHouse').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchLongHouse');
	if (document.getElementById('fastSearchCommercials').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchCommercials').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchCommercials');
	if (document.getElementById('fastSearchSales').className.indexOf('hidden')>-1)
		document.getElementById('fastSearchSales').style.display='none';
	else
		fsElementDisplayed=document.getElementById('fastSearchSales');

	/* ODSTRANENI NECISELNYCH HODNOT V POLICH */
	areaFromElement=document.getElementById('area_from_comm');
	areaToElement=document.getElementById('area_to_comm');
	
	areaFromElement.onfocus =	removeNaNValue;
	areaFromElement.onblur =	removeNaNValue;
	areaToElement.onfocus =		removeNaNValue;
	areaToElement.onblur =		removeNaNValue;

	/*
	var priceFromElements = document.forms.fast_search.price_from;
	var priceToElements = document.forms.fast_search.price_to;
	for (var i=0;i<priceFromElements.length;i++) {
		priceFromElements[i].onfocus =	removeNaNValue;
		priceFromElements[i].onblur =	removeNaNValue;
		priceToElements[i].onfocus =	removeNaNValue;
		priceToElements[i].onblur =		removeNaNValue;
	}
	*/
	
	/* KONTROLA CISELNEHO ID */
	document.forms.id_search.onsubmit = checkFormIDSearch;

	/* ZOBRAZENI/SKRYVANI CASTI FORMULARE PRO FAST SEARCH */
	offerTypeElement = document.getElementById('type');
	offerTypeElement.onchange = showHideFastSearch;
	
	/* ODSTRANENI PREBYTECNYCH (SKRYTYCH) FORMULAROVYCH POLI PRED ODESLANIM */
	document.forms.fast_search.onsubmit = checkAndRemoveFastSearch;
}

//addEventSimple(window,'load',initSearchBoxes);
DomLoaded.load(initSearchBoxes);