var g_objects = new Array();
var choosenfavs = new Array();
var compToCount = new Array();
var compToHotelCount = new Array();
var compToHotelOpenedCucs = [];
var popupBlocked = false;
var compToHotelActive = [];
var compToActive = new Array();
var firstinEM = 0;
var firstinPW = 0;
var firstinEM1 = 0;

var expediaspecial1 = false;
var binolispecial1 = false;
var historyelements = 0;

function _showhide (e, c)
{
	Effect.toggle($(e+'content'), 'blind', {duration: 0.5});
	c.className  = ($(e+'content').style.display == 'none') ? 'flap_open' : 'flap_close';
}

function _hideshow (e, effect)
{
	if (effect == 0)
	{
		if ($(e).style.display == 'none') $(e).show();
		else $(e).hide();
	}
	else Effect.toggle(e, 'blind', { duration: 0.5 });
}

function _sendResult(jsids,resultid, type)
{
	new Ajax.Request( "/sendresult/"+lang+"/index.html",
	{
		method:'get', parameters: {
			jsids: jsids,
			who: type,
			resultid: resultid
		},
		onSuccess: function(data)
		{
			$('sendResult').innerHTML = data.responseText;
			showOverlay('sendResult');
			//new Effect.Appear('sendResult');
		}
	});
}

function showhideFT()
{
	if($('ftopen').style.display == "none")
	{
		$('ftclose').style.display = 'none';
		$('ftopen').style.display = 'inline';
		new Effect.BlindDown('srfarealert');
	}
	else
	{
		$('ftclose').style.display = 'inline';
		$('ftopen').style.display = 'none';
		new Effect.BlindUp('srfarealert');
	}
}

function resetFareAlert()
{
	$('ftclose').style.display = 'inline';
	$('ftopen').style.display = 'none';
	new Effect.BlindUp('srfarealert');
	window.setTimeout("resetFareAlertText()", 2000);
}
function resetFareAlertText()
{
	$('ftinfotxt').innerHTML = "Setzen Sie den Preisalarm f�r Ihre aktuelle Suchanfrage, damit wir Sie im Falle eines biligeren Angebotes alarmieren k�nnen!";
}

function _showFareAlert()
{
	var depCode1 	= 'false';
	var depDate1 	= 'false';
	var retCode1 	= 'false';
	var retDate1 	= 'false';
	var passengers1 = 'false';
	var class1 		= 'false';
	var withpr1 	= 'false';

	if(arguments.length >= 4)
	{
		var type1 = arguments[0];
		var action1 = arguments[1];
		var user1 = arguments[2];
		var resid1 = arguments[3];
	}
	if(arguments.length >= 10)
	{
		var searchid1 = arguments[4];
		var passengers1 = arguments[5];
		var class1 = arguments[6];
		var depCode1 = arguments[7];
		var depDate1 = arguments[8];
		var retDate1 = "00000000";
		var retCode1 = arguments[9];
		var oneway1 = "ow";
	}
	if(arguments.length >= 11)
	{
		var retDate1 = arguments[10];
		var oneway1 = "rt";
	}
	if(action1 == "insert")
	{
		var dday1 = depDate1.substr(0,2);
		var dmonth1 = depDate1.substr(2,2);
		var dyear1 = depDate1.substr(4,4);
		var rday1 = retDate1.substr(0,2);
		var rmonth1 = retDate1.substr(2,2);
		var ryear1 = retDate1.substr(4,4);
		var adults1 = passengers1.substr(0,1);
		var children1 = passengers1.substr(2,1);
		var infants1 = passengers1.substr(4,1);

		var send1 = false;

		if($('ftradioday').checked  == true)
		{
			send1 = "day";
		}
		if($('ftradioweek').checked  == true)
		{
			send1 = "week";
		}
		if($('ftradiocheap').checked == true)
		{
			var withpr1 = 'true';
			send1 = "day";
		}

		if(send1 == false)
		{
			$('ftradioweektxt').style.color = "#FF0000";
			$('ftradiodaytxt').style.color = "#FF0000";
			$('ftradiocheaptxt').style.color = "#FF0000";
			return false;
		}
		depCode1 = "("+depCode1+")";
		retCode1 = "("+retCode1+")";

		new Ajax.Request( "/php/writeFareAlert.php",
		{
			method:'get', parameters: {
				dep: depCode1,
				arr: retCode1,
				dday: dday1,
				dmonth: dmonth1,
				dyear: dyear1,
				rday: rday1,
				rmonth: rmonth1,
				ryear: ryear1,
				adults: adults1,
				children: children1,
				infants: infants1,
				cabin: class1,
				oneway: oneway1,
				send: send1,
				user: user1,
				action: action1,
				resid: resid1,
				searchid: searchid1,
				withpr: withpr1
			},
			onSuccess: function(data)
			{
				if(data.responseText == "done")
				{
					$('ftinfotxt').innerHTML = "<span class=\"br8\" ><br /></span><span class=\"ftsucess\">Preisalarm wurde gespeichert!</span>";
					 window.setTimeout("resetFareAlert()", 2000);
				}
			}
		});
	}
	else
	{
		new Ajax.Request( "/farealert/"+lang+"/index.html",
		{
			method:'get', parameters: {
				type: type1,
				action: action1,
				user: user1,
				resid: resid1,
				depCode: depCode1,
				depDate: depDate1,
				retCode: retCode1,
				retDate: retDate1,
				ftclass: class1,
				ftpassengers: passengers1
			},
			onSuccess: function(data)
			{
				check = data.responseText.substr(0,18)
				if(check == '<div>toomuch</div>'){
					text = data.responseText.replace(/<div>toomuch/,'<div style="display:none">toomuch');
					$('fareAlertNo').innerHTML = text;
				//	new Effect.Appear('fareAlertNo');
					showOverlay('fareAlertNo');
				}
				else{
					$('fareAlert').innerHTML = data.responseText;
					//new Effect.Appear('fareAlert');
					showOverlay('fareAlert');
				}
				data.responseText.evalScripts();
				initOverlays = false;
				init();
				initOverlays = true;
			}
		});
	}
}

function _checkFareAlert()
{
	var doc = document.fal;
	var oneway = '';
	var send = '';

	var departure 	= doc.dept.value;
	var arrival 	= doc.arrt.value;
	var depd 		= doc.depd.value;
	var depym 		= doc.depym.value;
	var retd 		= doc.retd.value;
	var retym		= doc.retym.value;
	var ow			= doc.ow.value;
	var rt			= doc.rt.value;
	var depDate		= doc.depDate.value;
	var retDate		= doc.retDate.value;
	var adults		= parseInt(doc.adults.value);
	var children	= parseInt(doc.children.value);
	var infants		= parseInt(doc.infants.value);
	var cabin		= doc.cabin.value;
	var time		= doc.time.value;
	var user		= doc.userfare.value;
	var action		= doc.actionfare.value;
	var resid		= doc.resid.value;

	reg = new RegExp('[\(\{]([A-Z]{3})[\)\}]');
	res = (reg.test(departure));

	reg1 = new RegExp('[\(\{]([A-Z]{3})[\)\}]');
	res1 = (reg1.test(arrival));

	var dday = depd;
	var dmonth = depym.substring(4,6);
	var dyear = depym.substring(0,4);

	var rday = retd;
	var rmonth = retym.substring(4,6);
	var ryear = retym.substr(0,4);

	var ddate = new Date(dyear, dmonth, dday);
	var rdate = new Date(ryear, rmonth, rday);
	var now = new Date();


	if(now > ddate){
		return false;
	}

	if(ddate > rdate){
		return false;
	}

	var others = infants+children;
	if(others > adults){
		return false;
	}

	if (doc.ow.checked == true) oneway = 'ow';
	else oneway = 'rt';

	if(doc.day.checked == true) send = 'day';
	else send = 'week';

	new Ajax.Request( "/php/writeFareAlert.php",
	{
		method:'get', parameters: {
			dep: departure,
			arr: arrival,
			dday: dday,
			dmonth: dmonth,
			dyear: dyear,
			rday: rday,
			rmonth: rmonth,
			ryear: ryear,
			adults: adults,
			children: children,
			infants: infants,
			cabin: cabin,
			oneway: oneway,
			send: send,
			user: user,
			action: action,
			resid: resid
		},
		onSuccess: function(data)
		{
			if (data.responseText == 'done')
			{
				new Ajax.Request( "/php/getFareAlerts.php", {
					method:'get', parameters: {
						user: user,
						lang: lang
					},
					onSuccess: function(transport)
					{
					//	new Effect.Fade('fareAlert');
						hideOverlays();
						$('alert').innerHTML = transport.responseText;
					}
				});
			}//if
		}
	});
}//if

function _deleteFareAlert(action, user, resid)
{
	new Ajax.Request( "/php/getFareAlerts.php", {
		method:'get', parameters: {
			action: action,
			user: user,
			resid: resid,
			lang: lang
		},
		onSuccess: function(transport)
		{
			new Effect.Fade('fareAlert');
			$('alert').innerHTML = transport.responseText;
		}
	});
}

/**
 * Display search result details.
 *
 * @param jsids		List of unique result IDs.
 * @param resultid	Unique result ID (of the current result item).
 * @param type		Either 'start' or a the name of the tab (div container) to be displayed.
 * @param product	Either 'cars', 'hotels' or default ('flights').
 * @param action	Either 'toggle' or undefined.
 * @param startTab	Optional name of the tab to be displayed when type equals 'start'.
 * @return
 */
function _details (jsids, resultid, type, product, action, startTab)
{
	if ($('details'+resultid) != null)
	{
		if ($('details'+resultid).style.display != 'none' && action == 'toggle')
		{
			new Effect.BlindUp ($('details'+resultid));
			$('result'+resultid).className = 'result';
			$('detailsLink'+resultid).className = 'details';
			return true;
		}

		if ($('details'+resultid).innerHTML == '')
		{
			if 		(product == 'cars') 	path = "mietwagendetails";
			else if (product == 'hotels')	path = "hotelsuchdetails";
			else							path = "flugsuchdetails";

			new Ajax.Request( "/"+path+"/"+lang+"/index.html?"+jsids, {
				method:'get',
				onSuccess: function(data) {
					$('details'+resultid).innerHTML = data.responseText;
					_detailsTabs (resultid, type, action, product, startTab);
				}
			});
		}
		else _detailsTabs (resultid, type, action, product, startTab);
	}
	else _detailsTabs (resultid, type, action, product, startTab);
}

/**
 * Display result tab screens.
 *
 * @param resultid 	Unique result ID.
 * @param type		Either 'start' or a the name of the tab (div container) to be displayed.
 * @param action
 * @param product	Either 'cars', 'hotels' or default ('flights').
 * @param startTab	Optional name of the tab to be displayed when type equals 'start'.
 */
function _detailsTabs (resultid, type, action, product, startTab)
{
	// Reset top Tabs
	$$('.topMenu_a').each(function(item) {
		item.className = 'topMenu';
	});

	if (product == 'cars')
	{
		$("resultdetails"+resultid).hide();
		$("map"			 +resultid).hide();
		$("contact"	  	 +resultid).hide();
		$("bookingnotes" +resultid).hide();
	}
	if (product == 'flights')
	{
		$("flightdetails"+resultid).hide();
		$("otherOffers"  +resultid).hide();
		$("contact"	  	 +resultid).hide();
		$("bookingnotes" +resultid).hide();
	}
	if (product == 'hotels')
	{
		$("detailscontainer"+resultid).hide();
		$("fotocontainer"  	+resultid).hide();
		$("mapcontainer"  	+resultid).hide();
		$("companycontainer"+resultid).hide();
		$("revcontainer"	+resultid).hide();
	}


	if (type == 'start') { //initialize and show detailscontainer

		if(startTab === undefined){ //show default start tab
			index = (navigator.userAgent.toLowerCase().indexOf("msie") <= -1) ? 1 : 0;
			$('tabbar'+resultid).childNodes[index].className = 'topMenu_a';

			if 		(product == 'cars') 	$("resultdetails"+resultid).show();
			else if (product == 'hotels')	$("detailscontainer"+resultid).show();
			else							$("flightdetails"+resultid).show();

		}else{	//show specified start tab

			$(startTab+resultid).show();

			//take care that tab menu is formatted accordingly
			if(startTab == 'detailscontainer'){
				$('tabMenu1_'+resultid).className="topMenu_a";
			}else if(startTab == 'fotocontainer'){
				$('tabMenu2_'+resultid).className="topMenu_a";
			}else if(startTab == 'mapcontainer'){
				$('tabMenu3_'+resultid).className="topMenu_a";
			}else if(startTab == 'companycontainer'){
				$('tabMenu4_'+resultid).className="topMenu_a";
			}else if(startTab == 'revcontainer'){
				$('tabMenu5_'+resultid).className="topMenu_a";
			}
		}

	}else{ //show specified tab

		$(type+resultid).show();
	}

	if ($('details'+resultid) != null)
	{
		temp = $('details'+resultid);
		if (temp.style.display == 'none') new Effect.BlindDown(temp, {duration: 0.5});
		$('result'+resultid).className = 'resultOpen';
		$('detailsLink'+resultid).className = 'details_a';
	}
}

function _bookPage (jsids, product)
{
	if (product == 'flights') p = 'buchen';
	if (product == 'hotels'	) p = 'hotelbuchen';
	if (product == 'cars'	) p = 'autobuchen';

	var dateobject = new Date();
	jetzt = dateobject.getTime();
	if (jetzt - searchstart > 1800000)
	{
		$('tooold').show();
		return false;
	}
	window.open ("/"+p+"/"+lang+"/index.html?"+jsids, 'bookpage');
}

function showsettings ()
{
	p = JSLanguage['commonjs']['einstellungen'];

	_page('settings', lang, 'index');
	new Ajax.Request( "/"+p+"/"+lang+"/index.html", {
		method:'get',
		onSuccess: function(transport)
		{
			$('einstellungen').innerHTML = transport.responseText;
			showOverlay ('einstellungen');
			initOverlays = false;
			init();
			initOverlays = true;
		}
	});
}
function closesettings ()
{
	new Effect.Fade($('overlay_settings'))
	hideiframe();
}

function hideiframe ()
{
	$("hvrShm").style.visibility = "hidden";
}
function hideiframe2 ()
{
	$("hvrShm2").style.visibility = "hidden";
}
function showiframe(x, y, w, h)
{
	var i = $('hvrShm');
	i.style.left = x+'px';
	i.style.top = y+'px';
	i.style.width = w+'px';
	i.style.height = h+'px';
	i.style.visibility = 'visible';
	i.show();
}

