var searchCriteriaInnerhtmls = new Object();
var boxVisibilities = new Object();
var moreStatus = '';
var locationDIV;
var searchForm;
var xml;
var xslt;
var src_doc;
var isIE = (navigator.appName == "Microsoft Internet Explorer");
var isNav = (navigator.appName == "Netscape" || navigator.appName == "Opera");
var jsCountry = '';
var jsState = '';
var jsRegion = '';
var jsSubRegion = '';
var jsGeograph = '';
var jsRegions = '';
var jsPlace = '';
var jsFulltext = '';
var jsLanguage = 'de';
var jsLevel1 = '';
var jsLevel2 = '';
var jsLevel3 = '';
var jsLevel1Changed = false;
var jsLevel2Changed = false;
var jsLevel3Changed = false;
var jsCoordinateLongitude = false;
var jsCoordinateLatitude = false;
var jsCoordinateID = false;
var jsPortal = '1';
var jsRequestMethode = '';
var jsSelects = '';
var jsPreselected = '';
var pathAdd = ''; // portal%2F
var locationsPredefine = new Array('C2mTVqfRD', 'cS1zyY1KW', 'dmtaEtaHX', 'UnXlrLj3q', 'D6pj7MCWi', 'M6V5vbfWH', 'FMMkU9DPe');
var globalDuration = 7;
if (typeof(languageCode) != 'undefined') jsLanguage = languageCode;

function checkFulltext(elementName)
{
	// check if fulltext is used
	if (document.getElementById('fulltext'))
	{
		if (elementName == 'fulltext')
		{
			if(document.getElementsByName('country'))
			{
				document.getElementsByName('country')[0].style.visibility = 'hidden';
				document.getElementsByName('country')[0].style.display = 'none';
				document.getElementsByName('country')[0].value = '';
			
				document.getElementById('fulltextOr').style.visibility = 'hidden';
				document.getElementById('fulltextOr').style.display = 'none';				
				
			}
	  }
	  else
	  {
				document.getElementById('fulltext').style.visibility = 'hidden';
				document.getElementById('fulltext').style.display = 'none';
				document.getElementById('fulltextInput').value = '';

				
	  }
	}
	
	return true;
}


function showImage(imageUrl)
{
	imageBig = new Image();
	imageBig.src = imageUrl;
	
	document.getElementById('imageBig').src = imageUrl;
	document.getElementById('imageBigDiv').style.visibility = 'visisble';
	
	//alert(imageBig.height + ' ' + imageBig.width);
}

function loadlocations(xslfile)
{

	var locationDIV = document.getElementById("locationDIV");
	
	if (document.getElementsByName('place')[0])
	{
		if (jsPlace == '')
		{
			document.getElementsByName('place')[0].selectedIndex = 0;
		}
	}

	if (jsCountry != '')
	{
		var requestXML = "/xml/regions_" + jsCountry + ".xml";
	}
	else
		{
			var requestXML = "/xml/countries.xml";
		}


		if (isIE)
		{
			// Load XML
			xml = new ActiveXObject("Microsoft.XMLDOM");
			xml.async = false;
			xml.load(requestXML);

			// Load XSL
			xsl = new ActiveXObject("Microsoft.XMLDOM");
			xsl.async = false;
			xsl.load("/xmlRequest/" + xslfile);

			// Transform
			output = xml.transformNode(xsl);
		}

		if (isNav)
		{
			//for mozilla/netscape
			processor = new XSLTProcessor();
			xslt = document.implementation.createDocument("", "", null);
			xslt.async = false;
			xslt.load("/xmlRequest/" + xslfile);
			processor.importStylesheet(xslt);

			src_doc = document.implementation.createDocument("","", null);
			src_doc.async = false;
			src_doc.load(requestXML);
			result = processor.transformToDocument(src_doc);
			xmls = new XMLSerializer();
			output = xmls.serializeToString(result);
		}

		locationDIV.innerHTML = output;

	}


	function loadlocations2(xslfile)
	{

		var locationDIV = document.getElementById("locationDIV");

		/* var requestXML = "/xmlRequest/xmlRequest.php?method=locations&country="+jsCountry+"&state="+jsState+"&region="+jsRegion+"&regions="+jsRegions; */

		if (jsCountry != '')
		{
			var requestXML = "/xml/regions_predefine_" + jsCountry + ".xml";
		}
		else
			{
				var requestXML = "/xml/countries_predefine.xml";
			}

			jsState = '';
			jsRegion = '';
			jsSubRegion = '';

			// set location parameters
			if (jsLevel1)
			{
				var idLevel1 = jsLevel1.split('|')[0];
				var typeLevel1 = jsLevel1.split('|')[1];
				switch (typeLevel1)
				{
					case 'S' : jsState = idLevel1; break;
					case 'R,G' : jsRegion = idLevel1; break;
					case 'SR' : jsSubRegion = idLevel1; break;
				}
			}
			if (jsLevel2)
			{
				var idLevel2 = jsLevel2.split('|')[0];
				var typeLevel2 = jsLevel2.split('|')[1];
				switch (typeLevel2)
				{
					case 'S' : jsState = idLevel2; break;
					case 'R,G' : jsRegion = idLevel2; break;
					case 'SR' : jsSubRegion = idLevel2; break;
				}
			}
			if (jsLevel3)
			{
				var idLevel3 = jsLevel3.split('|')[0];
				var typeLevel3 = jsLevel3.split('|')[1];
				switch (typeLevel3)
				{
					case 'S' : jsState = idLevel3; break;
					case 'R,G' : jsRegion = idLevel3; break;
					case 'SR' : jsSubRegion = idLevel3; break;
				}
			}

			if (isIE)
			{


				// Load XML
				xml = new ActiveXObject("Microsoft.XMLDOM");
				xml.async = false;
				xml.load(requestXML);

				// Load XSL
				xsl = new ActiveXObject("Microsoft.XMLDOM");
				xsl.async = false;
				xsl.load("/xmlRequest/" + xslfile);


				output = xml.transformNode(xsl);

			}

			if (isNav)
			{
				//for mozilla/netscape
				processor = new XSLTProcessor();
				//alert(jsCountry+'|'+jsState+'|'+jsRegion+'|'+jsSubRegion);
				processor.setParameter('', 'isolang', jsLanguage);
				processor.setParameter('', 'country', jsCountry);
				processor.setParameter('', 'state', jsState);
				processor.setParameter('', 'region', jsRegion);
				processor.setParameter('', 'subregion', jsSubRegion);
				xslt = document.implementation.createDocument("", "", null);
				xslt.async = false;
				xslt.load("/xmlRequest/" + xslfile);
				processor.importStylesheet(xslt);

				src_doc = document.implementation.createDocument("","", null);
				src_doc.async = false;
				src_doc.load(requestXML);
				result = processor.transformToDocument(src_doc);
				xmls = new XMLSerializer();
				output = xmls.serializeToString(result);
			}

			locationDIV.innerHTML = output;

		}

		
/*

 third version

*/		
	
var xmlDoc = null;

