/* --- Inputcheck and DIV handling on search page ---
/* --- v 1.0 28th January 2008
By CHILIBANANA */
var housingtype = new Array();
housingtype['DE'] = 'Bitte wählen Sie Ihren gewünschten Unterkunftstyp!';
housingtype['ES'] = 'Favor seleccione el tipo de alojamiento deseado.';
housingtype['EN'] = 'Please select the preferred housing type!';
var date_period = new Array();
date_period['DE'] = 'Der Beginn des Mietzeitraumes muss vor dem Enddatum liegen!';
date_period['ES'] = 'La fecha de llegada tiene que ser anterior a la fecha de salida.';
date_period['EN'] = 'The arrival date has to be prior to the departure date.';
var date_begin = new Array();
date_begin['DE'] = 'Bitte geben Sie das Datum des Beginns des Mietzeitraumes korrekt ein!';
date_begin['ES'] = 'Favor indique la fecha de llegada correcta.';
date_begin['EN'] = 'Please indicate the correct arrival date.';
var date_end = new Array();
date_end['DE'] = 'Bitte geben Sie das Datum des Endes des Mietzeitraumes korrekt ein!';
date_end['ES'] = 'Favor indique la fecha de salida correcta.';
date_end['EN'] = 'Please indicate the correct departure date.';

		function startRequest() {
			 var lang = document.forms['search'].elements['language'].value;
			 var dateBeginPeriod = document.forms['search'].elements['date_begin'].value;
			 var dateEndPeriod = document.forms['search'].elements['date_end'].value;
		   // check housing type
			 if (document.forms['search'].housing_type.options[document.forms['search'].housing_type.selectedIndex].value != 'null' ) {
			    if (checkDatefield(dateBeginPeriod)) {
						  if (checkDatefield(dateEndPeriod)) {
								 if (getDateComparable(dateBeginPeriod) < getDateComparable(dateEndPeriod)) {
								 		document.forms['search'].submit();
								 } else {
								 	  alert(date_period[lang]);
								 }
							} else {
								 alert(date_end[lang]);
							}
					} else {
							alert(date_begin[lang]);
					}
			 } else {
			    alert(housingtype[lang]);
					document.forms['search'].housing_type.focus();
			 }
		}
		
		function checkDatefield(entry) {
			 var mo, day, yr;
			 var language = document.forms['search'].elements['language'].value;
			 var reLong = /\b\d{1,2}[\.]\d{1,2}[\.]\d{4}\b/;
			 var valid = reLong.test(entry);
			 if (valid) {
			 		var delimChar = "."; 
			 		var delim1 = entry.indexOf(delimChar);
					var delim2 = entry.lastIndexOf(delimChar);
					day = parseInt(entry.substring(0, delim1), 10);
					mo = parseInt(entry.substring(delim1+1, delim2), 10);
					yr = parseInt(entry.substring(delim2+1), 10);
					var testDate = new Date(yr, mo-1, day, 12);
					if (testDate.getDate() == day) {
						 if (testDate.getMonth() + 1 == mo) {
						 		if (testDate.getFullYear() == yr) {
									 return true;
								}
						 }
					} else {
					}
				}

				return false;
		}
		
		function getDateComparable(mydate) {
				var delimChar = ".";
				var returnvalue = '';
			 	var delim1 = mydate.indexOf(delimChar);
				var delim2 = mydate.lastIndexOf(delimChar);
				day = parseInt(mydate.substring(0, delim1), 10);
				mo  = parseInt(mydate.substring(delim1+1, delim2), 10);
				yr  = parseInt(mydate.substring(delim2+1), 10);
				if (mo < 10) mo = '0' + mo;
				if (day < 10) day = '0' + day;
				returnvalue = yr + '' + mo + '' + day;
				return returnvalue;
		}
		
		
		function swapTab(which) {
		   if (which == 'left') {
			 		document.getElementById('detailed_search').style.display='none';
					document.getElementById('detailed_city').style.display='block';
					document.forms['search'].detailedsearch.value = 0;
			 } else {
			 		document.getElementById('detailed_search').style.display='block';
					document.getElementById('detailed_city').style.display='none';
					document.forms['search'].detailedsearch.value = 1;
			 }
		}
		
		function adaptCityAreas(city) {
			 document.getElementById('cityname').innerHTML=city.toUpperCase();
			 if(city == 'Santiago') {
			 		document.getElementById('map_santiago').style.display='block';
					document.getElementById('map_chile').style.display='none';
			 		document.getElementById('cityarea').style.display='block';
			 } else {
			 	  document.getElementById('map_santiago').style.display='none';
					document.getElementById('map_chile').style.display='block';
			 	  document.getElementById('cityarea').style.display='none';
			 }
		}
		
		function adaptHousingTypes(mytype) {
			 if (mytype == 'apartments') {
			 		document.getElementById('apartment_types').style.display='block';
					document.getElementById('detailed_search_apartment').style.display='block';
					document.getElementById('room_types').style.display='none';
					document.getElementById('detailed_search_room').style.display='none';
					document.getElementById('detailed_search_explanation').style.display='none';
			 } else if (mytype == 'rooms') {
			 	  document.getElementById('room_types').style.display='block';
					document.getElementById('detailed_search_room').style.display='block';
					document.getElementById('apartment_types').style.display='none';
					document.getElementById('detailed_search_apartment').style.display='none';
					document.getElementById('detailed_search_explanation').style.display='none';
			 } else {
			 	  document.getElementById('detailed_search_explanation').style.display='block';
					document.getElementById('detailed_search_apartment').style.display='none';
					document.getElementById('detailed_search_room').style.display='none';
					document.getElementById('room_types').style.display='none';
					document.getElementById('apartment_types').style.display='none';
			 }
		}
		
		function adaptCurrencies(cur) {
		   document.forms['search'].currency.value = cur;
		   document.getElementById('apartment_currency_eur').style.display='none';
			 document.getElementById('apartment_currency_usd').style.display='none';
			 document.getElementById('apartment_currency_clp').style.display='none';
		   document.getElementById('room_currency_eur').style.display='none';
			 document.getElementById('room_currency_usd').style.display='none';
			 document.getElementById('room_currency_clp').style.display='none';			 
			 if (cur == 'EUR') {
			    document.getElementById('apartment_currency_eur').style.display='block';
					document.getElementById('room_currency_eur').style.display='block';
			 } else if (cur == 'USD') {
			    document.getElementById('apartment_currency_usd').style.display='block';
					document.getElementById('room_currency_usd').style.display='block';
			 } else {
			    document.getElementById('apartment_currency_clp').style.display='block';
					document.getElementById('room_currency_clp').style.display='block';
			 }
		}