function _showflash( url, flashparms, bgcolor, width, height, id, wmode )
{
	document.write ('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+width+'" height="'+height+'" id="'+id+'">');
	document.write ('<param name="movie" value="'+url+'">');
	document.write ('<param name="quality" value="high">');
	if (wmode != 'false') document.write ('<param name="wmode" value="transparent">');
	document.write ('<param name="FlashVars" value="'+flashparms+'">');
	document.write ('<param name="bgcolor" value="'+bgcolor+'"> ');
	if (wmode != 'false')
		document.write ('<embed src="'+url+'" FlashVars="'+flashparms+'" wmode="transparent" quality="high" bgcolor="'+bgcolor+'" width="'+width+'" height="'+height+'" name="'+id+'" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>');
	else
		document.write ('<embed src="'+url+'" FlashVars="'+flashparms+'" quality="high" bgcolor="'+bgcolor+'" width="'+width+'" height="'+height+'" name="'+id+'" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>');
	document.write ('</object>');
}

function _getobj( b,n )
{
	var m_doc = b ? b.document : document;

	if (typeof( g_objects[ n ] ) == 'undefined')
	{
		if (m_doc.getElementById)
			g_objects[ n ] = m_doc.getElementById( n );
		else if (m_doc.all)
			g_objects[ n ] = m_doc.all[ n ];
		else if (m_doc.layers)
			g_objects[ n ] = m_doc.layers[ n ];
		else if (m_doc.images)
			g_objects[ n ] = m_doc.images[ n ];
	}
	return g_objects[ n ];
}
function _showhide2( b,n,show )
{
	var m_obj = _getobj( b,n );
	if (!m_obj) return;
	m_obj.style.display = show ? '' : 'none';
	m_obj.visibility = show ? 'visible' : 'hidden';
}

var filter_slider_price = null;
function initPriceSlider (bla)
{
	if (filter_slider_price != null && newCurr == false && resetfilter == false) return true;

	min = ~~1 * data.filter.price.min;
	max = ~~1 * data.filter.price.max;

	$('f_p_min').innerHTML='min. '+min;
	$('f_p_max').innerHTML='max. '+max;

    filter_slider_price = new Control.Slider(['pricepointer2'],'priceslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
		sliderValue:[max],

		onChange:function(v){
        	//var a = parseInt(v.toFixed());
        	var a = ~~ 1 *v.toFixed();
			filter_p_max = a;
			$('f_p_max').innerHTML = 'max. '+a;
			_track (bla, 'filter', 'price');
			filtered = 'true';
			getData2(actsort);
        },
		onSlide:function(v){
			$('f_p_max').innerHTML='max. '+parseInt(v.toFixed());
        }
	});
}

var filter_slider_review = null;
function initReviewSlider(str)
{
	if (filter_slider_review != null && resetfilter == false) return true;

	min = ~~1 * data.filter.review.min;
	max = ~~1 * data.filter.review.max;

	$('f_r_min').innerHTML='min. '+min;
	$('f_r_max').innerHTML='max. '+max;

    filter_slider_review = new Control.Slider(['revpointer1','revpointer2'],'revslider',
    {
    	axis:'horizontal',
    	range:$R(0,max),
		sliderValue:[min,max],
		restricted: false,

		onChange:function(v){
	    	var a = parseInt(v[0].toFixed());
	    	var b = parseInt(v[1].toFixed());
	    	//ensure that the left marker always changes min value and vice versa
	    	var curMin= a<b ? a:b;
	    	var curMax= b>a ? b:a;

			filter_r_min = curMin;
			$('f_r_min').innerHTML = 'min. '+curMin;

			filter_r_max = curMax;
			$('f_r_max').innerHTML = 'max. '+curMax;

			_track (str, 'filter', 'review');
			filtered = 'true';
			getData2('category');
	    },
		onSlide:function(v){
	    	var a = parseInt(v[0].toFixed());
	    	var b = parseInt(v[1].toFixed());
	    	//ensure that the left marker always changes min value and vice versa
	    	var curMin= a<b ? a:b;
	    	var curMax= b>a ? b:a;
	    	$('f_r_min').innerHTML='min. '+curMin;
			$('f_r_max').innerHTML='max. '+curMax;
	    }
	});
}

function toggleReviewSliderStatus(){
	if(filter_slider_review.disabled)
		filter_slider_review.setEnabled();
	else
		filter_slider_review.setDisabled();
}

function modfilter (which, state)
{
	$(which+'_takeoff').hide();
	$(which+'_landing').hide();
	$(which+'_'+state).show();

	if (which == 'd1')		filter_d1_type = state;
	if (which == 'r1')		filter_r1_type = state;
	if (which == 'leg1')	filter_leg1_type = state;
	if (which == 'leg2')	filter_leg2_type = state;
	if (which == 'leg3')	filter_leg3_type = state;
	if (which == 'leg4')	filter_leg4_type = state;

	getData2(actsort);

	_track ('flugsuche', 'filter', 'time');
}

function getNearbySwoodooCities (type)
{
	if (login == false)
	{
		showOverlay ('loginwarning');
		$(type+'nearby').checked = false;
		return false;
	}

	if ( $('depFlex').value != 0 || $('retFlex').value != 0 )
	{
		$(type+'nearby').checked = false;
		showOverlay ('nearbyflexwarning');
		return false;
	}

	fieldName = (type == 'from') ? 'dept' : 'arrt';
	if ($(type+'nearby').checked == true)
	{
		if ($(fieldName).value.length < 3)
		{
			showOverlay ('nearbywarning');
			$(type+'nearby').checked = false;
		}
		else
		{
			var ex = /[\(]([A-Z]{3})[\)]/;
			ex.exec(($(fieldName).value));
			code = RegExp.$1;

			//if (code.length) gimmesomecities (code);
			if (code.length == 3)
			{
				new Ajax.Updater( $("nearby"+type), "/getNearbySwoodooCities.php?input="+code+'&type='+type, {
					method:'get',
					onSuccess: function(transport)
					{
						$("nearby"+type).style.left = ($(fieldName).offsetLeft+2)+'px';
						$("nearby"+type).style.top = ($(fieldName).offsetTop+$(fieldName).offsetHeight)+'px';
						$("nearby"+type).show();

						var i = $('hvrShm2');
						i.style.left = $("nearby"+type).offsetLeft+'px';
						i.style.top = $("nearby"+type).style.top;
						i.style.width = ($("nearby"+type).offsetWidth-10)+'px';
						i.style.height = $("nearby"+type).offsetHeight+'px';
						i.style.visibility = 'visible';
						i.show();
					}
				});
			}
			else
			{
				showOverlay ('nearbywarning');
				$(type+'nearby').checked = false;
			}
		}
	}
}
function checkNumSwoodooAirports (t, lim)
{
	howmuch = 0;
	for (i=0; i<lim; i++)
	{
		if ($(t+'alt'+i).disabled == true) continue;
		checked = $(t+'alt'+i).checked;
		if (checked) howmuch++;
	}
	if (howmuch > 4)
	{
		alert (unescape(JSLanguage['commonjs']['howmuch']));
	}
	else
	{
		if (howmuch == 0) $(t+'nearby').checked = false;
		hideiframe2();
		$('nearby'+t).hide();
	}
}

function getNearbyCities (type)
{
	if (login == false)
	{
		showOverlay ('loginwarning');
		$(type+'nearby').checked = false;
		_page ('flugsuche', lang, type+'nearbyloginwarning');
		return false;
	}
	if ( $('depFlex').value != 0 || $('retFlex').value != 0 )
	{
		$(type+'nearby').checked = false;
		showOverlay ('nearbyflexwarning');
		_page ('flugsuche', lang, type+'nearbyflextogetherwarning');
		return false;
	}

	fieldName = (type == 'from') ? 'dept' : 'arrt';
	if ($(type+'nearby').checked == true)
	{
		if ($(fieldName).value.length < 3)
		{
			showOverlay ('nearbywarning');
			$(type+'nearby').checked = false;
			_page ('flugsuche', lang, type+'nearbywithoutcityname');
		}
		else
		{
			var ex = /[\(\{]([A-Z]{3})[\)\}]/;
			ex.exec(($(fieldName).value));
			code = RegExp.$1;

			//if (code.length) gimmesomecities (code);
			if (code.length == 3)
			{
				new Ajax.Updater( $("nearby"+type), "/getnearbycities.php?input="+code+'&type='+type, {
					method:'get',
					onSuccess: function(transport)
					{
						$("nearby"+type).style.left = ($(fieldName).offsetLeft+2)+'px';
						$("nearby"+type).style.top = ($(fieldName).offsetTop+$(fieldName).offsetHeight)+'px';
						$("nearby"+type).show();

						var i = $('hvrShm2');
						i.style.left = $("nearby"+type).offsetLeft+'px';
						i.style.top = $("nearby"+type).style.top;
						i.style.width = ($("nearby"+type).offsetWidth-10)+'px';
						i.style.height = $("nearby"+type).offsetHeight+'px';
						i.style.visibility = 'visible';
						i.show();
					}
				});
				_page ('flugsuche', lang, 'get'+type+'nearbycities');
			}
			else
			{
				showOverlay ('nearbywarning');
				$(type+'nearby').checked = false;
				_page ('flugsuche', lang, type+'nearbywithoutcityname');
			}
		}
	}
}
function checkNumCities (t, lim)
{
	howmuch = 0;
	for (i=0; i<lim; i++)
	{
		if ($(t+'alt'+i).disabled == true) continue;
		checked = $(t+'alt'+i).checked;
		if (checked) howmuch++;
	}
	if (howmuch > 4)
	{
		_page('flugsuche', lang, 'toomanynearbycities');
		//if (lang == 'de') alert (unescape('Sie k%F6nnen maximal 4 St%E4dte ausw%E4hlen, bitte %FCberpr%FCfen!!')); // added by ms
		//if (lang == 'en') alert ('You can choose up to four additional cities, please check!'); // added by ms
		//if (lang == 'pl') alert (unescape('Sie k%F6nnen maximal 4 St%E4dte ausw%E4hlen, bitte %FCberpr%FCfen!!')); // added by ms
		alert (unescape(JSLanguage['commonjs']['howmuch']));
	}
	else
	{
		if (howmuch == 0) $(t+'nearby').checked = false;
		//$('searchsubmit').disabled = false;
		hideiframe2();
		$('nearby'+t).hide();
		_page('flugsuche', lang, 'nearbycityok');
	}
}
var currentpage = 'x';
function checklogin (what)
{
	if (login == false && what != 'multicity')
	{
		/*$('loginwarning').show();*/
		showOverlay('loginwarning');
		if (what != 'multicity') $(what).selectedIndex = 0;
		else $('searchsubmit').disabled = true;
		_page('flugsuche', lang, 'loginwarning');
	}
	if (what != 'multicity' && login == true && ($('fromnearby').checked == true || $('tonearby').checked == true))
	{
		$(what).selectedIndex = 0;
		$('nearbyflexwarning').show();
		_page('flugsuche', lang, 'nearbyflexwarning');
	}
	if (login == false && what == 'multicity')
	{
		currentpage = 'mc';
		/*$('loginwarning').show();*/
		showOverlay('loginwarning');
		$('sub').disabled = true;
		_page('flugsuche', lang, 'loginwarning');
	}
}

function CheckInput (mail)
{
	if (mail == '') res = false;
	else
	{
		reg = new RegExp('^([a-zA-Z0-9\-\.\_]+)(\@)([a-zA-Z0-9\-\_\�\�\�\�\�\�]+)(\.)([a-zA-Z\.]+)$');
		res = (reg.test(mail));
	}
	if (res == false)
	{
		$('checkdata1').show();
		return false;
	}
	else
	{
		document.service.submit();
		return true;
	}
}
function CheckPhone (nr)
{
	if (nr == '') res = false;
	else
	{
		reg = new RegExp('^([\+]{0,1})([0-9\\s]+)([\-]{0,1})([0-9\\s]+)$');
		res = (reg.test(nr));
	}
	if (res == false)
	{
		$('checkdata').show();
		return false;
	}
	else
	{
		document.rueckruf.submit();
		return true;
	}
}

function LoginStyleEM(which)
{
	firstinEM = firstinEM+1;
	if (which == 'connect')
	{
		$('emailinputli_co').style.color = '#4d4d4d';
		if (firstinEM == 1) $('emailinputli_co').value = '';
	}
	else
	{
		$('emailinputli').style.color = '#4d4d4d';
		if (firstinEM == 1) $('emailinputli').value = '';
	}
}

function CheckLoginEM(which)
{
	// temp = (lang == 'de') ? 'E-Mail' : 'email';
	temp = JSLanguage['commonjs']['email'];

	if (which == 'connect')
	{
		if ($('emailinputli_co').value == '')
		{
			$('emailinputli_co').value = temp;
			$('emailinputli_co').style.color = '#9b9b9b';
			firstinEM = 0;
		}
	}
	else
	{
		if ($('emailinputli').value == '')
		{
			$('emailinputli').value = temp;
			$('emailinputli').style.color = '#9b9b9b';
			firstinEM = 0;
		}
	}
}
function _logFocusPW(which)
{
	if (which == 'connect')
	{
		$('pwinputli_co').show();
		$('pwinputTxt_co').hide();
		$('pwinputli_co').focus();
	}
	else {
		$('pwinputli').show();
		$('pwinputTxt').hide();
		$('pwinputli').focus();
	}
}
function _logBlurPW(which)
{
	if (which == 'connect')
	{
		if ($('pwinputli_co').value == '')
		{
			$('pwinputli_co').hide();
			$('pwinputTxt_co').show();
		}
	}
	else
	{
		if ($('pwinputli').value == '')
		{
			$('pwinputli').hide();
			$('pwinputTxt').show();
		}
	}
}
function checkCheckbox()
{
	if ($('remember').src == 'http://'+domainname+'/design/images/checkbox_empty.gif' ||
		$('remember').src == 'http://'+fqdn+'/design/images/checkbox_empty.gif'	)
	{
		$('remember').src = '/design/images/checkbox_checked.gif';
		$('rememberme').value = 'yes';
	}
	else
	{
		$('remember').src = '/design/images/checkbox_empty.gif';
		$('rememberme').value = 'no';
	}
}
function checkCheckbox1()
{
	if ($('remember1').src == 'http://'+domainname+'/design/images/checkbox_empty.gif' ||
		$('remember1').src == 'http://'+fqdn+'/design/images/checkbox_empty.gif'	)
	{
		$('remember1').src = '/design/images/checkbox_checked.gif';
		$('rememberme1').value = 'yes';
	}
	else
	{
		$('remember1').src = '/design/images/checkbox_empty.gif';
		$('rememberme1').value = 'no';
	}
}
function MemberStyleYear()
{
	firstinEM = firstinEM+1;

	$('memberyear').style.color = '#4d4d4d';
	if(firstinEM == 1) $('memberyear').value = '';
}
function CheckMemberYear()
{
	if($('memberyear').value == '')
	{
		$('memberyear').value = 'YYYY';
		$('memberyear').style.color = '#9b9b9b';
		firstinEM = 0;
	}
}
function showcallback ()
{
	_page('info', lang, 'callback');
	new Ajax.Request( "/info/"+lang+"/callback.html", {
		method:'get',
		onSuccess: function(transport){
			$('callback').innerHTML = transport.responseText;
			showOverlay('callback');
		}
	});
}
function showemailme ()
{
	_page('info', lang, 'emailme');
	new Ajax.Request("/info/"+lang+"/emailme.html", {
		method:'get',
		onSuccess: function(transport){
			$('emailme').innerHTML = transport.responseText;
			new showOverlay('emailme');
		}
	});
}
function calcTime (timeS)
{
	stunden = parseInt(timeS / 3600);
	minuten = timeS - ( (stunden * 3600) );
	minuten = parseInt(minuten / 60);
	if (minuten < 10) minuten = '0'+minuten;
	return stunden+':'+minuten;
}