function loadlocations3()
{	
	// get search form
	var searchForm = document.getElementById("searchForm");
	
	document.getElementById("searchForm").style.cursor = 'wait';
	for(i=0;i<document.getElementsByTagName("select").length;i++)
	{
		document.getElementsByTagName("select")[i].style.cursor = 'wait';
	}
	

  // decide xml data to parse 
	if (locationsPredefine.join(',').indexOf(jsCountry) >= 0) //== 'C2mTVqfRD'
	{
		// country is predefine
		var requestXML = "xml%2F" + pathAdd + "predefine%2Fregions_predefine_" + jsCountry + ".xml";
		var requestXSL = "xmlRequest%2FsearchLocationPredefine.xsl";
	}
	else
	{
    // country is not predefine
		if (jsCountry != '')
		{
			var requestXML = "xml%2F" + pathAdd + "regions_" + jsCountry + ".xml";
		}
		else
		{
			var requestXML = "xml%2F" + pathAdd + "regions_" + jsCountry + ".xml"; //countries.xml";
		}
		
		var requestXSL = "xmlRequest%2FsearchLocationNoPredefine.xsl";
		
	}

	// set/reset location parameters
	
	if (jsLevel1Changed == true) // LEVEL 1 changed (reset unneeded)
	{
		var idLevel1 = jsLevel1.split('|')[0];
		var typeLevel1 = jsLevel1.split('|')[1];
		switch (typeLevel1)
		{
			case 'S' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R,G' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'R,G' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'R' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'G' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'SR' : jsSubRegion = idLevel1; jsState = ''; jsRegion = ''; jsPlace = ''; break;
			default   : jsState = ''; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
		}
		jsLevel1Changed = false;
	}

	if (jsLevel2Changed == true) // LEVEL 2 changed (reset unneeded)
	{
		var idLevel2 = jsLevel2.split('|')[0];
		var typeLevel2 = jsLevel2.split('|')[1];
		switch (typeLevel2)
		{
			case 'S' : jsState = idLevel2; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R,G' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'R,G' : jsRegion = idLevel2; jsSubRegion = ''; jsPlace = '';break;
			case 'R' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'G' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;			
			case 'SR' : jsSubRegion = idLevel2; jsRegion = ''; jsPlace = ''; break;
			default   : jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
		}
		jsLevel2Changed = false;
	}

	if (jsLevel3Changed == true) // LEVEL 3 changed (reset unneeded)
	{
		var idLevel3 = jsLevel3.split('|')[0];
		var typeLevel3 = jsLevel3.split('|')[1];
		switch (typeLevel3)
		{
			case 'S' : jsState = idLevel3; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'S,R,G' : jsState = idLevel1; jsRegion = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'R,G' : jsRegion = idLevel3; jsSubRegion = ''; jsPlace = ''; break;
			case 'R' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;
			case 'G' : jsRegion = idLevel1; jsState = ''; jsSubRegion = ''; jsPlace = ''; break;			
			case 'SR' : jsSubRegion = idLevel3; jsPlace = ''; break;
			default   : jsSubRegion = ''; jsPlace = ''; break;
		}
		jsLevel3Changed = false;
	}

  // reset place
	if (document.getElementsByName('place')[0])
	{
		if (jsPlace == '')
		{
			document.getElementsByName('place')[0].selectedIndex = 0;
		}
	}

	
	// get other select values
	if (document.getElementsByTagName("select"))
	{
		selectArray = new Array();
		for(i=0; i < document.getElementsByTagName("select").length; i++)
		{
			selectName = document.getElementsByTagName("select")[i].name;
			selectIndex = document.getElementsByTagName("select")[i].selectedIndex;
			selectValue = document.getElementsByTagName("select")[i].options[selectIndex].value;
			if (selectValue)
			{
			  selectArray.push(selectName + "=" + selectValue);
			}
		}
		jsSelects = selectArray.join("%26");
	}
	
	// reformat startDate
	if (document.getElementsByName("startDate_day")[0] && document.getElementsByName("startDate_month")[0])
	{
		jsStartDateMonth = document.getElementsByName("startDate_month")[0].options[document.getElementsByName("startDate_month")[0].selectedIndex].value;
		jsStartDateDay = document.getElementsByName("startDate_day")[0].options[document.getElementsByName("startDate_day")[0].selectedIndex].value;
	  jsStartDate = jsStartDateMonth.substring(0,4) + "-" + jsStartDateMonth.substring(4,6) + "-" + jsStartDateDay;
	  jsSelects += "%26startDate=" + jsStartDate;
	}
	
	//alert(jsSelects);

  // add needed location parameters
	requestXML += "%3F"+"portal="+jsPortal+"%26language="+jsLanguage+"%26country="+jsCountry+"%26state="+jsState+"%26region="+jsRegion+"%26subregion="+jsSubRegion+"%26"+jsSelects+"%26preselected="+jsPreselected;
 
	// initialize http request
	if (window.ActiveXObject) 
	{
		xmlDoc = new ActiveXObject("Microsoft.XMLHTTP"); // Mircosoft
		xmlDoc.onreadystatechange = process ;
	}
	else 
	{
		xmlDoc = new XMLHttpRequest(); // Others
		xmlDoc.onload = process ;
	}	
	// parse xml data true xsl preprocessor
	if (jsRequestMethode == 'local')
	{
		// local request
		xmlDoc.open("GET", "/xmlRequest/xmlRequest2.php?method=xslt&params=isolang:" + language + "&xml=..%2F"+requestXML+"&xsl=..%2F"+requestXSL+"&output=html", true);
		//xmlDoc.setRequestHeader( "Content-type", "text/html;charset=ISO-8859-1" );
		xmlDoc.send( null );					
		
		//document.write("/xmlRequest/xmlRequest2.php?method=xslt&xml="+requestXML+"&xsl="+requestXSL+"&output=html");
		
	}
	else
	{
		// xsl server
		//xmlDoc.open( "GET", "/xmlRequest/get.php?url=http%3A%2F%2F217.171.203.12%3A8000%2F"+requestXML, true);
		//xmlDoc.open( "GET", "/xmlRequest/get.php?url=http%3A%2F%2Fwww.tourist-online.de%3A8000%2F"+requestXML, true);
		//xmlDoc.open( "GET", "http://www.tourist-online.de:8000/"+requestXML, true);#
		xmlDoc.open( "GET", "/xmlRequest/get.php?url=http%3A%2F%2Fwww.tourist-online.de%3A8000%2F"+requestXML, true);
		xmlDoc.send( null );
		
		//prompt('correct', requestXML);
		
	}

	

}

function process()
{
	// document is parsed, refresh form data
	if ( xmlDoc.readyState != 4 ) return ;
	document.getElementById("searchForm").innerHTML = xmlDoc.responseText;
	checkDays('startDate'); 
	
	document.getElementById("searchForm").style.cursor = 'default';
	for(i=0;i<document.getElementsByTagName("select").length;i++)
	{
		document.getElementsByTagName("select")[i].style.cursor = 'default';
	}	

	/* to set map coordinates after location refresh */
	changeFormMapUpdate(true);	
}

function daysOfMonth(month, year) {
	for(var x=28; x<=31; ++x) {
		if(new Date(year,month-1,x).getMonth()
		!=new Date(year,month-1,1).getMonth())
		break;
	}
	return x-1;
}

function checkDays(name) 
{
	if (document.getElementsByName(name + "_month").length && document.getElementsByName(name + "_day").length) 
	{
	 maxDays = daysOfMonth((document.getElementsByName(name + "_month")[0].options[document.getElementsByName(name + "_month")[0].selectedIndex].value.substring(4,6)*1), (document.getElementsByName(name + "_month")[0].options[document.getElementsByName(name + "_month")[0].selectedIndex].value.substring(0,4)*1));
	 if (document.getElementsByName(name + "_day")[0].value > maxDays) 
	   document.getElementsByName(name + "_day")[0].value = maxDays;
	 if ((document.getElementsByName(name + "_month")[0].selectedIndex > 0) && (document.getElementsByName(name + "_day")[0].value == 0)) 
	   document.getElementsByName(name + "_day")[0].selectedIndex = 1;
	 if (document.getElementsByName(name + "_weekday").length) 
	 {
	 	 if ((document.getElementsByName(name + "_month")[0].selectedIndex > 0) && (document.getElementsByName(name + "_day")[0].selectedIndex > 0)) 
	 	 {
	 	   year  = (document.getElementsByName(name + "_month")[0].options[document.getElementsByName(name + "_month")[0].selectedIndex].value.substr(0, 4)); 
	 	   month = (document.getElementsByName(name + "_month")[0].options[document.getElementsByName(name + "_month")[0].selectedIndex].value.substr(4));
	 	   day   = (document.getElementsByName(name + "_day")[0].options[document.getElementsByName(name + "_day")[0].selectedIndex].value);
	 	   selectedDate = new Date(year, month - 1, day);
	 	   if (typeof weekDays != 'undefined')
	 	   {
	 	     document.getElementsByName(name + "_weekday")[0].value = weekDays[selectedDate.getDay()];
	 	   }
	   } 
	   else
	   { 
	     document.getElementsByName(name + "_weekday")[0].value = '';
	   }
	 } 
	}
}




/*function waitWindow(waitingMessage, waitingID, waitingVisibility)
{

	if (waitingVisibility == '')
	waitingVisibility = 'hidden';
	

	var windowWidth, windowHeight;
	if (navigator.appName == 'Microsoft Internet Explorer')
	{
		if (document.body && document.body.offsetWidth)
		{
			windowWidth = document.body.offsetWidth;
		}
		else windowWidth = 1024;
		if ((document.body && document.body.offsetHeight))
		{
			windowHeight = document.body.offsetHeight;
		}
		else windowHeight = 600;
	}
	else
	{
		windowWidth = window.innerWidth;
		windowHeight = window.innerHeight;
	}
	document.write('<div id="'+waitingID+'" class="waitWindow" style="top:');
	document.write((windowHeight-150)/2-30);
	document.write('px;left:');
	document.write((windowWidth-400)/2);
	document.write('px;');
  document.write('position: absolute; display:none; z-index: 999;');
	document.write('visibility:'+waitingVisibility+'">');
	document.write(waitingMessage+'</div>');

}*/

// waitWindow-functions are outdated - use layer-functions instead (js/infobox.js)
function waitWindow(waitingMessage, waitingID, waitingVisibility) {
	document.write('<img src="http://www.tourist-online.de/xmlProcessing/imageMail.php" alt="">');
}
function showWindow(waitingID) {
	document.write('<img src="http://www.tourist-online.de/xmlProcessing/imageMail.php" alt="">');
}
/*
function waitWindow(waitingMessage, waitingID, waitingVisibility)
{

	if (waitingVisibility == '')
	waitingVisibility = 'hidden';
	
	var windowWidth, windowHeight;
	
	if (navigator.appName == 'Microsoft Internet Explorer')
	{
		if (document.body && document.body.offsetWidth)
		{
			windowWidth = document.body.offsetWidth;
		}
		else windowWidth = 1024;
	}
	else windowWidth = window.innerWidth;
	
	windowHeight = window.innerHeight;
	
	document.write('<div id="'+waitingID+'" class="waitWindow" style="top:');
	document.write((windowHeight-150)/2-30);
	document.write('px;left:');
	document.write((windowWidth-400)/2);
	document.write('px;');
  document.write('position: absolute; display:none; z-index: 999;');
	document.write('visibility:'+waitingVisibility+'">');
	document.write(waitingMessage+'</div>');

}

function showWindow(waitingID)
{
	document.write('<img src="http://www.tourist-online.de/xmlProcessing/imageMail.php" alt="">');

	if (document.getElementById(waitingID))
	{
		document.getElementById(waitingID).style.visibility = "visible";
		document.getElementById(waitingID).style.display = "block";
  }
	
	//window.setTimeout('hideWindow(' + waitingID + ')', 5000);
	
}

function moveWaitWindow(waitingID)
{
	if (document.getElementById(waitingID))
	{	
	  var scrOfX = 0, scrOfY = 0;
	  if( typeof( window.pageYOffset ) == 'number' ) {
	    //Netscape compliant    
	    scrOfY = window.pageYOffset;
	    scrOfX = window.pageXOffset;
	  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {  	
	    //DOM compliant
	    scrOfY = document.body.scrollTop;
	    scrOfX = document.body.scrollLeft;
	  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {  	
	    //IE6 standards compliant mode
	    scrOfY = document.documentElement.scrollTop;
	    scrOfX = document.documentElement.scrollLeft;    
	  }	
	  var windowWidth, windowHeight;
		if (navigator.appName == 'Microsoft Internet Explorer')
		{
			if (document.body && document.body.offsetWidth)
			{
				windowWidth = document.body.offsetWidth;
			}
			else windowWidth = 1024;
			if ((document.body && document.body.offsetHeight))
			{
				windowHeight = document.body.offsetHeight;
			}
			else windowHeight = 600;
			}
		else
		{
			windowWidth = window.innerWidth;
			windowHeight = window.innerHeight;
		}
	  	document.getElementById(waitingID).style.top = scrOfY + ((windowHeight-150)/2-30) + "px";
		document.getElementById(waitingID).style.left = ((windowWidth-400)/2) + "px";							  							  
		showWindow(waitingID);								
	  }
}
			
function hideWindow(waitingID)
{
	if (document.getElementById(waitingID))
	document.getElementById(waitingID).style.visibility = "hidden";
	document.getElementById(waitingID).style.display = "none";
}*/

function hidePlaces()
{
	if(document.getElementsByName('place')[0] && document.getElementById('tab3'))
	{
		if(!document.getElementById("browseTop") && !document.getElementById("browseSides"))
		{
			if (document.getElementsByName('place')[0].options[document.getElementsByName('place')[0].selectedIndex].value == '')
			{
				document.getElementById('tab3').innerHTML = '';
			}
		}
	}
}
						
						

/*
function unloadImage(evt)
{
	if (document.getElementById) {
		document.getElementById("imgPrv").style.visibility = 'hidden';
		document.getElementById("imgPrv").style.display = 'none';
		document.getElementById("imgPrv").innerHTML = '';
		document.getElementById("imgPrv").style.left  = '1px';
		document.getElementById("imgPrv").style.top = '1px';
	} else if (document.all) {
		document.all.imgPrv.style.visibility = 'hidden';
		document.all.imgPrv.style.display = 'none';
		document.all.imgPrv.innerHTML = '';
		document.all.imgPrv.style.left = '1px';
		document.all.imgPrv.style.top = '1px';
	}
}

function loadImage(evt, imageUrl)
{
	// get event
	if (!evt)
	evt = window.event;
	
	// get current cursor position
	positionX = mouseX(evt);
	positionY = mouseY(evt);
	
	// set image and display
	if (document.getElementById) {
		document.getElementById("imgPrv").style.visibility = 'visible';
		document.getElementById("imgPrv").style.display = 'block';
		document.getElementById("imgPrv").innerHTML = '<div class="imgBorder"><img src="' + imageUrl + '" alt=""></div>';
		document.getElementById("imgPrv").style.left  = (positionX + 10) + 'px';
		document.getElementById("imgPrv").style.top = (positionY + 10) + 'px';
	} else if (document.all) {
		document.all.imgPrv.style.visibility = 'visible';
		document.all.imgPrv.style.display = 'block';
		document.all.imgPrv.innerHTML = '<div class="imgBorder"><img src="' + imageUrl + '" alt=""></div>';
		document.all.imgPrv.style.left  = (positionX + 10) + 'px';
		document.all.imgPrv.style.top = (positionY + 10) + 'px';
	}
}

function mouseX(evt) 
{
	if (evt.pageX) return evt.pageX;
	else if (evt.clientX)
	return evt.clientX + (document.documentElement.scrollLeft ?
	document.documentElement.scrollLeft :
	document.body.scrollLeft);
	else return null;
}

function mouseY(evt) 
{
	if (evt.pageY) return evt.pageY;
	else if (evt.clientY)
	return evt.clientY + (document.documentElement.scrollTop ?
	document.documentElement.scrollTop :
	document.body.scrollTop);
	else return null;
}
*/

function change_form()
{
	querys = new Array();	
	if (jsCountry != '') querys.push('country=' + jsCountry);
	if (jsGeograph != '') querys.push('geograph=' + jsGeograph);
	if (jsLanguage != '') querys.push('language=' + jsLanguage);
	if (jsPlace != '') querys.push('place=' + jsPlace);
	if (jsRegion != '') querys.push('region=' + jsRegion);
	if (jsSubRegion != '') querys.push('subregion=' + jsSubRegion);
	if (jsState != '') querys.push('state=' + jsState);
	if (jsRegions != '') querys.push('regions=' + jsRegions);
	if (jsCountry == '' && document.getElementsByName("country") && document.getElementsByName("country")[0].options[document.getElementsByName("country")[0].selectedIndex].value != '') querys.push('country=' + document.getElementsByName("country")[0].options[document.getElementsByName("country")[0].selectedIndex].value);
	if (document.getElementsByName("startDate_month")[0] && document.getElementsByName("startDate_month")[0].options[document.getElementsByName("startDate_month")[0].selectedIndex].value != '') querys.push('startDate_month=' + document.getElementsByName("startDate_month")[0].options[document.getElementsByName("startDate_month")[0].selectedIndex].value);
	if (document.getElementsByName("startDate_day")[0] && document.getElementsByName("startDate_day")[0].options[document.getElementsByName("startDate_day")[0].selectedIndex].value != '') querys.push('startDate_day=' + document.getElementsByName("startDate_day")[0].options[document.getElementsByName("startDate_day")[0].selectedIndex].value);
	if (document.getElementsByName("persons")[0] && document.getElementsByName("persons")[0].options[document.getElementsByName("persons")[0].selectedIndex].value != '') querys.push('persons=' + document.getElementsByName("persons")[0].options[document.getElementsByName("persons")[0].selectedIndex].value);	
	if (document.getElementsByName('pets')[0] && document.getElementsByName('pets')[document.getElementsByName('pets').length - 1].value != '') querys.push('pets=' + document.getElementsByName('pets')[document.getElementsByName('pets').length - 1].value);	
	if (document.getElementsByName('ski')[0] && document.getElementsByName('ski')[document.getElementsByName('ski').length - 1].value != '') querys.push('ski=' + document.getElementsByName('ski')[document.getElementsByName('ski').length - 1].value);	
	if (document.getElementsByName('pool')[0] && document.getElementsByName('pool')[document.getElementsByName('pool').length - 1].value != '') querys.push('pool=' + document.getElementsByName('pool')[document.getElementsByName('pool').length - 1].value);	
	if (document.getElementsByName('fishing')[0] && document.getElementsByName('fishing')[document.getElementsByName('fishing').length - 1].value != '') querys.push('fishing=' + document.getElementsByName('fishing')[document.getElementsByName('fishing').length - 1].value);	
	if (document.getElementsByName('rooms')[0] && document.getElementsByName('rooms')[document.getElementsByName('rooms').length - 1].value != '') querys.push('rooms=' + document.getElementsByName('rooms')[document.getElementsByName('rooms').length - 1].value);							
	if (document.getElementsByName('duration')[0] && document.getElementsByName('duration')[document.getElementsByName('duration').length - 1].value != '') querys.push('duration=' + document.getElementsByName('duration')[document.getElementsByName('duration').length - 1].value);							
	// initialize http request
	if (window.ActiveXObject)
	{
		xmlDoc2 = new ActiveXObject("Microsoft.XMLHTTP"); // Mircosoft
		xmlDoc2.onreadystatechange = function()
		{
			if (xmlDoc2.readyState == 4) 
			{
				document.getElementById('searchfrm').action = xmlDoc2.responseText;
			}
		}
	}
	else
	{
		xmlDoc2 = new XMLHttpRequest(); // Others
		xmlDoc2.onload = function()
		{
			if (xmlDoc2.readyState == 4) 
			{
				document.getElementById('searchfrm').action = xmlDoc2.responseText;
			}
		}
	}
	var requestXML = "/search_dev/getFormAction.php?"+querys.join('&');	

	// local request
	xmlDoc2.open("GET", requestXML, true);
	xmlDoc2.setRequestHeader( "Content-type", "text/html;charset=UTF-8" );
	xmlDoc2.send( null );
	
}