function blurMe (e, o)
{
	if (e.value == '')
	{
		e.value = o;
		e.style.color = '#9b9b9b';
	}
}
function focusMe (e, o)
{
	if (e.value == o) e.value = '';
	e.style.color = '#003449';
}

/**
 * Returns array of selected compare to box values
 *
 * @return {Object}
 */
function getCheckedHotelCmp2Values() {
    var checked = jQuery('#compTo' + ' input[type="checkbox"]').filter(':checked');

    var params = {};
    var name = '';
    checked.each(function() {
        name = jQuery(this).attr('name');
        params[name] = jQuery(this).val();
    });

    return params;
}

function getHotelCmp2DeeplinkUrl(cmp2)
{
    return '/php/getHotelCompToDeeplink.php?'+
                        'sid='+        cmp2.sessionId +
                        '&cid='+       cmp2.cId +
                        '&code='+      cmp2.code +
                        '&id='+        cmp2.id +
                        '&geonameid='+ $('geonameid').value +
                        '&prechecked='+cmp2.prechecked +
                        '&termid='+    cmp2.termId +
                        '&visible='+   cmp2.visible +
                        '&cityt='+     $('cityt').value +
                        '&retDate='+   $('retDate').value +
                        '&depDate='+   $('depDate').value;
}

function openHotelCompareTos()
{
    var windowOpener = new windowopener({
                popUnder: true
            });

    var num = 0;
    var cucList = getCheckedHotelCmp2Values();
    var cucCount = utils_type.objectSize(cucList);

    jQuery.each(cucList, function(key, value) {

        var checkedCmp2 = compToHotelActive[key];
        var relativeUrl = getHotelCmp2DeeplinkUrl(checkedCmp2);

        // "state" can be used to identify popup blocking
        var state = windowOpener.open(relativeUrl, num, cucCount);
        num++;

        if (state) {
            compToHotelOpenedCucs[checkedCmp2.code] = value;
        } else {
            popupBlocked = true;
        }

    });

    checkCrossSaleSearchHotels();
}

function getCompareToWindowPreferences()
{
    var sWidth, sHeight, sLeft, sTop;
    if (window.innerWidth) {
        sWidth = window.innerWidth;
        sHeight = window.innerHeight;
        sLeft = window.screenLeft;
        sTop = window.screenTop;
    } else if (screen.availWidth) {
        sWidth = screen.availWidth;
        sHeight = screen.availHeight;
    } else if (document.all) {
        sWidth = window.screen.availWidth;
        sHeight = window.screen.availHeight;
    } else {
        sWidth = 800; sHeight = 600;
    }
    var width = sWidth, height = sHeight;
    if (window.navigator.userAgent.match(/Firefox\/4./)) {
        width *= 0.75; height *= 0.75;
    }
    var left = sLeft || (sWidth - width) / 2, top = sTop || (sHeight - height) / 2;
    var windowPreferences = "height="+Math.floor(height)+",width="+Math.floor(width)+",top="+Math.floor(top)+",left="+Math.floor(left)+",menubar=1,location=1,resizable=1,scrollbars=1,toolbar=1";
    return windowPreferences;
}

function getFlightCmp2DeeplinkUrl(cuc)
{

    var dep = $('dept').value;
    var arr = $('arrt').value;
    var depday = $('depd').value;
    var depym = $('depym').value;

    var retday = '';
    var retym = '';

    if ($('rt').checked) {
        retday = $('retd').value;
        retym = $('retym').value;
    }

    var adults = '';
    var children = '';
    var infants = '';

    if ($('adults')) {
        adults = $('adults').value;
    } else {
        adults = $('persons').value;
    }


    if ($('children')) {
        children = $('children').value;
    }

    if ($('infants')) {
        infants = $('infants').value;
    }

    var direct = ($('direct').checked) ? 'true'  : 'flase';

    var url = '/php/getCompToDeeplink.php?cuc='+cuc+
                                     '&dep='+dep+
                                     '&arr='+arr+
                                     '&depday='+depday+
                                     '&depym='+depym+
                                     '&retday='+retday+
                                     '&retym='+retym+
                                     '&adults='+adults+
                                     '&children='+children+
                                     '&infants='+infants+
                                     '&direct='+direct;
    return url;
}


function openFlightCompareTos()
{
    checkCrossSaleSearch();
    var windowOpener = new windowopener({
                popUnder: true
            });

    var num = 0;
    var cucList = getCheckedHotelCmp2Values();
    var cucCount = utils_type.objectSize(cucList);

    jQuery.each(cucList, function(key, value) {
        var relativeUrl = getFlightCmp2DeeplinkUrl(key);

        // "state" can be used to identify popup blocking
        var state = windowOpener.open(relativeUrl, num, cucCount);
        num++;

        if (state) {
            compToHotelOpenedCucs[key] = value;
        } else {
            popupBlocked = true;
        }
    });
}


function openCompareTos()
{
	checkCrossSaleSearch();

	var dep = $('dept').value ;
	var arr = $('arrt').value ;
	var depday = $('depd').value ;
	var depym = $('depym').value ;
	var retday = $('retd').value ;
	var retym = $('retym').value ;
	var adults = $('adults').value ;
	var children = $('children').value ;
	var infants = $('infants').value ;
	if($('direct').checked) var direct = 'true';
	else var direct = 'false';

     var windowPreferences = getCompareToWindowPreferences();

     var cucpopups = [];
     for(var i = 0; i < compToActive.length; i++)
 	 {

    	 var cuc = compToActive[i];

    	 if($(cuc).checked)
    	 {

	         var url = 'http://www.checkfelix.com/php/getCompToDeeplink.php?cuc='+cuc+
                                                                             '&dep='+dep+
                                                                             '&arr='+arr+
                                                                             '&depday='+depday+
                                                                             '&depym='+depym+
                                                                             '&retday='+retday+
                                                                             '&retym='+retym+
                                                                             '&adults='+adults+
                                                                             '&children='+children+
                                                                             '&infants='+infants+
                                                                             '&direct='+direct;
	         var relativeUrl = url.substr(url.indexOf("/",15));
	         var cucPopupId = 'cucpopup' + cuc;
	         try {
	             var cucpopup = window.open(relativeUrl, cucPopupId, windowPreferences);
	             cucpopup.focus();
	             cucpopups.push(cucpopup);
	         } catch (e) {
	             console.error(e.message);
	         }
    	 }
     }
     window.focus();

     window.setTimeout(function () {
         for (var i = 0, n = cucpopups; i < n; i++) {
             window.setTimeout(function () {
                 cucpopups[i].blur();
             }, 100 + Math.random() * 100);
         }
         window.focus();
     }, 100);
}


function openNewCompareTos()
{
	checkCrossSaleSearch();

	var dep = $('dept').value ;
	var arr = $('arrt').value ;
	var depday = $('depd').value ;
	var depym = $('depym').value ;
	var retday = $('retd').value ;
	var retym = $('retym').value ;
	var adults = $('persons').value ;
	var children = 0;
	var infants = 0;
	if($('direct').checked) var direct = 'true';
	else var direct = 'false';

	var sWidth, sHeight, sLeft, sTop;
     if (window.innerWidth) {
         sWidth = window.innerWidth;
         sHeight = window.innerHeight;
         sLeft = window.screenLeft;
         sTop = window.screenTop;
     } else if (screen.availWidth) {
         sWidth = screen.availWidth;
         sHeight = screen.availHeight;
     } else if (document.all) {
         sWidth = window.screen.availWidth;
         sHeight = window.screen.availHeight;
     } else {
         sWidth = 800; sHeight = 600;
     }
     var width = sWidth, height = sHeight;
     if (window.navigator.userAgent.match(/Firefox\/4./)) {
         width *= 0.75; height *= 0.75;
     }
     var left = sLeft || (sWidth - width) / 2, top = sTop || (sHeight - height) / 2;
     windowPreferences = "height="+Math.floor(height)+",width="+Math.floor(width)+",top="+Math.floor(top)+",left="+Math.floor(left)+",menubar=1,location=1,resizable=1,scrollbars=1,toolbar=1";

     var cucpopups = [];
     for(var i = 0; i < compToActive.length; i++)
 	 {

    	 var cuc = compToActive[i];

    	 if($(cuc).checked)
    	 {

	         var url = 'http://www.checkfelix.com/php/getCompToDeeplink.php?cuc='+cuc+'&dep='+dep+'&arr='+arr+'&depday='+depday+'&depym='+depym+'&retday='+retday+'&retym='+retym+'&adults='+adults+'&children='+children+'&infants='+infants+'&direct='+direct;
	         var relativeUrl = url.substr(url.indexOf("/",15));
	         var cucPopupId = 'cucpopup' + cuc;
	         try {
	             var cucpopup = window.open(relativeUrl, cucPopupId, windowPreferences);
	             cucpopup.focus();
	             cucpopups.push(cucpopup);
	         } catch (e) {
	             console.error(e.message);
	         }
    	 }
     }
     window.focus();

     window.setTimeout(function () {
         for (var i = 0, n = cucpopups; i < n; i++) {
             window.setTimeout(function () {
                 cucpopups[i].blur();
             }, 100 + Math.random() * 100);
         }
         window.focus();
     }, 100);
}

var durationarray = new Array ();
durationarray[3]  = 1;
durationarray[5]  = 4;
durationarray[7]  = 7;
durationarray[8]  = 6;
durationarray[11] = 9;
durationarray[14] = 14;
durationarray[15] = 12;
durationarray[21] = 21;
durationarray[22] = 16;
durationarray[23] = 23;

function packagecheck ()
{
	depday 	= document.sf.depd.value;
	depm 	= document.sf.depym.value.substr(4,2)
	depy	= document.sf.depym.value.substr(0,4)
	var date1 = new Date( depy,depm-1,depday );

	retday 	= document.sf.retd.value;
	retm 	= document.sf.retym.value.substr(4,2)
	rety	= document.sf.retym.value.substr(0,4)
	var date2 = new Date( rety,retm-1,retday );

	datediff = ((date2-date1)/86400000);
	//duration = document.sf.duration.value;
	duration = durationarray[document.sf.duration.value];

	if (datediff < 1)
	{
		$('dateerror').show();
		$('error_duration').hide();
		$('error_date').show();
	}
	else if (datediff-duration < 0)
	{
		$('dateerror').show();
		$('error_duration').show();
		$('error_date').hide();
	}
	else document.sf.submit();
}

function checkEmailFLogin()
{
	email 	= $('emailflogin').value;
	pw		= $('password1').value;
	new Ajax.Request('/php/checkEmails.php',
	{
		method:'get', parameters: {
			email: email,
			pw: pw
		},
		onSuccess: function(x){
			if (x.responseText == 'vorhanden') $('fastloginerror').show();
			else if(x.responseText == 'passwort') $('fastloginerror1').show();
			else if(x.responseText == 'mail not valid') $('fastloginerror2').show();
			else
			{
				document.signup2.submit();
				new Effect.Fade('loginwarning');
			}
		}
	});
}

function checkValid(who){

	if(who == 'loginwarning'){
		mail	= $('emailinputli1').value;
		pw		= $('pwinputli1').value;
	}
	else {
		mail	= $('emailinputli').value;
		pw		= $('pwinputli').value;
	}

	new Ajax.Request('/php/checkValid.php',
	{
		method:'get', parameters: {
			email: mail,
			pw: pw
		},
		onSuccess: function(x){

			if (x.responseText == 'not found') {
				if (who == 'loginwarning') $('logerrorW').show();
				else $('logerror').show();
			}
			else
			{
				if(who == 'loginwarning'){
					document.loginW.submit();
					new Effect.Fade('loginwarning');
				}
				else{
					document.loginf.submit();
					new Effect.Fade('loginform');
				}
			}
		}
	});
}

function checkDataResultSend(type, lang){

	ymailaddress	= $('ymailaddress').value;
	mailaddress		= $('mailaddress').value;
	ybetreff		= $('ybetreff').value;
	ymessage		= $('ymessage').value;
	flid			= $('flid').value;
	sessionid		= $('fsessid').value;
	searchid		= $('fsearchid').value;

	if ($('ycopy').checked == true)sentcopy = 'true';
	else sentcopy = 'false';

	if (ymailaddress == '') res = false;
	else{
		reg = new RegExp('^([a-zA-Z0-9\-\.\_]+)(\@)([a-zA-Z0-9\-\_\�\�\�\�\�\�]+)(\.)([a-zA-Z\.]+)$');
		res = (reg.test(ymailaddress));
	}
	if (mailaddress == '') res1 = false;
	else{
		reg1 = new RegExp('^([a-zA-Z0-9\-\.\_]+)(\@)([a-zA-Z0-9\-\_\�\�\�\�\�\�]+)(\.)([a-zA-Z\.]+)$');
		res1 = (reg1.test(mailaddress));
	}

	if(res == false){
		$('ymailaddresserror').show();
		return false;
	}
	else if(res1 == false){
		$('mailaddresserror').show();
		return false;
	}
	else
	{
		new Ajax.Request('/php/mailResult.php',
		{
			method:'post', parameters: {
				mailaddress: mailaddress,
				ybetreff: ybetreff,
				ymessage: ymessage,
				flid: flid,
				ymailaddress: ymailaddress,
				type: type,
				sessionid: sessionid,
				searchid: searchid,
				lang: lang,
				sentcopy: sentcopy
			},
			onSuccess: function(x){
				if (x.responseText == 'sent'){
					 new Effect.Fade('sendResult');
					 new Effect.Appear('resultSent');
				}

			}
		});
	}
}

function getSpecialOffers (searchid, sessionid, dep, arr, who)
{
	new Ajax.Updater( {success: $(who)} , "/php/getSpecialAdsFlights.php", {
		method:'get', parameters: {
			special_partner: who,
			searchid: searchid,
			sessionid: sessionid,
			dep: dep,
			arr: arr
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix'){

				//if (who == 'sponsored_expediacm')expediaspecial1 = true;
				if (who == 'sponsored_binoli')binolispecial1 = true;

				new Effect.Appear($(who), {duration: 0.5});
			}
		}
	});
}

function getSpecialOffersCar(searchid, sessionid, who){

	new Ajax.Updater( {success: $(who)} , "/php/getSpecialAdsCar.php", {
		method:'get', parameters: {
			special_partner: who,
			searchid: searchid,
			sessionid: sessionid
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix')
			{
				//if (who == 'sponsored_expediacar')expcarspecial = true;

				new Effect.Appear($(who), {duration: 0.5});
			}
		}
	});
}

function getSpecialOffersHotel( searchid, sessionid, lang, who){


	new Ajax.Updater( {success: $(who)} , "/php/getSpecialAdsHotel.php", {
		method:'get', parameters: {
			special_partner: who,
			searchid: searchid,
			lang: lang,
			sessionid: sessionid
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix')
			{
				if (who == 'sponsored_hrs')sponsoredhrs = true;
				//if (who == 'sponsored_expediahot')sponsoredexhot = true;
				if (who == 'sponsored_booking')sponsoredbooking = true;
				if (who == 'sponsored_nh')sponsorednh = true;
				if (who == 'sponsored_ath')sponsoredath = true;
				if (who == 'sponsored_hotelscom')sponsoredhotelscom = true;
				if (who == 'sponsored_easyclick')sponsoredeasyclick = true;
				if (who == 'sponsored_accor')sponsoredaccor = true;

				new Effect.Appear($(who), {duration: 0.5});
			}
			else
			{
				$(who).style.display = 'none';
			}
		}
	});
}