function showPrices(objectNumbers, agencyNumbers, arrivalDate, duration, languageCode)
{
	if (window.ActiveXObject)
	{
		xmlDoc2 = new ActiveXObject("Microsoft.XMLHTTP"); // Mircosoft
		xmlDoc2.onreadystatechange = function()
		{
			if (xmlDoc2.readyState == 4) 
			{
				document.getElementById('getPrices').innerHTML = eval(xmlDoc2.responseText);
				setPrices();
			}
		}
	}
	else
	{
		xmlDoc2 = new XMLHttpRequest(); // Others
		xmlDoc2.onload = function()
		{
			if (xmlDoc2.readyState == 4) 
			{
				document.getElementById('getPrices').innerHTML = eval(xmlDoc2.responseText);
				setPrices();
			}
		}
	}
	var requestXML = "/search_dev/searchBookings.php?objects="+objectNumbers+"&agencyNumbers="+agencyNumbers+"&arrivalDate="+arrivalDate+"&duration="+duration+"&languageCode="+languageCode;	

	// local request
	xmlDoc2.open("GET", requestXML, true);
	xmlDoc2.setRequestHeader( "Content-type", "text/html;charset=UTF-8" );
	xmlDoc2.send( null );
}

function selectPriceOption(selectedOption)
{
	if (document.getElementById('prices')) 
	{
		for(i = 1; i < document.getElementById('prices').length; i++)
		{
			if (document.getElementById('prices').options[i].value == selectedOption) document.getElementById('prices').selectedIndex = i;
		}
		//showWindow('waitSearch');
		showSearchLayer();
		document.searchfrm.submit();
	}
}

function setMinPrice(price)
{
	if (document.getElementById('pricemin')) document.getElementById('pricemin').value = price;
	//showWindow('waitSearch');
	showSearchLayer();
	document.searchfrm.submit();
}

function resetPrices()
{
	document.getElementById('pricemin').value = '';
	document.getElementById('prices').selectedIndex = 0;
	//showWindow('waitSearch');
	showSearchLayer();
	document.searchfrm.submit();
}

function switchPrices(duration)			
{
	if (globalDuration != duration)
	{						
		if (globalDuration < 7 && duration >= 7 && document.getElementById('prices') && priceFieldsWeek.length > 0) 
		{
			for(i = 1; i < document.getElementById('prices').length; i++)
			{
				document.getElementById('prices').options[i] = null;
			}
			for(i = 1; i < priceFieldsWeek.length; i++)
			{
				document.getElementById('prices').options[i] = priceFieldsWeek[i];
			}							
		}
		if (globalDuration >= 7 && duration < 7 && document.getElementById('prices') && priceFieldsDay.length > 0) 
		{
			for(i = 1; i < document.getElementById('prices').length; i++)
			{
				document.getElementById('prices').options[i] = null;
			}
			for(i = 1; i < priceFieldsDay.length; i++)
			{
				document.getElementById('prices').options[i] = priceFieldsDay[i];
			}
		}
		globalDuration = duration;
	}
}


function highlightSearch(elementID) {
    var searchElements = new Object ();
    searchElements.srRegion = 'n';
    searchElements.srDirect = 'n';

    for (eID in searchElements) {
        if (typeof document.getElementById(eID) != 'undefined') {
            if (eID == elementID) {
                var e = document.getElementById(eID);
                e.className = 'location srActive';
                e.setAttribute("class", 'location srActive');
                e.setAttribute("className", 'location srActive');
            } else {
                var e = document.getElementById(eID);
                e.className = 'location srInactive';
                e.setAttribute("class", 'location srInactive');
                e.setAttribute("className", 'location srInactive');
            }
        }
    }
}

function toggleStars(val) {
  if (val && val == 'hotels') {
      // show stars
      document.getElementById('starsselect').style.display = 'block';
      document.getElementById('starsselect').style.visibility = 'visible';              
  } else {
      // hide stars
      document.getElementById('starsselect').style.display = 'none';
      document.getElementById('starsselect').style.visibility = 'hidden';
      document.getElementById('starsselect').selectedIndex = 0;
  }
}

function showStars(){
  document.getElementById('starsselect').style.display = 'block';
  document.getElementById('starsselect').style.visibility = 'visible';
}

function hideStars(){
  document.getElementById('starsselect').style.display = 'none';
  document.getElementById('starsselect').style.visibility = 'hidden';
  document.getElementById('starsselect').selectedIndex = 0;
}

 function toggleEnhanced() {
  if (document.getElementById('srEnhanced').style.display == 'block') {
      document.getElementById('srEnhanced').style.display = 'none';
      document.getElementById('srEnhanced').style.visibility = 'hidden';
      document.getElementById('srEnhancedArrow').src = '/img/searchRight.gif';
  } else {
      document.getElementById('srEnhanced').style.display = 'block';
      document.getElementById('srEnhanced').style.visibility = 'visible';
      document.getElementById('srEnhancedArrow').src = '/img/searchBottom.gif';
  }
}

function toggleBox(boxId, forceHide) {
  if (document.getElementById(boxId).style.display != 'none' || forceHide) {
      document.getElementById(boxId).style.display = 'none';
      document.getElementById(boxId).style.visibility = 'hidden';
	  document.getElementById('advanced').innerHTML = Translations[languageCode]['searchEnhanced'];
  } else {
      document.getElementById(boxId).style.display = 'block';
      document.getElementById(boxId).style.visibility = 'visible';              
      document.getElementById('advanced').innerHTML = Translations[languageCode]['searchEnhancedClose'];
  }
}

function hide(elementID)
{
if (partElement = document.getElementById(elementID))
{
  document.getElementById(elementID).style.visibility = 'hidden';
  document.getElementById(elementID).style.display = 'none';
}
else if(document.all && document.all.elementID)
{
  document.all.elementID.style.visibility = 'hidden';
  document.all.elementID.style.display = 'none';

}
}

function hidePlaceBox()
{
	//if (document.getElementById('placeFilter') && typeof hide == 'function') hide('placeFilter');
}

function hideUserinfoBox()
{
if (document.getElementById('searchUserInformation') && typeof hide == 'function') hide('searchUserInformation');
}

function show(elementID, type)
{
	if (typeof type == 'undefined') type = '';
	if (partElement = document.getElementById(elementID))
	{
	  document.getElementById(elementID).style.visibility = 'visible';
	  if (type != '')	document.getElementById(elementID).style.display = type;
	  else document.getElementById(elementID).style.display = ((rowCells = document.getElementById(elementID).cells) && rowCells.length) ? 'table-row' : 'inline';
	}
	else if(document.all && document.all.elementID)
	{
	  document.all.elementID.style.visibility = 'visible';
	  if (type != '') document.all.elementID.style.display = type;
	  else document.all.elementID.style.display = ((rowCells = document.all.elementID.cells) && rowCells.length) ? 'table-row' : 'inline';
	}
}

function changePart(objectNumber, active)
{
	var i = 0;
	if (document.getElementById("price_" + objectNumber))
	{			
		for(i = 0; i < document.getElementById("price_" + objectNumber).getElementsByTagName('div').length; i++)
		{
			document.getElementById("price_" + objectNumber).getElementsByTagName('div')[i].style.display = 'none';						
		}
		if (document.getElementById("price_" + objectNumber + "_" + active)) 
		{
			document.getElementById("price_" + objectNumber + "_" + active).style.display = 'block';			
		}
	}
}

function opacity2(id, opacStart, opacEnd, millisec) {	
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac2(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }        
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac2(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

function changeOpac2(opacity, id) {
    var object = document.getElementById(id).style;    
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";    
    if (opacity == 0) 
    {
    	hide(id);
    	hide('showPreloadImage');
    }
} 

var changeOrder = 0;

function preLoadSearchResult(dontGetValues)
{	
	if (typeof directFormSubmit != 'undefined' && directFormSubmit === true) 
	{
		showSearchLayer();
		if(typeof document.searchfrm.submit == 'function') {
			document.searchfrm.submit();
		} else if(typeof jQuery == 'function') {
			$('#searchfrm').submit();
		}
	}
	else
	{
		if ((document.getElementById('showPreload') || document.getElementById('searchCriteria')) && (!document.getElementById('calendarBox1') || document.getElementById('calendarBox1').style.display == 'none')) 
		{	
			querys = new Array();
			levelIDs = new Array();
			if (dontGetValues != true)
			{
				if (document.getElementById('sfCountry') && document.getElementById('sfCountry').options[document.getElementById('sfCountry').selectedIndex].value != '') querys.push('country=' + document.getElementById('sfCountry').options[document.getElementById('sfCountry').selectedIndex].value);
				if (document.getElementById('sfLevel1') && document.getElementById('sfLevel1').length > 0 && document.getElementById('sfLevel1').options[document.getElementById('sfLevel1').selectedIndex].value != '') querys.push('level1=' + document.getElementById('sfLevel1').options[document.getElementById('sfLevel1').selectedIndex].value);
				if (document.getElementById('sfLevel2') && document.getElementById('sfLevel2').length > 0 && document.getElementById('sfLevel2').options[document.getElementById('sfLevel2').selectedIndex].value != '') querys.push('level2=' + document.getElementById('sfLevel2').options[document.getElementById('sfLevel2').selectedIndex].value);
				if (document.getElementById('sfLevel3') && document.getElementById('sfLevel3').length > 0 && document.getElementById('sfLevel3').options[document.getElementById('sfLevel3').selectedIndex].value != '') querys.push('level3=' + document.getElementById('sfLevel3').options[document.getElementById('sfLevel3').selectedIndex].value);
				if (document.getElementById('sfLevel4') && document.getElementById('sfLevel4').length > 0 && document.getElementById('sfLevel4').options[document.getElementById('sfLevel4').selectedIndex].value != '') querys.push('level4=' + document.getElementById('sfLevel4').options[document.getElementById('sfLevel4').selectedIndex].value);
				
				if (document.getElementById('requestType') && document.getElementById('requestType').value == 'map')
				{
					if (document.getElementById('longitude') && document.getElementById('longitude').value != '') querys.push('longitude=' + document.getElementById('longitude').value);
					if (document.getElementById('latitude') && document.getElementById('latitude').value != '') querys.push('latitude=' + document.getElementById('latitude').value);			
				}
				
				if (document.getElementById('quick_requestType') && document.getElementById('quick_requestType').value == 'map')
				{
					if (document.getElementById('quick_longitude') && document.getElementById('quick_longitude').value != '') querys.push('longitude=' + document.getElementById('quick_longitude').value);
					if (document.getElementById('quick_latitude') && document.getElementById('quick_latitude').value != '') querys.push('latitude=' + document.getElementById('quick_latitude').value);			
				}
				
				if (document.getElementById('hiddenLocationID') && document.getElementById('hiddenLocationID').value != '') querys.push('hiddenLocationID=' + document.getElementById('hiddenLocationID').value);
				if (document.getElementById('quick_hiddenLocationID') && document.getElementById('quick_hiddenLocationID').value != '') querys.push('hiddenLocationID=' + document.getElementById('quick_hiddenLocationID').value);
				if (document.getElementById('hiddenCountryID') && document.getElementById('hiddenCountryID').value != '') querys.push('hiddenCountryID=' + document.getElementById('hiddenCountryID').value);
				if (document.getElementById('quick_hiddenCountryID') && document.getElementById('quick_hiddenCountryID').value != '') querys.push('hiddenCountryID=' + document.getElementById('quick_hiddenCountryID').value);
				
				if (querys.length == 0)
				{
					setLayerHead(Translations[languageCode]['searchNoCriteriaTitle']);
					//setLayerText('<p>' + Translations[languageCode]['searchNoCriteriaTitleText'] + '</p><p style="margin-bottom: 10px; margin-top: 5px"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpText.jpg"></p><p>' + Translations[languageCode]['searchNoCriteriaTitleMap'] + '</p><p style="margin-bottom: 10px;"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpMap.jpg"></p><p><input type="button" value="' + Translations[languageCode]['OK'] + '" onclick="hideLayer(); return false;" /></p>');
					setLayerText('<p>' + Translations[languageCode]['searchNoCriteriaTitleText'] + '</p><p style="margin-bottom: 10px; margin-top: 5px"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpText.png"></p><p><input type="button" value="' + Translations[languageCode]['OK'] + '" onclick="hideLayer(); return false;" /></p>');		
					setLayerStyle('default', 'default', '470px', 'default', 'default', 'default');
					showLayer();
					return false;
				}
			}
				
			showSearchLayer();
			
			if (dontGetValues != true)
			{
				var objectGroup = '';
				if (document.getElementById('group') && document.getElementById('group').value != '') 
				{    
				    objectGroup = document.getElementById('group').value;
				} 
				else if (document.getElementById('group') && document.getElementById('searchfrm').group.length > 0) 
				{    
				    for(i = 0; i <= document.getElementById('searchfrm').group.length; i++) 
				    {        
			        	if (document.getElementById('searchfrm').group[i].checked == true) 
			        	{
				            objectGroup = document.getElementById('searchfrm').group[i].value;            
				            break;
				        }
				    }
				}
				
				querys.push('group=' + objectGroup);
				
				if (moreStatus != '') querys.push('moreStatus=' + moreStatus);
				
				if (document.getElementsByName('startDate_month')[0] && document.getElementsByName('startDate_month')[0].options[document.getElementsByName('startDate_month')[0].selectedIndex].value != '') querys.push('startDate_month=' + document.getElementsByName('startDate_month')[0].options[document.getElementsByName('startDate_month')[0].selectedIndex].value);
				if (document.getElementsByName('startDate_day')[0] && document.getElementsByName('startDate_day')[0].options[document.getElementsByName('startDate_day')[0].selectedIndex].value != '') querys.push('startDate_day=' + document.getElementsByName('startDate_day')[0].options[document.getElementsByName('startDate_day')[0].selectedIndex].value);				
				if (document.getElementsByName('fishing')[0] && document.getElementsByName('fishing')[document.getElementsByName('fishing').length - 1].checked) querys.push('fishing=' + document.getElementsByName('fishing')[document.getElementsByName('fishing').length - 1].value);
				if (document.getElementsByName('rooms')[0] && document.getElementsByName('rooms')[document.getElementsByName('rooms').length - 1].value != '') querys.push('rooms=' + document.getElementsByName('rooms')[document.getElementsByName('rooms').length - 1].value);
				if (document.getElementsByName('duration')[0] && document.getElementsByName('duration')[document.getElementsByName('duration').length - 1].value != '') querys.push('duration=' + document.getElementsByName('duration')[document.getElementsByName('duration').length - 1].value);	
				if (document.getElementsByName('agency')[0] && document.getElementsByName('agency')[0].options[document.getElementsByName('agency')[0].selectedIndex].value != '') querys.push('agency=' + document.getElementsByName('agency')[0].options[document.getElementsByName('agency')[0].selectedIndex].value);
				if (document.getElementsByName('placeFilter')[0] && document.getElementsByName('placeFilter')[0].options[document.getElementsByName('placeFilter')[0].selectedIndex].value != '') querys.push('placeFilter=' + document.getElementsByName('placeFilter')[0].options[document.getElementsByName('placeFilter')[0].selectedIndex].value);
				
				if (changeOrder == 1 && document.getElementsByName('order')[0]) querys.push('order=' + document.getElementsByName('order')[0].options[document.getElementsByName('order')[0].selectedIndex].value);
				
				if (document.getElementsByName('fulltext')[0]) querys.push('fulltext=' + document.getElementsByName('fulltext')[0].value);		
				if (document.getElementById('showMethod')) querys.push('showMethod=' + document.getElementById('showMethod').value);
				if (document.getElementById('deleteSearchCriteria')) querys.push('deleteSearchCriteria=' + document.getElementById('deleteSearchCriteria').value);
				if (document.getElementById('specialAction')) querys.push('specialAction=' + document.getElementById('specialAction').value);
				if (document.getElementById('mapRadius') && document.getElementById('mapRadius').value != '') querys.push('mapRadius=' + document.getElementById('mapRadius').value);
				if (document.getElementById('mapScale') && document.getElementById('mapScale').value != '') querys.push('mapScale=' + document.getElementById('mapScale').value);
				if (document.getElementById('mapLatitude') && document.getElementById('mapLatitude').value != '') querys.push('mapLatitude=' + document.getElementById('mapLatitude').value);
				if (document.getElementById('mapLongitude') && document.getElementById('mapLongitude').value != '') querys.push('mapLongitude=' + document.getElementById('mapLongitude').value);		
				if (document.getElementById('detailObjectType') && document.getElementById('detailObjectType').value != '') querys.push('detailObjectType=' + document.getElementById('detailObjectType').value);		
				if (document.getElementById('price') && document.getElementById('price').value != '') querys.push('price=' + document.getElementById('price').value);		
		
				if (document.getElementById('requestType') && document.getElementById('requestType').value != '') querys.push('requestType=' + document.getElementById('requestType').value);
				if (document.getElementById('hiddenLocationID') && document.getElementById('hiddenLocationID').value != '') querys.push('hiddenLocationID=' + document.getElementById('hiddenLocationID').value);		
				if (document.getElementById('hiddenCountryID') && document.getElementById('hiddenCountryID').value != '') querys.push('hiddenCountryID=' + document.getElementById('hiddenCountryID').value);		
				if (document.getElementById('pricemin') && document.getElementById('pricemin').value != '') querys.push('pricemin=' + document.getElementById('pricemin').value);
				if (document.getElementById('prices') && document.getElementById('prices').value != '') querys.push('price=' + document.getElementById('prices').value);		
						
				//searchCriteria
				if (document.getElementsByName('detailHolidayPark')[0] && document.getElementsByName('detailHolidayPark')[0].checked) querys.push('detailHolidayPark=' + document.getElementsByName('detailHolidayPark')[0].value);
				if (document.getElementsByName('detailSeaview')[0] && document.getElementsByName('detailSeaview')[0].checked) querys.push('detailSeaview=' + document.getElementsByName('detailSeaview')[0].value);
				if (document.getElementsByName('detailWellness')[0] && document.getElementsByName('detailWellness')[0].checked) querys.push('detailWellness=' + document.getElementsByName('detailWellness')[0].value);
				if (document.getElementsByName('detailSwimming')[0] && document.getElementsByName('detailSwimming')[0].checked) querys.push('detailSwimming=' + document.getElementsByName('detailSwimming')[0].value);
				if (document.getElementsByName('detailBoat')[0] && document.getElementsByName('detailBoat')[0].checked) querys.push('detailBoat=' + document.getElementsByName('detailBoat')[0].value);
				if (document.getElementsByName('detailGolf')[0] && document.getElementsByName('detailGolf')[0].checked) querys.push('detailGolf=' + document.getElementsByName('detailGolf')[0].value);
				if (document.getElementsByName('detailTennis')[0] && document.getElementsByName('detailTennis')[0].checked) querys.push('detailTennis=' + document.getElementsByName('detailTennis')[0].value);
				if (document.getElementsByName('detailHeating')[0] && document.getElementsByName('detailHeating')[0].checked) querys.push('detailHeating=' + document.getElementsByName('detailHeating')[0].value);
				if (document.getElementsByName('detailAircondition')[0] && document.getElementsByName('detailAircondition')[0].checked) querys.push('detailAircondition=' + document.getElementsByName('detailAircondition')[0].value);
				if (document.getElementsByName('detailFireplace')[0] && document.getElementsByName('detailFireplace')[0].checked) querys.push('detailFireplace=' + document.getElementsByName('detailFireplace')[0].value);
				if (document.getElementsByName('detailSauna')[0] && document.getElementsByName('detailSauna')[0].checked) querys.push('detailSauna=' + document.getElementsByName('detailSauna')[0].value);
				if (document.getElementsByName('detailSolarium')[0] && document.getElementsByName('detailSolarium')[0].checked) querys.push('detailSolarium=' + document.getElementsByName('detailSolarium')[0].value);
				if (document.getElementsByName('detailRadio')[0] && document.getElementsByName('detailRadio')[0].checked) querys.push('detailRadio=' + document.getElementsByName('detailRadio')[0].value);
				if (document.getElementsByName('detailTV')[0] && document.getElementsByName('detailTV')[0].checked) querys.push('detailTV=' + document.getElementsByName('detailTV')[0].value);
				if (document.getElementsByName('detailSatTV')[0] && document.getElementsByName('detailSatTV')[0].checked) querys.push('detailSatTV=' + document.getElementsByName('detailSatTV')[0].value);
				if (document.getElementsByName('detailInternet')[0] && document.getElementsByName('detailInternet')[0].checked) querys.push('detailInternet=' + document.getElementsByName('detailInternet')[0].value);
				if (document.getElementsByName('detailPhone')[0] && document.getElementsByName('detailPhone')[0].checked) querys.push('detailPhone=' + document.getElementsByName('detailPhone')[0].value);
				if (document.getElementsByName('detailFax')[0] && document.getElementsByName('detailFax')[0].checked) querys.push('detailFax=' + document.getElementsByName('detailFax')[0].value);
				if (document.getElementsByName('detailDishwasher')[0] && document.getElementsByName('detailDishwasher')[0].checked) querys.push('detailDishwasher=' + document.getElementsByName('detailDishwasher')[0].value);
				if (document.getElementsByName('detailWasher')[0] && document.getElementsByName('detailWasher')[0].checked) querys.push('detailWasher=' + document.getElementsByName('detailWasher')[0].value);
				if (document.getElementsByName('detailDryer')[0] && document.getElementsByName('detailDryer')[0].checked) querys.push('detailDryer=' + document.getElementsByName('detailDryer')[0].value);
				if (document.getElementsByName('detailParking')[0] && document.getElementsByName('detailParking')[0].checked) querys.push('detailParking=' + document.getElementsByName('detailParking')[0].value);
				if (document.getElementsByName('detailGarage')[0] && document.getElementsByName('detailGarage')[0].checked) querys.push('detailGarage=' + document.getElementsByName('detailGarage')[0].value);
				if (document.getElementsByName('detailSkiing')[0] && document.getElementsByName('detailSkiing')[0].checked) querys.push('detailSkiing=' + document.getElementsByName('detailSkiing')[0].value);
				if (document.getElementsByName('detailPool')[0] && document.getElementsByName('detailPool')[0].checked) querys.push('detailPool=' + document.getElementsByName('detailPool')[0].value);
				if (document.getElementsByName('detailFishing')[0] && document.getElementsByName('detailFishing')[0].checked) querys.push('detailFishing=' + document.getElementsByName('detailFishing')[0].value);		
				if (document.getElementsByName('detailPetAllowed')[0] && document.getElementsByName('detailPetAllowed')[0].checked) querys.push('detailPetAllowed=' + document.getElementsByName('detailPetAllowed')[0].value);
				if (!document.getElementsByName('detailPetAllowed')[0])
				{
					if (document.getElementsByName('pets')[0] && document.getElementsByName('pets')[0].checked) querys.push('pets=' + document.getElementsByName('pets')[0].value);
					if (document.getElementsByName('pool')[0] && document.getElementsByName('pool')[0].checked) querys.push('pool=' + document.getElementsByName('pool')[0].value);
					if (document.getElementsByName('ski')[0] && document.getElementsByName('ski')[0].checked) querys.push('ski=' + document.getElementsByName('ski')[0].value);
					if (document.getElementsByName('tv')[0] && document.getElementsByName('tv')[0].checked) querys.push('tv=' + document.getElementsByName('tv')[0].value);
					if (document.getElementsByName('washer')[0] && document.getElementsByName('washer')[0].checked) querys.push('washer=' + document.getElementsByName('washer')[0].value);
				}
				if (document.getElementsByName('detailPersonsMax')[0] && document.getElementsByName('detailPersonsMax')[0].value != '') querys.push('detailPersonsMax=' + document.getElementsByName('detailPersonsMax')[0].value);
				if (document.getElementsByName('persons')[0] && document.getElementsByName('persons')[0].value != '') querys.push('persons=' + document.getElementsByName('persons')[0].value);				
				if (document.getElementsByName('detailSquaremeters')[0] && document.getElementsByName('detailSquaremeters')[0].value != '') querys.push('detailSquaremeters=' + document.getElementsByName('detailSquaremeters')[0].value);		
				if (document.getElementsByName('detailSquaremetersOutdoor')[0] && document.getElementsByName('detailSquaremetersOutdoor')[0].value != '') querys.push('detailSquaremetersOutdoor=' + document.getElementsByName('detailSquaremetersOutdoor')[0].value);
				if (document.getElementsByName('detailRoomSleeping')[0] && document.getElementsByName('detailRoomSleeping')[0].value != '') querys.push('detailRoomSleeping=' + document.getElementsByName('detailRoomSleeping')[0].value);
				if (document.getElementsByName('detailDistMarket')[0] && document.getElementsByName('detailDistMarket')[0].value != '') querys.push('detailDistMarket=' + document.getElementsByName('detailDistMarket')[0].value);
				if (document.getElementsByName('detailDistShops')[0] && document.getElementsByName('detailDistShops')[0].value != '') querys.push('detailDistShops=' + document.getElementsByName('detailDistShops')[0].value);
				if (document.getElementsByName('detailDistRestaurant')[0] && document.getElementsByName('detailDistRestaurant')[0].value != '') querys.push('detailDistRestaurant=' + document.getElementsByName('detailDistRestaurant')[0].value);
				if (document.getElementsByName('detailDistTouristinfo')[0] && document.getElementsByName('detailDistTouristinfo')[0].value != '') querys.push('detailDistTouristinfo=' + document.getElementsByName('detailDistTouristinfo')[0].value);
				if (document.getElementsByName('detailDistCity')[0] && document.getElementsByName('detailDistCity')[0].value != '') querys.push('detailDistCity=' + document.getElementsByName('detailDistCity')[0].value);
				if (document.getElementsByName('detailDistAirport')[0] && document.getElementsByName('detailDistAirport')[0].value != '') querys.push('detailDistAirport=' + document.getElementsByName('detailDistAirport')[0].value);
				if (document.getElementsByName('detailDistRailway')[0] && document.getElementsByName('detailDistRailway')[0].value != '') querys.push('detailDistRailway=' + document.getElementsByName('detailDistRailway')[0].value);
				if (document.getElementsByName('detailDistWater')[0] && document.getElementsByName('detailDistWater')[0].value != '') querys.push('detailDistWater=' + document.getElementsByName('detailDistWater')[0].value);
				if (document.getElementsByName('detailDistBeach')[0] && document.getElementsByName('detailDistBeach')[0].value != '') querys.push('detailDistBeach=' + document.getElementsByName('detailDistBeach')[0].value);
				if (document.getElementsByName('detailDistSwimming')[0] && document.getElementsByName('detailDistSwimming')[0].value != '') querys.push('detailDistSwimming=' + document.getElementsByName('detailDistSwimming')[0].value);
				if (document.getElementsByName('detailDistFishing')[0] && document.getElementsByName('detailDistFishing')[0].value != '') querys.push('detailDistFishing=' + document.getElementsByName('detailDistFishing')[0].value);
				if (document.getElementsByName('detailDistSki')[0] && document.getElementsByName('detailDistSki')[0].value != '') querys.push('detailDistSki=' + document.getElementsByName('detailDistSki')[0].value);
				if (document.getElementsByName('detailDistGolf')[0] && document.getElementsByName('detailDistGolf')[0].value != '') querys.push('detailDistGolf=' + document.getElementsByName('detailDistGolf')[0].value);
				if (document.getElementsByName('objectAgencyID')[0] && document.getElementsByName('objectAgencyID')[0].value != '') querys.push('objectAgencyID=' + document.getElementsByName('objectAgencyID')[0].value);
								
				if (jQuery("#objectAgencyIDs :selected").length && jQuery("#objectAgencyIDs").val() != '') querys.push('objectAgencyIDs[]=' + jQuery("#objectAgencyIDs").val().join('&objectAgencyIDs[]='));
				
				if (document.getElementsByName('objectCommercial')[0] && document.getElementsByName('objectCommercial')[0].value != '') querys.push('objectCommercial=' + document.getElementsByName('objectCommercial')[0].value);
				if (document.getElementsByName('detailStars')[0] && document.getElementsByName('detailStars')[0].value != '') querys.push('detailStars=' + document.getElementsByName('detailStars')[0].value);
				if (document.getElementsByName('objectRatingAverage')[0]) querys.push('objectRatingAverage=' + document.getElementsByName('objectRatingAverage')[0].value);
				if (jQuery("input[name='start']").val()) querys.push('start=' + jQuery("input[name='start']").val());
			}
			else
			{			
				querys.push('dontGetValues=1&sc=' + sc + '&rnd=' + Math.random(1,9999999));
			}
		
	        var showPlainMenueUrlAdd = '';
	        if (typeof plainViewEvents != 'undefined') {
	            if(plainViewEvents == true) showPlainMenueUrlAdd += 'plainViewEvents=1&';
	        }
	        if (typeof showPlainView != 'undefined') {
	            if(showPlainView == true) showPlainMenueUrlAdd += 'showPlainView=1&';
	        }
	        if (typeof doNotShowLocationList != 'undefined') {
	            if(doNotShowLocationList == true) showPlainMenueUrlAdd += 'doNotShowLocationList=1&';
	        }
			if (typeof titleInSelectbox != 'undefined') {
	            if(titleInSelectbox == true) showPlainMenueUrlAdd += 'titleInSelectbox=1&';
	        }
			if (typeof preloadSpecialHouses != 'undefined') {
	            if(preloadSpecialHouses == true) showPlainMenueUrlAdd += 'preloadSpecialHouses=1&';
	        }
			if (typeof objectShortView3 != 'undefined') {
	            if(objectShortView3 == true) showPlainMenueUrlAdd += 'objectShortView3=1&';
	        }
			if (typeof showHeadAboveLocationPath != 'undefined') {
	            if(showHeadAboveLocationPath == true) showPlainMenueUrlAdd += 'showHeadAboveLocationPath=1&';
	        }
			
			var scriptpath = "/xmlProcessing/preloadSearch.php?" + showPlainMenueUrlAdd + querys.join("&");
			var htmlhead = document.getElementsByTagName("head")[0];
			var script_id = "preloadSearch";
		
			if(document.getElementById(script_id)) {
				htmlhead.removeChild(document.getElementById(script_id));
			}
		
			var updatescript = document.createElement("script");
			updatescript.id = script_id;
			updatescript.src = scriptpath;
			htmlhead.appendChild(updatescript);
			
			if(typeof sc != 'undefined') {
	            sc++;
	            var urlsParts = document.location.href.split("#");
	            document.location.href =  urlsParts[0] + "#" + sc;
	        }
	        jQuery("input[name='start']").val(0);
	    }
    }
}

function openPage(page)
{	
	var max = null;
	max = jQuery("input[name='perSide']").val();	
	if (max == null || max < 0 || (page - 1) * max < 0) 
	{
		jQuery("input[name='start']").val(0);
		return true;
	}		
	jQuery("input[name='start']").val((page - 1) * max);	
	preLoadSearchResult();
	jQuery("input[name='start']").val(0);
	return false;
}

function changeBox(id)
{
	if (document.getElementById(id))
	{
		if (document.getElementById(id).style.display == 'none') 
		{
			document.getElementById(id).style.display = 'block';
			document.getElementById(id).style.visibility = 'visible';
			if (document.getElementById('arrow_' + id)) document.getElementById('arrow_' + id).src = '/img/arrow_bottom.gif';
		}
		else
		{ 
			document.getElementById(id).style.display = 'none';
			document.getElementById(id).style.visibility = 'hidden';
			if (document.getElementById('arrow_' + id)) document.getElementById('arrow_' + id).src = '/img/arrow_right.gif';
		}
	}
}

function searchSetValue(id, value, dontSet, noPreload)
{	
	if (document.getElementById(id))
	{ 	
		document.getElementById(id).value = value;
		document.getElementById(id).checked = true;
		document.getElementById('list_' + id).className = 'active';
		if (id == 'detailPersonsMax' && dontSet != true && document.getElementById('persons'))
		{
			document.getElementById('persons').selectedIndex = 0;
			for(i = 0; i < document.getElementById('persons').options.length; i++)
			{
				if (document.getElementById('persons').options[i].value == value) 
				{
					document.getElementById('persons').selectedIndex = i;
					break;
				}
			}
		}
		if (noPreload != true) preLoadSearchResult();
	}
}

function unsetMultiValue(id, value, dontSet, noPreload)
{	
	if (jQuery("#"+id).length)
	{ 		
		jQuery("#" + id + " :selected").each(function(i, selected){			
		  if(jQuery(selected).val() == value) jQuery(selected).attr('selected', false);
		});				
		if (noPreload != true) preLoadSearchResult();
	}
}

function selectSubmenu(id, value)
{
	var i = 0;
	if (document.getElementById('box_' + id))
	{			
		if (document.getElementById(id)) document.getElementById(id).value = value;
		if (document.getElementById('box_' + id + "_" + value))
		{
			var tempText = document.getElementById('box_' + id + "_" + value).getElementsByTagName('a')[0].innerHTML;
			searchCriteriaInnerhtmls['box_' + id] = document.getElementById('box_' + id).innerHTML;
			document.getElementById('box_' + id).innerHTML = '<li><b>' + tempText + '</b></li>';
			document.getElementById('arrow_box_' + id).src = '/img/arrow_right.gif';
		}
		/*
		for(i = 0; i < document.getElementById('box_' + id).getElementsByTagName('li').length; i++)
		{
			document.getElementById('box_' + id).getElementsByTagName('li')[i].style.display = 'none';						
		}
		if (document.getElementById('box_' + id + "_" + value)) 
		{
			document.getElementById('box_' + id + "_" + value).style.display = 'block';			
			document.getElementById('list_' + id).className = 'active';
		}
		*/
		//boxVisibilities['box_' + id] = 'none';
	}
}

function showMore(id)
{
	moreStatus = moreStatus + id + ',';
	for(i = 0; i < document.getElementById(id).getElementsByTagName('li').length; i++)
	{		
		if(document.getElementById(id) == document.getElementById(id).getElementsByTagName('li')[i].parentNode)
		{
			document.getElementById(id).getElementsByTagName('li')[i].style.display = 'block';						
			document.getElementById(id).getElementsByTagName('li')[i].style.visibility = 'visible';						
		}
	}
	document.getElementById('showMore_' + id).style.display = 'none';
	document.getElementById('showMore_' + id).style.visibility = 'hidden';
}

function showMoreSub(id)
{
	moreStatus = moreStatus + 'box_' + id + ',';
	for(i = 0; i < document.getElementById('box_' + id).getElementsByTagName('li').length; i++)
	{
		document.getElementById('box_' + id).getElementsByTagName('li')[i].style.display = 'block';						
		document.getElementById('box_' + id).getElementsByTagName('li')[i].style.visibility = 'visible';						
	}
	document.getElementById('showMore_' + id).style.display = 'none';
	document.getElementById('showMore_' + id).style.visibility = 'hidden';
}

function changeSubmenu(id)
{	
	if (document.getElementById(id.split('box_').join('')))
	{
		document.getElementById(id.split('box_').join('')).value = '';
	}
	if (document.getElementById(id))
	{	
		if (boxVisibilities[id] == 'block' || typeof(boxVisibilities[id]) == 'undefined') 
		{
			boxVisibilities[id] = 'none';
			document.getElementById('arrow_' + id).src = '/img/arrow_right.gif';
		}
		else
		{
			document.getElementById('arrow_' + id).src = '/img/arrow_bottom.gif';
			boxVisibilities[id] = 'block';
		}			
		
		if (typeof searchCriteriaInnerhtmls[id] != 'undefined' && searchCriteriaInnerhtmls[id] != '')
		{
			document.getElementById(id).innerHTML = searchCriteriaInnerhtmls[id];
			searchCriteriaInnerhtmls[id] = '';
		}
		else
		{
			for(i = 0; i < document.getElementById(id).getElementsByTagName('li').length; i++)
			{
				if (document.getElementById(id).getElementsByTagName('li')[i].style.visibility != 'hidden')
				{
					document.getElementById(id).getElementsByTagName('li')[i].style.display = boxVisibilities[id];
				}
			}
		}
	}
}

function unSetCheckbox(field, field2)
{
	if (document.getElementById(field)) document.getElementById(field).checked = false;
	if (field2 != '' && document.getElementById(field2)) document.getElementById(field2).checked = false;
	preLoadSearchResult();
}

function priceRequest()
{
	if (document.getElementById('durationSelect') && document.getElementById('cl1Day') && document.getElementById('cl1Month'))
	{
		var duration = document.getElementById('durationSelect').value;
		var startDate_day = document.getElementById('cl1Day').value;
		var startDate_month = document.getElementById('cl1Month').value;
		var persons = document.getElementById('pricePersons').value;
		
		if(typeof document.getElementById('hiddenLatitude') != 'undefined') var latitude = document.getElementById('hiddenLatitude').value;
		else var latitude = '';
		if(typeof document.getElementById('hiddenLongitude') != 'undefined') var longitude = document.getElementById('hiddenLongitude').value;
		else var longitude = '';
		
		//alert(latitude + ' ' + longitude);
		
		if (duration != '' && startDate_day != '' && startDate_month != '' && persons != '')
		{
			var scriptpath = "/xmlProcessing/priceRequest.php?objectNumber=" + objectNumber + '&startDate_day=' + startDate_day + '&startDate_month=' + startDate_month + '&duration=' + duration + '&persons=' + persons + '&latitude=' + latitude + '&longitude=' + longitude;
			var htmlhead = document.getElementsByTagName("head")[0];
			var script_id = "priceRequestScript";
	
			if(document.getElementById(script_id)) {
			htmlhead.removeChild(document.getElementById(script_id));
			}
	
			var updatescript = document.createElement("script");
			updatescript.id = script_id;
			updatescript.src = scriptpath;
			htmlhead.appendChild(updatescript);
		}
	} 
}


function searchSubmit()
{
	querys = new Array();
	levelIDs = new Array();
	if (document.getElementById('sfCountry') && document.getElementById('sfCountry').options[document.getElementById('sfCountry').selectedIndex].value != '') querys.push('country=' + document.getElementById('sfCountry').options[document.getElementById('sfCountry').selectedIndex].value);
	if (document.getElementById('sfLevel1') && document.getElementById('sfLevel1').length > 0 && document.getElementById('sfLevel1').options[document.getElementById('sfLevel1').selectedIndex].value != '') querys.push('level1=' + document.getElementById('sfLevel1').options[document.getElementById('sfLevel1').selectedIndex].value);
	if (document.getElementById('sfLevel2') && document.getElementById('sfLevel2').length > 0 && document.getElementById('sfLevel2').options[document.getElementById('sfLevel2').selectedIndex].value != '') querys.push('level2=' + document.getElementById('sfLevel2').options[document.getElementById('sfLevel2').selectedIndex].value);
	if (document.getElementById('sfLevel3') && document.getElementById('sfLevel3').length > 0 && document.getElementById('sfLevel3').options[document.getElementById('sfLevel3').selectedIndex].value != '') querys.push('level3=' + document.getElementById('sfLevel3').options[document.getElementById('sfLevel3').selectedIndex].value);
	if (document.getElementById('sfLevel4') && document.getElementById('sfLevel4').length > 0 && document.getElementById('sfLevel4').options[document.getElementById('sfLevel4').selectedIndex].value != '') querys.push('level4=' + document.getElementById('sfLevel4').options[document.getElementById('sfLevel4').selectedIndex].value);
	
	if (document.getElementById('requestType') && document.getElementById('requestType').value == 'map')
	{
		if (document.getElementById('longitude') && document.getElementById('longitude').value != '') querys.push('longitude=' + document.getElementById('longitude').value);
		if (document.getElementById('latitude') && document.getElementById('latitude').value != '') querys.push('latitude=' + document.getElementById('latitude').value);			
	}
	
	if (document.getElementById('quick_requestType') && document.getElementById('quick_requestType').value == 'map')
	{
		if (document.getElementById('quick_longitude') && document.getElementById('quick_longitude').value != '') querys.push('longitude=' + document.getElementById('quick_longitude').value);
		if (document.getElementById('quick_latitude') && document.getElementById('quick_latitude').value != '') querys.push('latitude=' + document.getElementById('quick_latitude').value);			
	}
	
	if (document.getElementById('hiddenLocationID') && document.getElementById('hiddenLocationID').value != '') querys.push('hiddenLocationID=' + document.getElementById('hiddenLocationID').value);
	if (document.getElementById('quick_hiddenLocationID') && document.getElementById('quick_hiddenLocationID').value != '') querys.push('hiddenLocationID=' + document.getElementById('quick_hiddenLocationID').value);
	if (document.getElementById('hiddenCountryID') && document.getElementById('hiddenCountryID').value != '') querys.push('hiddenCountryID=' + document.getElementById('hiddenCountryID').value);
	if (document.getElementById('quick_hiddenCountryID') && document.getElementById('quick_hiddenCountryID').value != '') querys.push('hiddenCountryID=' + document.getElementById('quick_hiddenCountryID').value);
	if (document.getElementById('txt_input') && document.getElementById('txt_input').value != '' && document.getElementById('txt_input').value != Translations[languageCode]['searchChooseTarget']) querys.push('fulltext=' + document.getElementById('txt_input').value);	
	
	if (querys.length == 0)
	{		
		setLayerHead(Translations[languageCode]['searchNoCriteriaTitle']);		
		//setLayerText('<p>' + Translations[languageCode]['searchNoCriteriaTitleText'] + '</p><p style="margin-bottom: 10px; margin-top: 5px"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpText.jpg"></p><p>' + Translations[languageCode]['searchNoCriteriaTitleMap'] + '</p><p style="margin-bottom: 10px;"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpMap.jpg"></p><p><input type="button" value="' + Translations[languageCode]['OK'] + '" onclick="hideLayer(); return false;" /></p>');		
		setLayerText('<p>' + Translations[languageCode]['searchNoCriteriaTitleText'] + '</p><p style="margin-bottom: 10px; margin-top: 5px"><img style="margin-left: 15px; border: 2px solid #FFF;" src="/img/searchHelpText.png"></p><p><input type="button" value="' + Translations[languageCode]['OK'] + '" onclick="hideLayer(); return false;" /></p>');		
		setLayerStyle('default', 'default', '470px', 'default', 'default', 'default');		
		showLayer();						
		return false;
	}
		
	showSearchLayer();
	allowedSubmit=true;
	
	if(typeof document.searchfrm.submit == 'function') {				
		document.searchfrm.submit();
	} else if(typeof jQuery == 'function') {
		$('#searchfrm').submit();		
	}
}

function abortPreload() {	
	var htmlhead = document.getElementsByTagName("head")[0];
	if(typeof document.getElementById("preloadSearch") != "undefined") {
		htmlhead.removeChild(document.getElementById("preloadSearch"));
	}		
}

function resetValue(field) {
	if(typeof document.getElementById(field) != 'undefined') document.getElementById(field).value = '';
}