function getBinoli(url, depDate, retDate, depCity, arrCity, adults, children, infants)
{
	fenster=window.open(url,'','status=yes,scrollbars=yes,toolbar=yes,location=yes,resizable=yes,width='+screen.width+',height='+screen.height+'');
	fenster.blur();
	window.focus();

	new Ajax.Request('/clicktrack.php',
	{
		method:'get', parameters: {
			dep: depCity,
			arr: arrCity,
			depDate: depDate,
			retDate: retDate,
			adults: adults,
			children: children,
			infants: infants,
			spartner: 'a_binoli'
		}
	});
}

function getExpedia(url, depDate, retDate, depCity, arrCity, adults, children, infants )
{
	fenster=window.open(url);
	fenster.blur();
	window.focus();

	new Ajax.Request('/clicktrack.php',
	{
		method:'get', parameters: {
			dep: depCity,
			arr: arrCity,
			depDate: depDate,
			retDate: retDate,
			adults: adults,
			spartner: 'a_expedia'
		}

	});

}

function getNewResults(ts, lang, url, fqs)
{
	new Ajax.Updater( {success: 'newResults'} , "/php/checkResultsLive.php", {
		method:'get', parameters: {
			ts: ts,
			lang: lang,
			url: url,
			fqs: fqs
		},
		onSuccess: function(transport)
		{
			if(transport.responseText != 'nix'){
				new Effect.Appear('newResults', {duration: 0.5});
			}
		}
	});
}

function getDFResults(dep,ret)
{
	new Ajax.Request( "/php/getDF_Results.php?dep="+dep+"&ret="+ret, {
		method:'get',
		onSuccess: function(x)
		{
			var historydiv = $(("fldealfinder"));
			historydiv.innerHTML = x.responseText;
		}
	    });
}

function getNewResultsReg()
{
	$('newResultsReg').innerHTML = '<div style="height: 30px;padding:10px 10px 0 0; font-weight:bold;background-color:#FFE88F">&nbsp;&nbsp;Es wurden 6 neue Ergebnisse gefunden!</div>';
	new Effect.Appear('newResultsReg', {duration: 0.5});
}

function closeInterval (which)
{
	window.clearInterval(which);
}

function getDeal(id, lang, url)
{
	new Ajax.Updater( {success: 'deal'} , "/php/getDeal.php", {
		method:'get', parameters: {
			id: id,
			lang: lang,
			url: url
		},
		onSuccess: function(transport)
		{
			if(transport.responseText != 'nix'){
				new Effect.Appear('deal', {duration: 0.5});
			}
		}
	});
}

var live_slider_price = null;
var livePriceMax = 0;
var actPriceLF = '';
function initLivePriceSlider (bla, min, max, act, durl)
{
	if (live_slider_price != null) return true;

	min = parseInt(min);
	max = parseInt(max);
	act = parseInt(act);
	min = 1;

	livePriceMax = max;

	//if(act < max)act = max;

	$('f_p_min').innerHTML='min. '+min;
	if (max == act) $('f_p_max').innerHTML='max. '+max;
	else $('f_p_max').innerHTML='max. '+act;

	maxE = Math.exp(2);

        currentPerc = 100/livePriceMax*act;
	currentE = (currentPerc * maxE) / 100;
	act = (Math.log(currentE)*100);
	if (act < -500) act = -500;

	min = -500;
	max = 200;

    live_slider_price = new Control.Slider(['pricepointer2'],'priceslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
    	//values: [1,10,50,100,500,1000,2000,5000,10000,15000],
		sliderValue:[act],

		onChange:function(v){
        	var a = parseInt(v.toFixed());

        	maxE = Math.exp(2);
			minE = Math.exp(-5);

			// Current e-value
			currentE = Math.exp(v.toFixed()/100);
			// Current percentage
			currentPerc = 100/maxE*currentE;
			// Current Price
			a = parseInt(livePriceMax*currentPerc/100);

			minPerc = 100/Math.exp(2)*minE;
			offsetValue = parseInt(livePriceMax*minPerc/100);

        	a -= offsetValue-1;

			filter_p_max = a;

			var dlink = getLiveFilter();

			var url = durl+'?maxP='+a;
			if (showDepFilter == 'true'){
				url += '&dep='+$('daptid').value+'&depName='+$('departCity').value+'&depType='+$('dcoid').value;
			}
			else url += '&showDepFilter=false';

			if (showArrFilter == 'true'){
				url += '&arr='+$('aaptid').value+'&arrName='+$('arrivalCity').value+'&arrType='+$('acoid').value;
			}
			else url += '&showArrFilter=false';

			url += '&destination='+destination+'&departure='+departure+'&depAll='+depAll+'&destAll='+destAll+''+dlink+'&movedSlider=true';

        	location.href = url;
        },
		onSlide:function(v){

			maxE = Math.exp(2);
			minE = Math.exp(-5);

			// Current e-value
			currentE = Math.exp(v.toFixed()/100);
			// Current percentage
			currentPerc = 100/maxE*currentE;
			// Current Price
			currentValue = parseInt(livePriceMax*currentPerc/100);

			minPerc = 100/Math.exp(2)*minE;
			offsetValue = parseInt(livePriceMax*minPerc/100);

			currentValue -= offsetValue-1;

			$('f_p_max').innerHTML='max. '+currentValue;
			//$('f_p_max').innerHTML='max. '+parseInt(v.toFixed());
        }
	});
}
function getLiveFilter ()
{
	selT = '';
	temp = 0;
	for (i=0; i<$('datecontainer').childNodes.length; i++)
	{
		if (typeof $('liveDatFilterfilter'+i) != "undefined")
		{
			if ($('liveDatFilterfilter'+i).checked == true)
			{
				// Build GET Link for the Ajax Request
				selT += '&date['+temp+']='+$('liveDatFilterfilter'+i).value;
				// Show reset link when filter is active
				temp++;
			}
		}
	}
	return selT;
}

function createLiveFilter (whichone, data, durl)
{
	ii = 0;
	temphtml = '';

	data.each(function(item)
	{
		ch = (item.checked == 'true') ? 'checked="checked" ' : '';
		temp2 = (item.checked == 'true') ? 'off' : 'on';
		var cname = item.string;
		if (cname == "L'tur") cname = "Ltur";

		var ttest = '_track (\"dealfinder\", \"filter\", \"'+whichone+' '+item.string+' '+temp2+'\");';
		var test = 'test(\"'+item.id+'\",\"'+durl+'\");';

		temphtml += 	"<div><input type='checkbox' "+ch+" id='"+whichone+"filter"+ii+"' onclick='"+test+" "+ttest+" ' value='"+item.id+"'/> "+
						item.string+"</div>";
		ii++;
	});
	$('datecontainer').innerHTML = temphtml;
}
var LFdepC;
var LFdepN;
var LFdepT;
var LFdepCt;
var LFdepNt;
var LFdepTt;
var LFdstC;
var LFdstN;
var LFdstT;
var LFdstCt;
var LFdstNt;
var LFdstTt;
var priceusage;

function useNewLFParams()
{
	LFdepC = $('depCode');
	LFdepN = $('depInput');
	LFdepT = $('depType');
	LFdepCt= 'depCode';
	LFdepNt= 'depName';
	LFdepTt= 'depType';
	LFdstC = $('dstCode');
	LFdstN = $('dstInput');
	LFdstT = $('dstType');
	LFdstCt= 'dstCode';
	LFdstNt= 'dstName';
	LFdstTt= 'dstType';
	priceusage = true;
}
function useOldLFParams()
{
	LFdepC = $('daptid');
	LFdepN = $('departCity');
	LFdepT = $('dcoid');
	LFdepCt= 'dep';
	LFdepNt= 'depName';
	LFdepTt= 'depType';
	LFdstC = $('aaptid');
	LFdstN = $('arrivalCity');
	LFdstT = $('acoid');
	LFdstCt= 'arr';
	LFdstNt= 'arrName';
	LFdstTt= 'arrType';
	priceusage = false;
}

function test(did, durl)
{
	var link = getLiveFilter();

	if(priceusage)
	{
		var url = durl+'?maxP='+actPriceLF;
	}
	else
	{
		var url = durl+'?maxP='+parseInt($('max_p').value);
	}

	if (showDepFilter == 'true'){
		url += '&'+LFdepCt+'='+LFdepC.value+'&'+LFdepNt+'='+LFdepN.value+'&'+LFdepTt+'='+LFdepT.value;
	}
	else{
	 	url += '&showDepFilter=false';
	}
	if (showArrFilter == 'true'){
		url += '&'+LFdstCt+'='+LFdstC.value+'&'+LFdstNt+'='+LFdstN.value+'&'+LFdstTt+'='+LFdstT.value;
	}
	else{
		url += '&showArrFilter=false';
	}

	url += '&destination='+destination+'&departure='+departure+'&depAll='+depAll+'&destAll='+destAll+''+link+'&movedSlider='+moved;
	location.href = url;
}

function unSelectAll(durl)
{
	for (i=0; i<$('datecontainer').childNodes.length; i++)
	{
		if (typeof $('liveDatFilterfilter'+i) != "undefined")
		{
			$('liveDatFilterfilter'+i).checked = false
		}
	}

	if(priceusage)
	{
		var url = durl+'?maxP='+actPriceLF;
	}
	else
	{
		var url = durl+'?maxP='+parseInt($('max_p').value);
	}
	if (showDepFilter == 'true'){
		url += '&'+LFdepCt+'='+LFdepC.value+'&'+LFdepNt+'='+LFdepN.value+'&'+LFdepTt+'='+LFdepT.value;
	}
	else url += '&showDepFilter=false';

	if (showArrFilter == 'true'){
		url += '&'+LFdstCt+'='+LFdstC.value+'&'+LFdstNt+'='+LFdstN.value+'&'+LFdstTt+'='+LFdstT.value;
	}
	else url += '&showArrFilter=false';

	url += '&destination='+destination+'&departure='+departure+'&depAll='+depAll+'&destAll='+destAll+'&movedSlider='+moved+'&noresults=true';

	location.href = url;
}

function preSelectAll(durl)
{
	for (i=0; i<$('datecontainer').childNodes.length; i++)
	{
		if (typeof $('liveDatFilterfilter'+i) != "undefined")
		{
			$('liveDatFilterfilter'+i).checked = true
		}
	}

	if(priceusage)
	{
		var url = durl+'?maxP='+actPriceLF;
	}
	else
	{
		var url = durl+'?maxP='+parseInt($('max_p').value);
	}
	if (showDepFilter == 'true'){
		url += '&'+LFdepCt+'='+LFdepC.value+'&'+LFdepNt+'='+LFdepN.value+'&'+LFdepTt+'='+LFdepT.value;
	}
	else url += '&showDepFilter=false';

	if (showArrFilter == 'true'){
		url += '&'+LFdstCt+'='+LFdstC.value+'&'+LFdstNt+'='+LFdstN.value+'&'+LFdstTt+'='+LFdstT.value;
	}
	else url += '&showArrFilter=false';

	url += '&destination='+destination+'&departure='+departure+'&depAll='+depAll+'&destAll='+destAll+'&movedSlider='+moved;

	location.href = url;
}


function initLivePriceSliderSwoodoo (bla, min, max, act, durl)
{
	if (live_slider_price != null) return true;

	min = parseInt(min);
	max = parseInt(max);
	act = parseInt(act);
	min = 1;
	actPriceLF = act;

	livePriceMax = max;

	//if(act < max)act = max;

	$('f_p_min').innerHTML='min. '+min;
	if (max == act) $('f_p_max').innerHTML='max. '+max;
	else $('f_p_max').innerHTML='max. '+act;

	maxE = Math.exp(2);
	/*
	minE = Math.exp(-5);
	minPerc = 100/Math.exp(2)*minE;
	offsetValue = parseInt(livePriceMax*minPerc/100);
	*/
	currentPerc = 100/livePriceMax*act;
	currentE = (currentPerc * maxE) / 100;
	act = (Math.log(currentE)*100);
	if (act < -500) act = -500;

	min = -500;
	max = 200;

    live_slider_price = new Control.Slider(['pricepointer2'],'priceslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
    	//values: [1,10,50,100,500,1000,2000,5000,10000,15000],
		sliderValue:[act],

		onChange:function(v){
        	var a = parseInt(v.toFixed());

        	maxE = Math.exp(2);
			minE = Math.exp(-5);

			// Current e-value
			currentE = Math.exp(v.toFixed()/100);
			// Current percentage
			currentPerc = 100/maxE*currentE;
			// Current Price
			a = parseInt(livePriceMax*currentPerc/100);

			minPerc = 100/Math.exp(2)*minE;
			offsetValue = parseInt(livePriceMax*minPerc/100);

        	a -= offsetValue-1;

			filter_p_max = a;

			var dlink = getLiveFilter();

			var url = durl+'?maxP='+a;
			if (showDepFilter == 'true'){
				url += '&depCode='+$('depCode').value+'&depName='+$('depInput').value+'&depType='+$('depType').value;
			}
			else url += '&showDepFilter=false';

			if (showArrFilter == 'true'){
				url += '&dstCode='+$('dstCode').value+'&dstName='+$('dstInput').value+'&dstType='+$('dstType').value;
			}
			else url += '&showArrFilter=false';

			url += '&destination='+destination+'&departure='+departure+'&depAll='+depAll+'&destAll='+destAll+''+dlink+'&movedSlider=true';

        	location.href = url;
        },
		onSlide:function(v){

			maxE = Math.exp(2);
			minE = Math.exp(-5);

			// Current e-value
			currentE = Math.exp(v.toFixed()/100);
			// Current percentage
			currentPerc = 100/maxE*currentE;
			// Current Price
			currentValue = parseInt(livePriceMax*currentPerc/100);

			minPerc = 100/Math.exp(2)*minE;
			offsetValue = parseInt(livePriceMax*minPerc/100);

			currentValue -= offsetValue-1;

			$('f_p_max').innerHTML='max. '+currentValue;
			//$('f_p_max').innerHTML='max. '+parseInt(v.toFixed());
        }
	});
}



function resetAllFiltersLive(url)
{
	location.href = url;
}

function absTop(el)
{
	return (el.offsetParent)? el.offsetTop + absTop(el.offsetParent) : el.offsetTop;
}
function absLeft(el)
{
	return (el.offsetParent) ? el.offsetLeft + absLeft(el.offsetParent) : el.offsetLeft;
}

//cruises Filters

function initVendorFilter()
{

	var vendortemp = '<div class="company"><div><input id="reed/vendorID/" type="checkbox" checked="true" onclick="_track (\'cruises\', \'filter\', \'vendor\', \'mod\'); setVendor(\'/vendorID/\')" /></div><div class="companyname"><label for="reed/vendorID/" class="left">/vendorName/</label></div><div class="companyprice  red">/price/</div></div>';
	var vendortemp2 = '';

	for(i = 0; i < vendors.length; i++)
	{
		var vendortemp3 = '';
		if(vendors[i].reedereiName.length > 17) var redname = vendors[i].reedereiName.substring(0, 14)+"...";
		else var redname = vendors[i].reedereiName;
		vendortemp3 = vendortemp.replace(/\/vendorID\//g,vendors[i].reedereiID);
		vendortemp3 = vendortemp3.replace(/\/vendorName\//g,redname);
		vendortemp2 += vendortemp3.replace(/\/price\//g,"ab "+vendors[i].price);
	}

	$('vendorcontainer').innerHTML = vendortemp2;

	for(i = 0; i < vendors.length; i++)
	{
		vendors_filter[vendors[i].reedereiID] = "true";
	}

}

function setVendor(id)
{

	if(id == "all")
	{
		for(i = 0; i < vendors.length; i++)
		{
			vendors_filter[vendors[i].reedereiID] = "true";
			var xy = "reed"+vendors[i].reedereiID;
			$(xy).checked = true;
		}
		filter_vendor = "false";
	}
	else
	{
		if(id == "none")
		{
			for(i = 0; i < vendors.length; i++)
			{
				vendors_filter[vendors[i].reedereiID] = "false";
				var xy = "reed"+vendors[i].reedereiID;
				$(xy).checked = false;
			}
			filter_vendor = "true";
		}
		else
		{
			filter_vendor = "true";
			if($('reed'+id).checked == true) vendors_filter[id] = "true";
			else vendors_filter[id] = "false";
		}
	}
	showData();
}

function initShipFilter()
{

	var shiptemp = '<div class="company"><div><input id="ftship/ftshipID/" type="checkbox" checked="true" onclick="_track (\'cruises\', \'filter\', \'ship\', \'mod\'); setShip(\'/ftshipID/\')" /></div><div class="companyname"><label title="/ftshipNamefull/" for="ftship/ftshipID/" class="left">/ftshipName/</label></div><div class="companyprice  red">/price/</div></div>';
	var shiptemp2div1 = '';
	var shiptemp2div2 = '';

	for(i = 0; i < ships.length; i++)
	{
		var shiptemp3 = '';

		if(ships[i].shipName.length > 17)
		{
			var shname = ships[i].shipName.substring(0, 14)+"...";
		}
		else
		{
			 var shname = ships[i].shipName;
		}

		shiptemp3 = shiptemp.replace(/\/ftshipID\//g,ships[i].shipID);
		shiptemp3 = shiptemp3.replace(/\/ftshipName\//g,shname);
		shiptemp3 = shiptemp3.replace(/\/ftshipNamefull\//g,ships[i].shipName);

		if(i < 5)
		{
			shiptemp2div1 += shiptemp3.replace(/\/price\//g,"ab "+ships[i].price);
		}
		else
		{
			shiptemp2div2 += shiptemp3.replace(/\/price\//g,"ab "+ships[i].price);
		}
	}

	$('shipcontainer1').innerHTML = shiptemp2div1;
	$('shipcontainer2').innerHTML = shiptemp2div2;

	for(i = 0; i < ships.length; i++)
	{
		ships_filter[ships[i].shipID] = "true";
	}
	if(ships.length < 6) $('shipbutton').style.display = 'none';

}

function setShip(id)
{
	if(id == "all")
	{
		for(i = 0; i < ships.length; i++)
		{
			ships_filter[ships[i].shipID] = "true";
			var xy = "ftship"+ships[i].shipID;
			$(xy).checked = true;
		}
		filter_ship = "false";
	}
	else
	{
		if(id == "none")
		{
			for(i = 0; i < ships.length; i++)
			{
				ships_filter[ships[i].shipID] = "false";
				var xy = "ftship"+ships[i].shipID;
				$(xy).checked = false;
			}
			filter_ship = "true";
		}
		else
		{
			filter_ship = "true";
			if($('ftship'+id).checked == true) ships_filter[id] = "true";
			else ships_filter[id] = "false";
		}
	}
	showData();
}

function initdepPortFilter()
{

	var porttemp = '<div class="company"><div><input id="ftdepPort/ftdepPortID/" type="checkbox" checked="true" onclick="_track (\'cruises\', \'filter\', \'depPort\', \'mod\'); setdepPort(\'/ftdepPortID/\')" /></div><div class="companyname"><label title="/ftdepPortNamefull/" for="ftdepPort/ftdepPortID/" class="left">/ftdepPortName/</label></div><div class="companyprice  red">/price/</div></div>';
	var porttemp2div1 = '';
	var porttemp2div2 = '';

	for(i = 0; i < depPorts.length; i++)
	{
		var porttemp3 = '';

		if(depPorts[i].depPortName.length > 17)
		{

			var dpname = depPorts[i].depPortName.substring(0, 14)+"...";
		}
		else
		{
			 var dpname = depPorts[i].depPortName;
		}

		porttemp3 = porttemp.replace(/\/ftdepPortID\//g,depPorts[i].depPortID);
		porttemp3 = porttemp3.replace(/\/ftdepPortName\//g,dpname);
		porttemp3 = porttemp3.replace(/\/ftdepPortNamefull\//g,depPorts[i].depPortName);

		if(i < 5)
		{
			porttemp2div1 += porttemp3.replace(/\/price\//g,"ab "+depPorts[i].price);
		}
		else
		{
			porttemp2div2 += porttemp3.replace(/\/price\//g,"ab "+depPorts[i].price);
		}
	}

	$('portcontainer1').innerHTML = porttemp2div1;
	$('portcontainer2').innerHTML = porttemp2div2;

	for(i = 0; i < depPorts.length; i++)
	{
		depports_filter[depPorts[i].depPortID] = "true";
	}
	if(depPorts.length < 6) $('depportbutton').style.display = 'none';
}

function setdepPort(id)
{
	if(id == "all")
	{
		for(i = 0; i < depPorts.length; i++)
		{
			depports_filter[depPorts[i].depPortID] = "true";
			var xy = "ftdepPort"+depPorts[i].depPortID;
			$(xy).checked = true;
		}
		filter_depport = "false";
	}
	else
	{
		if(id == "none")
		{
			for(i = 0; i < depPorts.length; i++)
			{
				depports_filter[depPorts[i].depPortID] = "false";
				var xy = "ftdepPort"+depPorts[i].depPortID;
				$(xy).checked = false;
			}
			filter_depport = "true";
		}
		else
		{
			filter_depport = "true";
			if($('ftdepPort'+id).checked == true) depports_filter[id] = "true";
			else depports_filter[id] = "false";
		}
	}
	showData();
}

function initretPortFilter()
{
	var porttemp = '<div class="company"><div><input id="ftretPort/ftretPortID/" type="checkbox" checked="true" onclick="_track (\'cruises\', \'filter\', \'retPort\', \'mod\'); setretPort(\'/ftretPortID/\')" /></div><div class="companyname"><label title="/ftretPortNamefull/" for="ftretPort/ftretPortID/" class="left">/ftretPortName/</label></div><div class="companyprice  red">/price/</div></div>';
	var porttemp2div1 = '';
	var porttemp2div2 = '';

	for(i = 0; i < retPorts.length; i++)
	{
		var porttemp3 = '';

		if(retPorts[i].retPortName.length > 17)
		{

			var dpname = retPorts[i].retPortName.substring(0, 14)+"...";
		}
		else
		{
			 var dpname = retPorts[i].retPortName;
		}

		porttemp3 = porttemp.replace(/\/ftretPortID\//g,retPorts[i].retPortID);
		porttemp3 = porttemp3.replace(/\/ftretPortName\//g,dpname);
		porttemp3 = porttemp3.replace(/\/ftretPortNamefull\//g,retPorts[i].retPortName);

		if(i < 5)
		{
			porttemp2div1 += porttemp3.replace(/\/price\//g,"ab "+retPorts[i].price);
		}
		else
		{
			porttemp2div2 += porttemp3.replace(/\/price\//g,"ab "+retPorts[i].price);
		}
	}

	$('portcontainer3').innerHTML = porttemp2div1;
	$('portcontainer4').innerHTML = porttemp2div2;

	for(i = 0; i < retPorts.length; i++)
	{
		retports_filter[retPorts[i].retPortID] = "true";
	}
	if(retPorts.length < 6) $('retportbutton').style.display = 'none';
}

function setretPort(id)
{
	if(id == "all")
	{
		for(i = 0; i < retPorts.length; i++)
		{
			retports_filter[retPorts[i].retPortID] = "true";
			var xy = "ftretPort"+retPorts[i].retPortID;
			$(xy).checked = true;
		}
		filter_retport = "false";
	}
	else
	{
		if(id == "none")
		{
			for(i = 0; i < retPorts.length; i++)
			{
				retports_filter[retPorts[i].retPortID] = "false";
				var xy = "ftretPort"+retPorts[i].retPortID;
				$(xy).checked = false;
			}
			filter_retport = "true";
		}
		else
		{
			filter_retport = "true";
			if($('ftretPort'+id).checked == true) retports_filter[id] = "true";
			else retports_filter[id] = "false";
		}
	}
	showData();
}

function showHideShipFilter(id)
{

	if(id == 1)
	{
		div = shipdiv;
		container = 'shipcontainer2';
		if(shipdiv == "true") shipdiv = "false";
		else shipdiv = "true";
	}
	else if(id == 2)
	{
		div = depportdiv;
		container = 'portcontainer2';
		if(depportdiv == "true") depportdiv = "false";
		else depportdiv = "true";
	}
	else if(id == 3)
	{
		div = retportdiv;
		container = 'portcontainer4';
		if(retportdiv == "true") retportdiv = "false";
		else retportdiv = "true";
	}

	if(div == "true") Effect.BlindDown(container);
	else Effect.BlindUp(container);
}
var aida = false;
function showSponsoredAida()
{
	if(aida == true)
	{
		 Effect.BlindUp('detailsaida');
		 aida = false;
	}
	else
	{
		Effect.BlindDown('detailsaida');
		 aida = true;
	}
}


function initPriceSliderCruises()
{
	min = ~~1 * getMin("price");
	max = ~~1 * getMax("price");

	if(currChanged == true)
	{
		 var sliderval = ~~1 * filter_maxprice;
		 var txtmax = filter_maxprice;
	}
	else
	{
		 var sliderval = max;
		 var txtmax = getMax("price");
	}

	$('f_p_min').innerHTML='min. '+getMin("price");
	$('f_p_max').innerHTML='max. '+txtmax;

	currChanged = false;

    filter_slider_price = new Control.Slider(['pricepointer2'],'priceslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
		sliderValue:[sliderval],

		onChange:function(v){
        	//var a = parseInt(v.toFixed());
        	var a = ~~ 1 *v.toFixed();
			filter_maxprice = a;
			_track ('cruises', 'filter', 'price');
			$('f_p_max').innerHTML = 'max. '+a;
			filter_price = 'true';
			showData();
        },
		onSlide:function(v){
			$('f_p_max').innerHTML='max. '+parseInt(v.toFixed());
        }
	});
}

function initDurationSliderCruises()
{
	min = ~~1 * getMin("duration");
	max = ~~1 * getMax("duration");

	if(durChanged1 == true)
	{
		 var sliderval1 = ~~1 * filter_minduration;
		 var txtmin = filter_minduration;
	}
	else
	{
		 var sliderval1 = min;
		 var txtmin = getMin("duration");
	}
	if(durChanged2 == true)
	{
		 var sliderval2 = ~~1 * filter_maxduration;
		 var txtmax = filter_maxduration;
	}
	else
	{
		 var sliderval2 = max;
		 var txtmax = getMax("duration");
	}

	$('f_d_min').innerHTML='min. '+txtmin;
	$('f_d_max').innerHTML='max. '+txtmax;

	durChanged2 = false;
	durChanged1 = false;

    filter_slider_price = new Control.Slider(['durationpointer2'],'durationslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
		sliderValue:[sliderval2],

		onChange:function(v){
        	//var a = parseInt(v.toFixed());
        	var a = ~~ 1 *v.toFixed();
			filter_maxduration = a;
			$('f_d_max').innerHTML = 'max. '+a;
			_track ('cruises', 'filter', 'duration');
			filter_duration_max = 'true';
			showData();
        },
		onSlide:function(v){
			$('f_d_max').innerHTML='max. '+parseInt(v.toFixed());
        }
	});

	filter_slider_price = new Control.Slider(['durationpointer1'],'durationslider',
    {
    	axis:'horizontal',
    	range:$R(min,max),
		sliderValue:[sliderval1],

		onChange:function(v){
        	//var a = parseInt(v.toFixed());
        	var a = ~~ 1 *v.toFixed();
			filter_minduration = a;
			$('f_d_min').innerHTML = 'min. '+a;
			_track ('cruises', 'filter', 'duration');
			filter_duration_min = 'true';
			showData();
        },
		onSlide:function(v){
			$('f_d_min').innerHTML='min. '+parseInt(v.toFixed());
        }
	});
}

function initStarFilter()
{
	var starone = 'false';
	var startwo = 'false';
	var starthree = 'false';
	var starfour = 'false';
	var starfive = 'false';
	$('star_1').checked = false;
	$('star_2').checked = false;
	$('star_3').checked = false;
	$('star_4').checked = false;
	$('star_5').checked = false;

	for(var i = 0; i < allresults.length; i++)
	{
		var star =  ''+allresults[i].getCol('stars');
		var price = ''+allresults[i].getCol('price');
		switch(star)
		{
			case '1' :
						if(starone == 'false')
						{
							starone = price;
							$('star_1').checked = true;
						}
						else if(parseInt(starone) > parseInt(price))
						{
							starone = price;
						}
						break;
			case '2' :
						if(startwo == 'false')
						{
							startwo = price;
							$('star_2').checked = true;
						}
						else if(parseInt(startwo) > parseInt(price))
						{
							startwo = price;
						}
						break;
			case '3' :
						if(starthree == 'false')
						{
							starthree = price;
							$('star_3').checked = true;
						}
						else if(parseInt(starthree) > parseInt(price))
						{
							starthree = price;
						}
						break;
			case '4' :
						if(starfour == 'false')
						{
							starfour = price;
							$('star_4').checked = true;
						}
						else if(parseInt(starfour) > parseInt(price))
						{
							starfour = price;
						}
						break;
			case '5' :
						if(starfive == 'false')
						{
							starfive = price;
							$('star_5').checked = true;
						}
						else if(parseInt(starfive) > parseInt(price))
						{
							starfive = price;
						}
						break;
		}
	}
	if(starone == 'false')
	{
		 $('star_1').disabled = true;
		 $('starcontainer1').style.display = 'none';
	}
	else $('price_star_1').innerHTML = "ab "+starone;

	if(startwo == 'false')
	{
		 $('star_2').disabled = true;
		 $('starcontainer2').style.display = 'none';
	}
	else $('price_star_2').innerHTML = "ab "+startwo;

	if(starthree == 'false')
	{
		 $('star_3').disabled = true;
		 $('starcontainer3').style.display = 'none';
	}
	else $('price_star_3').innerHTML = "ab "+starthree;

	if(starfour == 'false')
	{
		 $('star_4').disabled = true;
		 $('starcontainer4').style.display = 'none';
	}
	else $('price_star_4').innerHTML = "ab "+starfour;

	if(starfive == 'false')
	{
		 $('star_5').disabled = true;
		 $('starcontainer5').style.display = 'none';
	}
	else $('price_star_5').innerHTML = "ab "+starfive;
}

function setStarFilter()
{
	if($('star_1').checked == false)
	{
		filter_starone = 'false';
	}
	else
	{
		filter_starone = 'true';
	}
	if($('star_2').checked == false)
	{
		filter_startwo = 'false';
	}
	else
	{
		filter_startwo = 'true';
	}
	if($('star_3').checked == false)
	{
		filter_starthree = 'false';
	}
	else
	{
		filter_starthree = 'true';
	}
	if($('star_4').checked == false)
	{
		filter_starfour = 'false';
	}
	else
	{
		filter_starfour = 'true';
	}
	if($('star_5').checked == false)
	{
		filter_starfive = 'false';
	}
	else
	{
		filter_starfive = 'true';
	}
	filter_stars = 'true';
	showData();
}

function initPackageFilter()
{
	var all_package = 'false';
	var hotel_package = 'false';
	var flight_package = 'false';

	var fl_price = "false";
	var ho_price = "false";
	var al_price = "false";

	$('all_package').checked = false;
	$('hotel_package').checked = false;
	$('flight_package').checked = false;

	for(var i = 0; i < allresults.length; i++)
	{
		var flight =  ''+allresults[i].isflight;
		var hotel = ''+allresults[i].ishotel;

		if(flight == "No" && hotel == "No")
		{
			$('all_package').checked = true;
			all_package = "true";
			if(al_price == 'false')
			{
				al_price = allresults[i].price;
			}
			else if(parseInt(al_price) > parseInt(allresults[i].price))
			{
				al_price = allresults[i].price;
			}
		}

		if(flight == 'Yes')
		{
			$('flight_package').checked = true;
			flight_package = "true";
			if(fl_price == 'false')
			{
				fl_price = allresults[i].price;
			}
			else if(parseInt(fl_price) > parseInt(allresults[i].price))
			{
				fl_price = allresults[i].price;
			}
		}
		if(hotel == 'Yes')
		{
			hotel_package = "true";
			$('hotel_package').checked = true;
			if(ho_price == 'false')
			{
				ho_price = allresults[i].price;
			}
			else if(parseInt(ho_price) > parseInt(allresults[i].price))
			{
				ho_price = allresults[i].price;
			}
		}
	}

	if(all_package == 'false')
	{
		 $('all_package').disabled = true;
		 $('packagecontainer_all').style.display = 'none';
	}
	else $('price_all_package').innerHTML =  "ab "+al_price;

	if(hotel_package == 'false')
	{
		 $('hotel_package').disabled = true;
		 $('packagecontainer_hotel').style.display = 'none';
	}
	else $('price_hotel_package').innerHTML =  "ab "+ho_price;

	if(flight_package == 'false')
	{
		 $('flight_package').disabled = true;
		 $('packagecontainer_flight').style.display = 'none';
	}
	else $('price_flight_package').innerHTML =  "ab "+fl_price;
}
function setPackageFilter()
{
	if($('all_package').checked == false)
	{
		all_package = 'false';
	}
	else
	{
		all_package = 'true';
	}

	if($('hotel_package').checked == false)
	{
		hotel_package = 'false';
	}
	else
	{
		hotel_package = 'true';
	}

	if($('flight_package').checked == false)
	{
		flight_package = 'false';
	}
	else
	{
		flight_package = 'true';
	}
	filter_package = "true";
	showData();
}

// Save the order of the entry-page Boxes in the user-profile
function boxStoreOrder()
{
	new Ajax.Request('/boxorder.php?'+box_order, { method:'get' });
}

/* OVERLAY FUNCTIONS */
function showOverlay (id, filter)
{
	if (id == 'loginform' || id == 'loginwarning') load_FacebookJS();
	if ($(id) == null) return false;

	var dimensions = $(id).getDimensions();
	topOffset = 100;
	scrollOffset = document.documentElement.scrollTop;
	if (navigator.userAgent.indexOf("Safari") > 0) scrollOffset = window.pageYOffset;

	// Hide all DropDowns in IE6 to avoid optical errors
	if (parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6)
	{
		$$('select').each(function(item) { item.style.visibility = 'hidden'; });
		$(id).style.position = 'absolute';
	}
	else
	{
		$(id).style.position = 'fixed';
		scrollOffset = 0;
	}
	if (id == 'emailme') $(id).style.position = 'absolute';

	var top  = parseInt(((document.documentElement.clientHeight)/2)-(dimensions.height/2)+scrollOffset);
	var left = parseInt(((document.documentElement.clientWidth)/2)-(dimensions.width/2));

	toppos = (top-topOffset < 0) ? 10 : top-topOffset;
	$(id).style.top = toppos+'px';
	$(id).style.left = left+'px';
	if (filter != false)
	{
		showiframe(left,toppos,dimensions.width,dimensions.height);
		greyFilter ();
	}
	if (id != 'searchanimation') new Effect.Appear($(id), {duration: 0.5});
	else $(id).show();
}
function hideOverlays ()
{
	$$('.smalloverlay').each(function(item) {
		new Effect.Fade(item);
	});
	$$('.bigoverlay').each(function(item) {
		new Effect.Fade(item);
	});
	//new Effect.Fade(''greyfilter'');
	$('greyfilter').hide();
	hideiframe();

	// Show all DropDowns in IE6 again
	if (parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6)
	{
		$$('select').each(function(item) { item.style.visibility = 'visible'; });
	}

	if (mask == 'multicity' && logoverlay == 'false'){
		location.href = '/';
	}

}
function hideOverlay (id, keepFilter)
{
	new Effect.Fade(id);
	if (keepFilter != true) $('greyfilter').hide();
	hideiframe();

	// Show all DropDowns in IE6 again
	if (parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6)
	{
		$$('select').each(function(item) { item.style.visibility = 'visible'; });
	}
}

function greyFilter ()
{
	$('greyfilter').style.height = $('page').offsetHeight+'px';
	$('greyfilter').style.width = document.documentElement.clientWidth;
	//new Effect.Appear('greyfilter');
	$('greyfilter').show();
}


/* RESULT PAGES */
var logozaehler = 4;
var logoLoops = 0;
function getLogos ()
{
	for (i=0; i<4; i++)
	{
		$('logos').innerHTML += '<span class="inline" style="width:130px;height:40px;">' +
								'<img id="providerLogo'+i+'" src="/design/images/providers/'+logoProduct+'/'+providers[i]+'" alt="'+providers[i]+'" />' +
								'</span>';
	}
	$('logos').innerHTML += '<div class="clear"></div>';
	logoLoop = window.setInterval("switchLogos()", 2000);
}
function switchLogos()
{
	var random = Math.round(Math.random() * 4);
	random--;

	if ($('progresspage').style.display == 'none') window.clearInterval(logoLoop);

	if ($('providerLogo'+random) == null) return true;

	//$('providerLogo'+random).src = '/design/images/providers/'+logoProduct+'/'+providers[logozaehler];
	new Effect.Fade($('providerLogo'+random), {
		duration: 0.2,
		afterFinish: function()
        {
     		$('providerLogo'+random).src = '/design/images/providers/'+logoProduct+'/'+providers[logozaehler];
     		new Effect.Appear($('providerLogo'+random));
		}
	});

	logozaehler++;
	if (logozaehler == providers.length) logozaehler = 0;

	logoLoops++;
	if (logoLoops >= maxLoops) window.clearInterval(logoLoop);
}

function toggleClass (c, action)
{
	$$('.'+c).each(function(item) {
		if 		(action == 'hide') item.hide();
		else if (action == 'show') item.show();
		else item.toggle();

		newWidth = item.style.display == 'none' ? '206px' : '73px';
		$$('.price').each(function(item2) {
			item2.style.width = newWidth;
		});
	});
}

/* SEARCH MASKS */
function changeCarSearchType(option)
{
	if (option == 'sameDO')
	{
		$('dropOffCity').hide();
		$('pickUpCity').className = 'inputBig';
		$('autocomplete_choices').style.width = '625px';

		if ($('pickUpt').alt == $('pickUpt').value) $('pickUpt').value = $('samedropofftxt').innerHTML;
		$('pickUpt').value = $('samedropofftxt').innerHTML;
	}
	else
	{
		$('pickUpCity').className = 'input';
		$('dropOffCity').show();
		$('autocomplete_choices').style.width = '300px';

		if ($('pickUpt').alt == $('pickUpt').value) $('pickUpt').value = $('otherdropofftxt').innerHTML;
		$('pickUpt').value = $('otherdropofftxt').innerHTML;
	}
}

function changeFlightSearchType(option)
{
	$('retcontainer').style.visibility = (option == 'rt') ? 'visible' : 'hidden';
	checkRoutes('false');
}

function changeFlightSearchTypeFare(option)
{
	$('retcontainer').style.visibility = (option == 'rt') ? 'visible' : 'hidden';
	rt = (option == 'rt') ? '' : 'dep';
}
// change the value for the flexible search
function changeFlex (variable, what)
{
	if (variable == 'undefined') variable = 'dep';
	if (what 	 == 'undefined') what 	  = 'more';

	oldval = parseInt($(variable+'Flex').value);
	newval = (what == 'more') ? (oldval + 1) : (oldval - 1);

	if (newval < 0) newval = 0;
	if (newval > 3) newval = 3;

	$(variable+'Flex').value = newval;
	$(variable+'FlexDiv').innerHTML = newval;
}

/* DEAL FINDER */
function getAutosuggestLive (field, width, which)
{
	if (width != null) $('autocomplete_choices').style.width = width+'px';

	new Ajax.Autocompleter(field, "autocomplete_choices", "/liveTypeahead.php", {
		parameters: 'type=flights&which='+which,
		paramName: 'input',
		minChars: 3,
		delay: 0.25,
		frequency: frequency,
		updateElement: function(data)
		{
			// fill in hidden geonameid for hotel cross-search
			if (which == 'depart')
			{
				$('daptid').value = data.id;
				$('dcoid').value = data.title;
			}
			else
			{
				$('aaptid').value = data.id;
				$('acoid').value = data.title;
			}

			// Fill input field, ignoring the informal span
			data.innerHTML = str_replace ('<span class="highlight">', '', data.innerHTML);
			data.innerHTML = str_replace ('</span>', '', data.innerHTML);

			data.innerHTML = str_replace ('<SPAN class=highlight>', '', data.innerHTML);
			data.innerHTML = str_replace ('</SPAN>', '', data.innerHTML);

			var Ausdruck = /^(.+)<span/i;
  			Ausdruck.exec(data.innerHTML);
  			$(field).value = RegExp.$1;
	     }
	});
}

/* "SOCIAL" FUNCTIONS */
// Save the order of the entry-page Boxes in the user-profile
function tweet (message, url)
{
	//date = str_replace(' - --', '', $('travelDate').innerHTML);
	//message = str_replace('dAtE', date, message);

	link = "/shorturl.php?message="+message+"&url="+url
	window.open (link, 'twitter');
}
function share (message, url)
{
	url = escape (url);
	url = str_replace ('/', '%2F', url);

	link = "http://www.facebook.com/sharer.php?t="+message+"&u="+url;
	window.open (link, 'facebook', 'width=600,height=400');
}
function feed (message, url)
{
	if ($('loggedIn').value == 'false')
	{
		load_FacebookJS();
		window.setTimeout("initFB('"+message+"', '"+url+"')", 2000);
		//initFB(message, url);
	}
	else stream (message, url)
}
function stream (message, url)
{
	//url = 'http://'+domainname+'/'+url;
	url = unescape(url);
	//date = str_replace(' - --', '', $('travelDate').innerHTML);
	//message = str_replace('dAtE', date, message);
	if(message.length == 0) message = '{*actor*} hat gerade nach einem Flug auf checkfelix.com gesucht';

	var attachment = {
		'name':'Gerade auf checkfelix.com gefunden',
		'href':url,
		'caption':message,
		'description':'checkfelix.com - Meine Reisesuchmaschine',

		'media':[{
			'type':'image',
			'src':'http://www.checkfelix.com/design/images/felix.gif',
			'href':url
		}]
	};
	FB.Connect.streamPublish(message, attachment);
}

/* GAME */
function addFriends (howmuch)
{
	for (i=0; i<howmuch; i++)
	{
		if(gameFriends >= 100)
		{
			$('friendcount').innerHTML = 'Leider k&ouml;nnen sie nicht mehr als 100 Freunde einladen!';
			$('addFrn').innerHTML = '';
			return 0;
		}
		else
		{
			gameFriends++;
			var obj = gameFriends+"new";
			$(obj).style.display = 'inline';
		}
	}
	return 0;

	for (i=0; i<howmuch; i++)
	{
		if(gameFriends >= 100)
		{
			$('friendcount').innerHTML = 'Leider k&ouml;nnen sie nicht mehr als 100 Freunde einladen!';
			$('addFrn').innerHTML = '';
			return 0;
		}
		gameFriends++;
		$('gameFriends').innerHTML += '<div class="blueBG left">'+gameFriends+'</div>';
		$('gameFriends').innerHTML += $('gameFriendDummy').innerHTML;
	}
}

function feed2 (message, url, img)
{
	if ($('loggedIn').value == 'false')
	{
		load_FacebookJS();
		window.setTimeout("initFB('"+message+"', '"+url+"')", 2000);
		//initFB(message, url);
	}
	else
	{
		stream2 (message, url, img);
	}
}

function stream2 (message, url, img)
{

	url = unescape(url);
	img = unescape(img);

	var attachment = {
		'name':'checkfelix.com Gewinnspiel',
		'href':url,
		'caption':'Mach auch du mit beim checkfelix.com Reisegewinnspiel',
		'description':'checkfelix.com - Meine Reisesuchmaschine',

		'media':[{
			'type':'image',
			'src':img,
			'href':url
		}]
	};
	FB.Connect.streamPublish(message, attachment);
}

function sendGameForm(spielname)
{
	$('game').submit();
}

function hideCityDivs()
{
	$('wien').style.display = "none";
	$('salzburg').style.display = "none";
	$('innsbruck').style.display = "none";
}

function showCityDiv(divid)
{
	$(divid).style.display = "inline";
	$(divid).style.cursor = "pointer";
}

function submitCityForm(val,gameid)
{
	$('cityinput').value = val;
	$(gameid).submit();
}

function checkGameValue(val, inp, focblur)
{
	if(focblur)
	{
		if(inp.value == "")
		{
			inp.value = val;
		}
	}
	else
	{
		if(inp.value == val)
		{
			inp.value = "";
		}
	}
}

function checkOther()
{
	var q1 = $('q1');
	var value = q1[q1.selectedIndex].value;

	if(value == '5')
	{
		$('otherinput').style.display = 'inline';
	}
	else
	{
		$('otherinput').style.display = 'none';
	}
}
function checkOtherValue(dir)
{
	if($('q2').value == "Bitte hier eintragen" && dir == 1)
	{
		$('q2').value = '';
	}

	if($('q2').value == '' && dir == 2)
	{
			$('q2').value = 'Bitte hier eintragen';
	}
}



/* HISTORY */
function fill_searchdata (id, product, submit)
{
	if (product == 'flights')
	{
		$('adults'  ).value = $('hist_adults_'+id).value;
		$('adults_text'  ).innerHTML = $('adults').options[$('adults').selectedIndex].text;
		$('children').value = $('hist_children_'+id).value;
		$('children_text').innerHTML = $('children').options[$('children').selectedIndex].text;
		$('infants' ).value = $('hist_infants_'+id).value;
		$('infants_text' ).innerHTML = $('infants').options[$('infants').selectedIndex].text;
		$('dept' 	).value = $('hist_dep_'+id).value;
		$('arrt' 	).value = $('hist_arr_'+id).value;
		$('depFlex'	).value = $('hist_depflex_'+id).value;
		$('depFlexDiv'	).innerHTML = $('hist_depflex_'+id).value;
		$('cabin' ).value = $('hist_class_'+id).value;
		$('cabin_text' ).innerHTML = $('cabin').options[$('cabin').selectedIndex].text;

		dispdate = $('hist_depd_'+id).value+'.'+$('hist_depm_'+id).value+'.'+$('hist_depy_'+id).value.substring(0,4);
		_assign( $('hist_depy_'+id).value,$('hist_depm_'+id).value,$('hist_depd_'+id).value,1,0,dispdate );
		if ($('hist_type_'+id).value == 'rt')
		{
			$('retcontainer').style.visibility='visible';
			$('rt').checked='checked';
			$('ow').checked='';

			$('hist_retd_'+id).value+'.'+$('hist_retm_'+id).value+'.'+$('hist_rety_'+id).value.substring(0,4);
			_assign( $('hist_rety_'+id).value,$('hist_retm_'+id).value,$('hist_retd_'+id).value,0,0,dispdate );
			$('retFlex' ).value = $('hist_retflex_'+id).value;
			$('retFlexDiv' ).innerHTML = $('hist_retflex_'+id).value;
		}
		if ($('hist_type_'+id).value == 'ow')
		{
			$('retcontainer').style.visibility='hidden';
			$('rt').checked='';
			$('ow').checked='checked';
		}
	}
	if (product == 'hotels')
	{
		$('hotelNameS').value = $('hist_hotelname_'+id).value;
		$('cityt').value = $('hist_city_'+id).value;
		$('country').value = $('hist_coCode_'+id).value;
		for (i=0; i<$('roomsdd').options.length; i++)
		{
			if ($('roomsdd').options[i].value == $('hist_rooms_'+id).value) $('roomsdd').selectedIndex = i;
		}
		//showrooms();
		for (i=0; i<$('categorydd').options.length; i++)
		{
			if ($('categorydd').options[i].value == $('hist_category_'+id).value) $('categorydd').selectedIndex = i;
		}
		dispdate = $('hist_arrd_'+id).value+'.'+$('hist_arrm_'+id).value+'.'+$('hist_arry_'+id).value.substring(0,4);
		_assign( $('hist_arry_'+id).value,$('hist_arrm_'+id).value,$('hist_arrd_'+id).value,1,0,dispdate );
		dispdate = $('hist_depd_'+id).value+'.'+$('hist_depm_'+id).value+'.'+$('hist_depy_'+id).value.substring(0,4);
		_assign( $('hist_depy_'+id).value,$('hist_depm_'+id).value,$('hist_depd_'+id).value,0,0,dispdate );

		checkform();
	}
	if (product == 'cars')
	{
		$('pickUpGeonameid' ).value = $('hist_pickUpGeonameid_'+id	).value;
		$('dropOffGeonameid').value = $('hist_dropOffGeonameid_'+id	).value;
		$('pickUpAptCode' 	).value = $('hist_pickUpAptCode_'+id	).value;
		$('dropOffAptCode'	).value = $('hist_dropOffAptCode_'+id	).value;

		$('pickUpt').value = $('hist_pickUpDisplay_'+id).value;
		$('dropOfft').value = $('hist_dropOffDisplay_'+id).value;

		for (i=0; i<$('ACRISSClass').options.length; i++)
		{
			if ($('ACRISSClass').options[i].value == $('hist_ACRISSClass_'+id).value) $('ACRISSClass').selectedIndex = i;
		}
		$('depHour' ).value = $('hist_deph_'+id).value;
		$('depHour_text' ).innerHTML = $('depHour').options[$('depHour').selectedIndex].text;
		$('retHour' ).value = $('hist_reth_'+id).value;
		$('retHour_text' ).innerHTML = $('retHour').options[$('retHour').selectedIndex].text;

		if ($('hist_sameDropOff_'+id).value == 'true')
		{
			$('sameDO').checked='checked';
			$('otherDO').checked='';
			$('dropOffCity').style.display='none';
  			//$('samedropoff').style.display='';
   			$('pickUpCity').className = "inputBig";
   			//$('otherdropoff').style.display='none';
		}
		else
		{
			$('sameDO').checked='';
			$('otherDO').checked='checked';
			$('dropOffCity').style.display='block';
  			//$('samedropoff').style.display='none';
  			$('pickUpCity').className = "input";
  			//$('otherdropoff').style.display='';

		}

		dispdate = $('hist_depd_'+id).value+'.'+$('hist_depm_'+id).value+'.'+$('hist_depy_'+id).value.substring(0,4);
		_assign( $('hist_depy_'+id).value,$('hist_depm_'+id).value,$('hist_depd_'+id).value,1,0,dispdate );
		dispdate = $('hist_retd_'+id).value+'.'+$('hist_retm_'+id).value+'.'+$('hist_rety_'+id).value.substring(0,4);
		_assign( $('hist_rety_'+id).value,$('hist_retm_'+id).value,$('hist_retd_'+id).value,0,0,dispdate);
	}

	window.scrollTo(0,0);
	if (submit == true)
	{
		$('fromhistory').value = 'yes';
		document.sf.submit();
	}
}
function showhide_hist (id)
{
	for (i=0; i<historyelements; i++)
	{
		$('open_'+i).show();
		$('close_'+i).hide();
		$('hist_details_'+i).hide();
		//$('hist_box2_'+i).hide();
	}
	_hideshow('open_'+id, 0);
	_hideshow('close_'+id, 0);
	_hideshow('hist_details_'+id, 1);
	//_hideshow('hist_box2_'+id, 1);
}
var historylimit = 3;
function _history (histID, product)
{
	if (histID == 0) h = ''
	else h = '&histID='+histID;

	rdm=Math.random()*10000000+10000000;
	new Ajax.Request( "/history.php?rdm="+rdm+h+'&product='+product+'&count='+historylimit, {
		method:'get',
		onSuccess: function(x)
		{
			var historydiv = $(("misccontainer"));
			historydiv.innerHTML = x.responseText;
		}
	});
}

var histProduct = '';
function _history_all (histID, product, offset)
{
	histProduct = product;
	if (histID == 0)
	{
		h = '';
	}
	else
	{
		 h = '&histID='+histID;
	}

	if (typeof offset == 'undefined')
	{
		offset = 0;
	}

	var rdm = Math.random()*10000000+10000000;
	histurl = "/history_all.php?rdm="+rdm+h+'&product='+product+'&count='+historylimit+'&offset='+offset;
	if (product == 'hotels' )
	{
		new Ajax.Request( histurl, {
		method:'get',
		onSuccess: function(x)
		{
			var historydiv = $(("historycontainer_hotels"));
			historydiv.innerHTML = "<div>"+x.responseText+"</div>";
		}
		});

	}
	if (product == 'flights')
	{
		new Ajax.Request( histurl, {
		method:'get',
		onSuccess: function(x)
		{
			var historydiv = $(("historycontainer_flights"));
			historydiv.innerHTML = "<div>"+x.responseText+"</div>";
		}
		});
	}
	if (product == 'cars' )
	{
		new Ajax.Request( histurl, {
		method:'get',
		onSuccess: function(x)
		{
			var historydiv = $(("historycontainer_cars"));
			historydiv.innerHTML = "<div>"+x.responseText+"</div>";
		}
		});
	}
}

function handleHistory_all_f()
{
	if (xmlhttp.readyState == 4)
	{
		if (xmlhttp.status == 200)
		{
			var historydiv = $(("historycontainer_flights"));
			historydiv.innerHTML = '';

			xmlDocument = xmlhttp.responseText;

			var element = document.createElement("div");
			element.innerHTML = xmlDocument;
			historydiv.appendChild(element);
		}
		else return false;
	}
}

function handleHistory_all_h()
{
	if (xmlhttp2.readyState == 4)
	{
		if (xmlhttp2.status == 200)
		{
			var historydiv_h = $(("historycontainer_hotels"));
			historydiv_h.innerHTML = '';
			xmlDocument2 = xmlhttp2.responseText;

			var element_h = document.createElement("div");
			element_h.innerHTML = xmlhttp2.responseText;
			historydiv_h.appendChild(element_h);
		}
		else return false;
	}
}

function handleHistory_all_c()
{
	if (xmlhttp3.readyState == 4)
	{
		if (xmlhttp3.status == 200)
		{
			var historydiv_c = $(("historycontainer_cars"));
			historydiv_c.innerHTML = '';
			xmlDocument3 = xmlhttp3.responseText;

			var element_c = document.createElement("div");
			element_c.innerHTML = xmlhttp3.responseText;
			historydiv_c.appendChild(element_c);
		}
		else return false;
	}
}

function handleHistory_all()
{
	if (xmlhttp.readyState == 4)
	{
		if (xmlhttp.status == 200)
		{
			var historydiv = $(("historycontainer_"+histProduct));
			historydiv.innerHTML = '';
			xmlDocument = xmlhttp.responseText;

			var element = document.createElement("div");
			element.innerHTML = xmlhttp.responseText;
			historydiv.appendChild(element);
		}
		else return false;
	}
}

/* CROSS SALE SEARCH */
function checkCrossSaleSearch ()
{
	if ($('findhotels').checked == true)
	{

		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('geonameid').value;
		city   	 = $('arrt').value;
		country	 = $('arrcountry').value;


		citytext = city; //  escape(city + ' |'+country+'|')
		parms = '&cityt='+citytext+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&rooms=1'+'&geonameid='+geonameid+
				'&adults1=2&children1=0&infants1=0&roomtype1=do'+
				'&adults2=0&children1=0&infants1=0&roomtype2=do'+
				'&adults3=0&children1=0&infants1=0&roomtype3=do'+
				'&adults4=0&children1=0&infants1=0&roomtype4=do';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hss+parms,'hotelsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('flugsuche', 'option', 'search hotels & flights - '+city);
		}
	}
	if ($('findcars').checked == true)
	{
		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('geonameid').value;
		city   	 = $('arrt').value;
		country	 = $('arrcountry').value;

		citytext = city; // escape(city);
		parms = '&pickUpt='+citytext+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&pickUpGeonameid='+geonameid+
				'&search=true';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hsc+parms,'carsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('flugsuche', 'option', 'search cars & flights - '+city);
		}
	}

}

function checkCrossSaleSearchHotels()
{
	if ($('findflights').checked == true)
	{
		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('geonameid').value;
		city   	 = $('cityt').value;


		citytext = escape(city);
		city = encodeURI(city);
		parms = '&dept=&arrt='+city+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&geonameid='+geonameid+
				'&adults=1&children=0&infants=0&cabin=e';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hsf+parms,'flightsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('hotelsuche', 'option', 'search hotels & flights - '+city);
		}
	}

	if ($('findcars').checked == true)
	{
		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('geonameid').value;
		city   	 = $('cityt').value;
		citytext = escape(city);

		parms = '&pickUpt='+citytext+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&pickUpGeonameid='+geonameid+
				'&search=true';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hsc+parms,'carsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('hotelsuche', 'option', 'search cars & hotels - '+city);
		}
	}
	document.sf.submit();
}

function checkCrossSaleSearchCars()
{
	if ($('findflights').checked == true)
	{
		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('pickUpGeonameid').value;
		city   	 = $('pickUpt').value;

		citytext = escape(city);
		parms = '&dept=&arrt='+city+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&geonameid='+geonameid+
				'&adults=1&children=0&infants=0&cabin=e';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hsf+parms,'flightsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('mietwagensuche', 'option', 'search cars & flights - '+city);
		}
	}

	if ($('findhotels').checked == true)
	{
		depd  	 = $('depd').value;
		retd  	 = $('retd').value;
		depym  	 = $('depym').value;
		retym  	 = $('retym').value;
		geonameid= $('pickUpGeonameid').value;
		city   	 = $('pickUpt').value;

		citytext = escape(city);
		parms = '&cityt='+citytext+'&depd='+depd+'&retd='+retd+'&depym='+depym+'&retym='+retym+
				'&rooms=1'+'&geonameid='+geonameid+
				'&adults1=2&children1=0&infants1=0&roomtype1=do'+
				'&adults2=0&children1=0&infants1=0&roomtype2=do'+
				'&adults3=0&children1=0&infants1=0&roomtype3=do'+
				'&adults4=0&children1=0&infants1=0&roomtype4=do';

		if (city != '' && geonameid != '')
		{
			var fenster = window.open(hss+parms,'hotelsearch', "resizable=1,width="+(screen.availWidth/2)+",height="+(screen.availHeight-50)+"top=0,left="+(screen.availWidth/2)+",scrollbars=yes,toolbar=yes,menubar=yes,location=yes");
			_track ('mietwagensuche', 'option', 'search hotels & cars - '+city);
		}
	}
	document.sf.submit();
}

function removeFlightFromFavourites(flightId) {

    jQuery('#resultlistFav').find(flightId).remove();

    var favLinkNode = jQuery(flightId).find('.fav_a');
    favLinkNode.removeClass('fav_a').addClass('fav');

    var newclick = new Function("addFlightToFavourites('"+flightId+"'); return false;");
    favLinkNode.attr('onclick', '').click(newclick);

    var offerInFavs = jQuery('#resultlistFav').find('.result');

    if (offerInFavs.size() == 0) {
        jQuery('#favs').hide();
    }
}

function addFlightToFavourites(flightId) {

    var favLinkNode = jQuery(flightId).find('.fav');

    favLinkNode.removeClass('fav').addClass('fav_a');

    var newclick = new Function("removeFlightFromFavourites('"+flightId+"'); return false;");
    favLinkNode.attr('onclick', '').click(newclick);

    jQuery(flightId).clone(true, true).appendTo('#resultlistFav');

    jQuery('#favs').show();
}

function addthisBookmark(){

	if(navigator.appName.toLowerCase() == 'microsoft internet explorer'){
		window.external.addFavorite(location.href, 'Checkfelix.com');
	}
	else if(navigator.appName.toLowerCase() == 'opera'){
		alert('Press <Control>+D to bookmark');
	}
	else{
		agent = navigator.userAgent.toLowerCase();
		reg = new RegExp('(safari)');
		res = (reg.test(agent));

		reg1 = new RegExp('(firefox)');
		res1 = (reg1.test(agent));

		if(res == true){
			alert('Press <Control>+D to bookmark');
			return true;
		}

		if(res1 == true){
			window.external.addPanel('Checkfelix.com', 'http://www.checkfelix.com/', '');
		}
	}
}

function showText(type, which){

	if(which == 'mail'){
		types = new Array('usetxtm','nomailm','offertxtm','stornom','othersm');
	}
	else{
		types = new Array('usetxt','nomail','offertxt','storno','others');
	}

	//$(type).style.display = 'block';
	new Effect.BlindDown(type);


	for(a=0;a<types.length;a++){
		if(types[a] != type)new Effect.BlindUp(types[a]);//$(types[a]).style.display = 'none';//
	}
}

function hideText(type){
	$(type).style.display = 'none';
}

function trackWeather (city, link)
{
	new Ajax.Request('/weathertrack.php',
	{
		method:'get', parameters: {
			city: city
		}
	});

	var wfenster=window.open(link,'','status=yes,scrollbars=yes,resizable=yes,width=900,height='+screen.height+'');

}

function trackPackages (airport, link)
{
	new Ajax.Request('/packagesRPflightsTrack.php',
	{
		method:'get', parameters: {
			airport: airport
		}
	});

	var wfenster=window.open(link,'','status=yes,scrollbars=yes,resizable=yes,width=900,height='+screen.height+'');

}
var tripd;
var tripch = false;
var fillre = false;
var fillsh = false;
function changeTriptype(id, first)
{
	tripch = true;
	fillre = true;
	fillsh = true;
	tripd = id;
	//IE6 & 5 hack, to hide the big Selecets, ugly but working!
	if(first == "true")
	{
		if (parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6)
		{
			//Gebiete
			$('fgebiet').style.background = '';
			$('fgebiet').className = "select2 left";
			$('fgebiet').parentNode.className = "left";
			$('selectedtxt').parentNode.className = "left";
			$('selectedtxt').style.background = '';
			$('selectedtxt').style.display = "none";
			$('fgebiet').style.top = "0px";

			//Reederei
			$('reederei').style.background = '';
			$('reederei').className = "select3 left";
			$('reederei').parentNode.className = "left";
			$('reederei').parentNode.style.width = "310px";
			$('selectedreederei').parentNode.className = "left";
			$('selectedreederei').style.background = '';
			$('selectedreederei').style.display = "none";
			$('reederei').style.top = "0px";

			//Ships
			$('ship').style.background = '';
			$('ship').className = "select3 right";
			$('ship').parentNode.className = "right";
			$('ship').parentNode.style.width = "310px";
			$('selectedship').parentNode.className = "right";
			$('selectedship').style.background = '';
			$('selectedship').style.display = "none";
			$('ship').style.top = "0px";
		}
	}

	new Ajax.Request("/php/cruises_getData.php", {
		method:'get', parameters: {
			action: 'changeTriptype',
			triptype: id
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix')
			{
				$('fgebiet').innerHTML = transport.responseText;
				val = $('fgebietsel').options[$('fgebietsel').selectedIndex].text;
				$('selectedtxt').innerHTML = val;

				if(selectedGebiet != null && first == "true")
				{
					selectGebiet(selectedGebiet);
				}

				if(first != "false" && first != "true")
				{
					selectGebiet(first);
				}
			}
			tripch = false;
		}
	});

	new Ajax.Request("/php/cruises_getData.php", {
		method:'get', parameters: {
			action: 'fillReederei',
			triptype: id
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix')
			{
				$('reederei').innerHTML = transport.responseText;
				val = $('reedereisel').options[$('reedereisel').selectedIndex].text;
				$('selectedreederei').innerHTML = val;

				if(selectedReederei != null && first == "true")
				{
					selectReederei(selectedReederei);
				}

			}
			fillre = false;
		}
	});

	new Ajax.Request("/php/cruises_getData.php", {
		method:'get', parameters: {
			action: 'fillShips',
			triptype: id
		},
		onSuccess: function(transport)
		{
			$('ship').innerHTML = transport.responseText;
				val = $('shipsel').options[$('shipsel').selectedIndex].text;
				$('selectedship').innerHTML = val;

				if(selectedShip != null && first == "true")
				{
					selectShip(selectedShip);
				}
			fillsh = false;
		}
	});
}
function fGebietChanged()
{
	val = $('fgebietsel').options[$('fgebietsel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedtxt').innerHTML = val;
}
fillsh2 = false;
function ReedereiChanged(id, first)
{
	new Ajax.Request("/php/cruises_getData.php", {
		method:'get', parameters: {
			action: 'changeReederei',
			reederei: id,
			triptype: tripd
		},
		onSuccess: function(transport)
		{
			if (transport.responseText != 'nix')
			{
				$('ship').innerHTML = transport.responseText;
				val = $('shipsel').options[$('shipsel').selectedIndex].text;
				$('selectedship').innerHTML = val;

				if(selectedShip != null && first == "true")
				{
					selectShip(selectedShip);
				}

				if(first != "false" && first != "true")
				{
					selectShip(first);
					$('sf').submit();
				}
			}

		}
	});

	val = $('reedereisel').options[$('reedereisel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedreederei').innerHTML = val;
}
function selectDurCat(duration,category)
{
	for (var i = 0; i < $('duration').options.length; i++)
	{
		if($('duration').options[i].selected == true && $('duration').options[i].value != duration)
		{
			$('duration').options[i].selected = false;
		}
		if($('duration').options[i].value == duration)
		{
			$('duration').options[i].selected = true;
		}
	}
	for (var i = 0; i < $('category').options.length; i++)
	{
		if($('category').options[i].selected == true && $('category').options[i].value != category)
		{
			$('category').options[i].selected = false;
		}
		if($('category').options[i].value == category)
		{
			$('category').options[i].selected = true;
		}
	}
}
function ShipChanged()
{
	val = $('shipsel').options[$('shipsel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedship').innerHTML = val;
}


function selectShip(shipID)
{
	for (var i = 0; i < $('shipsel').options.length; i++)
	{
		if($('shipsel').options[i].selected == true && $('shipsel').options[i].value != shipID)
		{
			$('shipsel').options[i].selected = false;
		}
		if($('shipsel').options[i].value == shipID)
		{
			$('shipsel').options[i].selected = true;
		}
	}
	val = $('shipsel').options[$('shipsel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedship').innerHTML = val;
}

function selectReederei(reedereiID)
{
	for (var i = 0; i < $('reedereisel').options.length; i++)
	{

		if($('reedereisel').options[i].selected == true && $('reedereisel').options[i].value != reedereiID)
		{
			$('reedereisel').options[i].selected = false;
		}
		if($('reedereisel').options[i].value == reedereiID)
		{
			$('reedereisel').options[i].selected = true;
		}
	}

	val = $('reedereisel').options[$('reedereisel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedreederei').innerHTML = val;
}

function selectGebiet(gebietsID)
{
	for (var i = 0; i < $('fgebietsel').options.length; i++)
	{
		if($('fgebietsel').options[i].selected == true && $('fgebietsel').options[i].value != gebietsID)
		{
			$('fgebietsel').options[i].selected = false;
		}
		if($('fgebietsel').options[i].value == gebietsID)
		{
			$('fgebietsel').options[i].selected = true;
		}
	}
	val = $('fgebietsel').options[$('fgebietsel').selectedIndex].text;
	if(val.substring(0,2) == '- ')
	{
		val = val.substring(2,val.length);
	}
	$('selectedtxt').innerHTML = val;
}

function submitCruises(gebiet,reed,ship,trip)
{

	if(toisset != 'true')
	{
		$('depDate').value = depDateAll;
		$('depd').value = depdAll;
		$('depym').value = depymAll;
	}
	if(fromisset != 'true')
	{
		$('retDate').value = retDateAll;
		$('retd').value = retdAll;
		$('retym').value = retymAll;
	}

	if(trip == 1)
	{
		$('hs').checked  = false;
		$('fl').checked  = true;
		changeTriptype('fl', gebiet)
	}
	else
	{
		$('fl').checked  = false;
		$('hs').checked  = true;
		changeTriptype('hs', gebiet)
	}
	while(fillsh == false || fillre == false || tripch == false )
	{
		//do nothing
	}
	ReedereiChanged(reed, ship);
}

function trackCAT(dir, adults, children,sear,sess)
{

		new Ajax.Request("/catTrack.php",
		{
			method:'get', parameters: {
			type: 'delivery',
			direction: dir,
			numadults: adults,
			numchildren: children,
			sessionID: sess,
			searchID: sear
		},
		onSuccess: function(data)
		{
			var id = data.responseText;
			var target = $('CATLink').href;
			target = target.replace(/\/deliveryID\//g,id);
			$('CATLink').href = target;
			$('CATContainer').style.display = "block";
		}
	});

}

//IFRAME Tabchanges
function shiftTab(id)
{
	if(id == 'tab1')
	{
		var show1 = document.getElementById(id);
		var hide1 = document.getElementById('tab2');
		var hide2 = document.getElementById('tab3');
		var showbt = document.getElementById(id+'bt');
		var hide1bt = document.getElementById('tab2'+'bt');
		var hide2bt = document.getElementById('tab3'+'bt');
	}
	if(id == 'tab2')
	{
		var show1 = document.getElementById(id);
		var hide1 = document.getElementById('tab1');
		var hide2 = document.getElementById('tab3');
		var showbt = document.getElementById(id+'bt');
		var hide1bt = document.getElementById('tab1'+'bt');
		var hide2bt = document.getElementById('tab3'+'bt');
	}
	if(id == 'tab3')
	{
		var show1 = document.getElementById(id);
		var hide1 = document.getElementById('tab2');
		var hide2 = document.getElementById('tab1');
		var showbt = document.getElementById(id+'bt');
		var hide1bt = document.getElementById('tab2'+'bt');
		var hide2bt = document.getElementById('tab1'+'bt');
	}
	show1.style.display = 'block';
	hide1.style.display = 'none';
	hide2.style.display = 'none';
	showbt.style.background = '#fff';
	hide1bt.style.background = '#049FE1';
	hide2bt.style.background = '#049FE1';
	showbt.style.color = '#049FE1';
	hide1bt.style.color = '#fff';
	hide2bt.style.color = '#fff';
}

function checkHotelCmp2()
{
    if($('geonameid') != undefined && $('depDate') != undefined && $('retDate') != undefined && $('cityt') != undefined) {

        if ($('geonameid').value != '' && $('depDate').value != '' && $('retDate').value != '' && $('cityt').value != '') {
            sendHotelCmp2Requests($('geonameid').value, $('depDate').value, $('retDate').value, $('cityt').value);
        }
    }
}

function sendHotelCmp2Requests(geonameid, depDate, retDate, city){
    new Ajax.Request("/php/checkHotelCompareTo.php",
                {
                    method: 'get', parameters: {
                        geonameid: geonameid,
                        city     : city,
                        depDate  : depDate,
                        retDate  : retDate
                    },
                    onSuccess: function(data)
                    {
                        var syntax = /(^|.|\r|\n)(\[\s*(\w+)\s*\])/;
			var tpl = new Template($('compToDummy').innerHTML, syntax);

                        compToHotelActive = [];

                        var response = data.responseText.evalJSON();

                        var compTo = response.compareTos;

                        var allcodes = false;

                        $('compTo').innerHTML = '';
                        for(var i = 0; i < compTo.length; i++) {

                            var tmpCmp = new Object;
                            tmpCmp.code         = compTo[i]['code'];
                            tmpCmp.id           = compTo[i]['id'];

                            tmpCmp.prechecked   = compTo[i]['prechecked'];
                            tmpCmp.termId       = compTo[i]['termId'];
                            tmpCmp.visible      = compTo[i]['visible'];

                            tmpCmp.sessionId    = response['sessionId'];
                            tmpCmp.cId          = response['cId'];
                            compToHotelActive[tmpCmp.code] = tmpCmp;

                            var ischeck = '';

                            if(compTo[i]['count'] != "0") {
                                if(compToHotelCount[compTo[i]['code']] == undefined) {
                                    ischeck = 'checked';
                                } else if(compToHotelCount[compTo[i]['code']] < compTo[i]['count']) {
                                    ischeck = 'checked';
                                }
                            }

                            if(allcodes == false) {
                                allcodes = '';
                            }

                            allcodes += compTo[i]['code']+",";

                            var tplVars = {
                                            name: 	compTo[i]['name'],
                                            id:		compTo[i]['code'],
                                            check:	ischeck
                            };

                            var element = document.createElement("div");
                            element.id = ("compTo"+compTo[i].code);
                            element.className = 'left';
                            element.innerHTML = tpl.evaluate(tplVars);
                            element.style.paddingRight = '5px';
                            $('compTo').appendChild(element);
                        }

			if(allcodes != false)
			{
				allcodes = allcodes.substr(0, allcodes.length - 1);
				$('prechecked').value= allcodes;
				$('sponsoredx').style.visibility = "visible";
			}
                    }
                });
}

var routeloop = null;
function checkRoutes(waitparm)
{
	if(routeloop == null && waitparm != 'true')
	{
		routeloop = setInterval('checkRoutes()', 500);
	}
	else
	{
		if($('dept') != undefined && $('arrt') != undefined && $('depDate') != undefined && $('retDate') != undefined)
		{
			var regex = new RegExp('[\(\{]{1}([A-Z]{3})[\)\}]{1}');
			var dep = regex.exec($('dept').value);
			var arr = regex.exec($('arrt').value);
			var depDateA = ($('depDate').value).split(".");
			var depDate = depDateA[2]+'-'+depDateA[1]+'-'+depDateA[0];
			if($('rt').checked)
			{
				var retDateA = ($('retDate').value).split(".");
				var retDate = retDateA[2]+'-'+retDateA[1]+'-'+retDateA[0];
			}
			else
			{
				var retDate = null;
			}
			if(dep != null && arr != null && $('depDate').value != '' && ( $('retDate').value != '' || $('ow').checked ) )
			{
				sendRouteRequests(dep[1],arr[1],depDate,retDate);
			}
		}
		clearInterval(routeloop);
		routeloop = null;
	}
}
function sendRouteRequests(dep,arr,depDate,retDate)
{
        var depDateObj = new Date(depDate);
        var retDateObj = new Date(retDate);

        //validate dates
        if ($('rt').checked && depDateObj > retDateObj) {
            return;
        }

	new Ajax.Request("/php/checkCompareTo.php",
		{
			method:'get', parameters: {
			from: dep,
			to: arr,
			depDate: depDate,
			retDate: retDate
		},
		onSuccess: function(data)
		{
			var syntax = /(^|.|\r|\n)(\[\s*(\w+)\s*\])/;
			var tpl = new Template($('compToDummy').innerHTML, syntax);
			var allcodes = false;
			compToActive = new Array();

			var compTo = data.responseText.evalJSON();
			$('compTo').innerHTML = '';
			for(var i = 0; i < compTo.length; i++)
			{
				compToActive[i] = compTo[i]['code'];
				var ischeck = ''
				if(compTo[i]['count'] != "0")
				{
					if(compToCount[compTo[i]['code']] == undefined)
					{
						ischeck = 'checked';
					}
					else if(compToCount[compTo[i]['code']] < compTo[i]['count'])
						{
							ischeck = 'checked';
						}
				}

				if(allcodes == false) allcodes = '';
				allcodes += compTo[i]['code']+",";
				var tplVars = {

						name: 	compTo[i]['name'],
						id:		compTo[i]['code'],
						check:	ischeck
				};

				var element = document.createElement("div");
				element.id = ("compTo"+compTo[i].code);
				element.className = 'left';
				element.innerHTML = tpl.evaluate(tplVars);
				element.style.paddingRight = '5px';
				$('compTo').appendChild(element);
			}
			if(allcodes != false)
			{
				allcodes = allcodes.substr(0, allcodes.length - 1);
				$('prechecked').value= allcodes;
				$('sponsoredx').style.visibility = "visible";
			}
		}
	});
}
