var markers = new Array();
if (GBrowserIsCompatible()) 
{
	var map;
	var geocode;
	function load(holder) 
	{
		var holder = holder == undefined ? 'gmap' : holder;
		map = new GMap2(document.getElementById(holder));
		geocode = new GClientGeocoder();
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		//map.addOverlay(new GLayer("org.wikipedia.en"));
		setLandMarks();setHotels();	} 
	
	function loadSingle(holder)
	{
		markers = new Array();
		var holder = holder == undefined ? 'gmap' : holder;
		map = new GMap2(document.getElementById(holder));
		geocode = new GClientGeocoder();
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		setLandMarks();			
	}
	
	function setmap(address)
	{
		try
		{
			geocode.getLocations(address, function(result)
				{
					if(result.Placemark.length == 0)
						showMap('hide');//return false;
					else
					{				
						var c = result.Placemark[0].Point.coordinates;
						setpoint(c[1], c[0], address);
					}	
				}
			);
		}
		catch(e)
		{
			//document.getElementById('map_holder').style.display = 'none';
		}
	}
	
	function setpoint(c1, c2, address)
	{
		var markerOptions = new GIcon(G_DEFAULT_ICON);
		markerOptions.image = 'http://www.exquiso.com/images/hotel.gif';	
		markerOptions.iconSize = new GSize(25, 25);

		var point = new GLatLng(c1, c2);
		map.setCenter(point, 12);
		map.addOverlay(marker(point, address, markerOptions) );
	}
	
	
	function marker(point, address, markerOptions, name)
	{
		var mark = new GMarker(point, markerOptions);		
	
		GEvent.addListener(mark, /*"mouseover"*/ "click", function() {
			mark.openInfoWindowHtml(address); //highlightMarker(address);
		});        
	//	GEvent.addListener(mark,"mouseout", function() {
	//		unhighlightMarker(address);
	//	});
	
		markers[address] = mark;
		return mark;
	}
	
	function marker_old(point, address)
	{
		mark=new GMarker(point);
		GEvent.addListener(mark, "click", function() {
			mark.openInfoWindowHtml(address);
	  });
		return mark;
	}
} 

function setLandMarks()
{
	var markerOptions = new GIcon(G_DEFAULT_ICON);
	markerOptions.image = 'http://www.exquiso.com/images/landmark.gif';	markerOptions.iconSize = new GSize(25, 25);
//	markerOptions.iconAnchor = new GPoint(40, 40);
	var point = new GLatLng(51.2173287435607, 6.7808063615507);map.setCenter(point, 13);var point = new GLatLng('51.2173287435607', '6.7808063615507');
map.addOverlay(marker(point, '<span class="popup_box"><a class="landmark_name" href="http://www.exquiso.com/landmark/en/20697/intimitate-theater">Intimitate Theater</a></span>', markerOptions, '<nobr>Intimitate Theater</nobr>' ) )
}

function setHotels()
{
	var markerOptions = new GIcon(G_DEFAULT_ICON);
	markerOptions.image = 'http://www.exquiso.com/images/hotel.gif';	
	markerOptions.iconSize = new GSize(25, 25);
//	markerOptions.iconAnchor = new GPoint(41, 41);
	var point = new GLatLng('51.217956542968750', '6.781139373779297');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/60286.html" rel="nofollow"><img src="http://www.exquiso.com/pictures/60286/hotel_listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/60286.html">NH Düsseldorf City Center</a><span class="price_from">price from <b>&euro;42</b></span></span></span>', markerOptions, '<nobr>NH Düsseldorf City Center</nobr>' ) )
var point = new GLatLng('51.217308044433594', '6.781376838684082');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/61884.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/61884/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzE1MC8xNTA4Mjk1LmpwZw==/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/61884.html">Four Points by Sheraton Central Düsseldorf</a><span class="price_from">price from <b>&euro;50</b></span></span></span>', markerOptions, '<nobr>Four Points by Sheraton Central Düsseldorf</nobr>' ) )
var point = new GLatLng('51.216522216796875', '6.782442092895508');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/21678.html" rel="nofollow"><img src="http://www.exquiso.com/pictures/21678/hotel_listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/21678.html">A&O Düsseldorf Hauptbahnhof</a><span class="price_from">price from <b>&euro;30</b></span></span></span>', markerOptions, '<nobr>A&O Düsseldorf Hauptbahnhof</nobr>' ) )
var point = new GLatLng('51.216854095458984', '6.778790950775146');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/60756.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/60756/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzE4MS8xODExNzg4LmpwZw==/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/60756.html">Nichtraucher-Hotel an der Kö</a><span class="price_from">price from <b>&euro;43</b></span></span></span>', markerOptions, '<nobr>Nichtraucher-Hotel an der Kö</nobr>' ) )
var point = new GLatLng('51.215782165527344', '6.781010627746582');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/65979.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/65979/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzE4MC8xODAwODU5LmpwZw==/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/65979.html">Hotel Petersburg</a><span class="price_from">price from <b>&euro;48</b></span></span></span>', markerOptions, '<nobr>Hotel Petersburg</nobr>' ) )
var point = new GLatLng('51.215847015380859', '6.780678272247314');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/61496.html" rel="nofollow"><img src="http://www.exquiso.com/pictures/61496/hotel_listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/61496.html">Hotel Diana</a><span class="price_from">price from <b>&euro;33</b></span></span></span>', markerOptions, '<nobr>Hotel Diana</nobr>' ) )
var point = new GLatLng('51.216480255126953', '6.780776023864746');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/60751.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/60751/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzEzNC8xMzQ3NTA2LmpwZw==/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/60751.html">Hotel Haus Hillesheim</a><span class="price_from">price from <b>&euro;55</b></span></span></span>', markerOptions, '<nobr>Hotel Haus Hillesheim</nobr>' ) )
var point = new GLatLng('51.218936920166016', '6.784019947052002');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/61032.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/61032/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzU4OC81ODg3NTkuanBn/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/61032.html">InterCityHotel Düsseldorf</a><span class="price_from">price from <b>&euro;59</b></span></span></span>', markerOptions, '<nobr>InterCityHotel Düsseldorf</nobr>' ) )
var point = new GLatLng('51.219120025634766', '6.783926010131836');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/62207.html" rel="nofollow"><img src="http://www.exquiso.com/pictures/62207/hotel_listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/62207.html">Rheingoldhotel</a><span class="price_from">price from <b>&euro;30</b></span></span></span>', markerOptions, '<nobr>Rheingoldhotel</nobr>' ) )
var point = new GLatLng('51.215656280517578', '6.779086112976074');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/61904.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/61904/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzczNy83MzcxNzMuanBn/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/61904.html">Hotel Herzog</a><span class="price_from">price from <b>&euro;50</b></span></span></span>', markerOptions, '<nobr>Hotel Herzog</nobr>' ) )
var point = new GLatLng('51.218177795410156', '6.777852535247803');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/68075.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/68075/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzY0NS82NDU1OTQuanBn/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/68075.html">Hotel Bristol</a><span class="price_from">price from <b>&euro;49</b></span></span></span>', markerOptions, '<nobr>Hotel Bristol</nobr>' ) )
var point = new GLatLng('51.219310760498047', '6.785098552703857');
map.addOverlay(marker(point, '<span class="popup_box"><a href="http://www.exquiso.com/details/en/63368.html" rel="nofollow"><img src="http://www.exquiso.com/picture_get/63368/hotel_listing/aHR0cDovL2FmZi5ic3RhdGljLmNvbS9pbWFnZXMvaG90ZWwvb3JnLzMyNC8zMjQxMjAuanBn/listing_1.jpg" class="hotel_image"/></a><span class="right_side"><span class="stars"><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="full_star"></span><span class="empty_star"></span></span><a class="name" href="http://www.exquiso.com/details/en/63368.html">Burns Art Hotel</a><span class="price_from">price from <b>&euro;53</b></span></span></span>', markerOptions, '<nobr>Burns Art Hotel</nobr>' ) )
}

function addLoadEvent(func) 
{
	var oldonload = window.onload;
	if (typeof window.onload != 'function') 
	{
		window.onload = func;
	} 
	else 
	{
		window.onload = function() 
		{
			if (oldonload) 
			{
				oldonload();
			}
		func();
		}
	}
}

function showMap(todo)
{
	var makeIt = todo == 'show' ? 'block' : 'none';
	//document.getElementById('map_border').style.display = makeIt;
}

var IE = document.all ? true : false;
var crd = new Array();
var tempX = 0
var tempY = 0
//==== Get the mouse coordinates
//onmousedown = getMouseXY;
function getMouseXY(e) 
{
	if (IE) 
	{
		tempX = event.clientX + document.documentElement.scrollLeft;
		tempY = event.clientY + document.documentElement.scrollTop;
	} 
	else 
	{
		tempX = e.pageX;
		tempY = e.pageY;
	} 
	
	if (tempX < 0)
		tempX = 0;
	if (tempY < 0)
		tempY = 0; 

	crd[0] = tempX;
	crd[1] = tempY;
	
	return true
}

function getY( oElement )
{
	var iReturnValue = new Array(0, 0);
	while( oElement != null )
	{
		iReturnValue[0] += oElement.offsetTop;
		iReturnValue[1] += oElement.offsetLeft;
		oElement = oElement.offsetParent;
	}
	return iReturnValue;
}


// the price slider
var sorted_current = '';
var currency = "&euro;";
function slider(min_price, max_price, ufi, sorted, pagenum, page)
{
	$('#left_current_price').html(min_price + currency);
	$('#right_current_price').html(max_price + currency);
	var vals = new Array(1, 5);
	$('#slider').slider({
		range: true,
		min: min_price,
		max: max_price,
		values: [min_price, max_price],
		slide: function(event, ui){
			$('#left_current_price').html(ui.values[0] + currency);
			$('#right_current_price').html(ui.values[1] + currency);
		},
		stop: function(event, ui) {
			var left = $(this).slider('values', 0);
			var right = $(this).slider('values', 1);
//			var fac_ids = getFacs();
			$('#left_current_price').html(left + currency);
			$('#right_current_price').html(right + currency);
			
			if( sorted != sorted_current && sorted_current.length > 0 )
				sorted = sorted_current;
			showList(left, right, ufi, sorted, pagenum, false, true, page);
		}
	});
};



function reinitialize(min, max, ufi, sorted, pagenum, page)
{
	$("#slider").slider( 'destroy' );
	slider(min, max, ufi, sorted, pagenum, page);
}

function showList(min_price, max_price, ufi, sorted, pagenum, reinit, count, page)
{
	//alert( $("#slider").attr('aria-disabled') );
	if($("#slider").attr('aria-disabled') == 'true')
		return false;
		
	if(count == false)
	{	
		$("#hotel_list").css('background', "url('/images/loader.gif') center top no-repeat");
		$(".filters_bar").css('margin-top', '20px');
	}
	sorted_current = sorted;
	var stars = getStars();

	//if( count == false)
	//if( reinit == false && count == false)
	//{
		min_price = $('#left_current_price').html();
		max_price = $('#right_current_price').html();
	//}
	
	$.post('http://www.exquiso.com/ajaxed_data.html', { 'page': page, min: min_price, max: max_price, sort: sorted, 'ufi': ufi, 'pagenum': pagenum, 'stars': stars, 'reinit': reinit, 'count': count }, function(data) {
		if( count == true )
		{
			$(".amenities .message b").html(data);
		}
		else
		{
			$('#hotel_list').html(data);
			$('.maplink').focus();
		}
		$("#hotel_list").css('background', "");
		$(".filters_bar").css('margin-top', '5px');
	});

	if(page == 'shortlist' || page == 'search_results')
	{
		if(page == 'shortlist')
		{
			var new_case = 'search_results';
			$("#shortlist_fixed > i").hide();
			var label = 'show search results';
		}
		else
		{
			var new_case = 'shortlist';
			$("#shortlist_fixed > i").show();
			var label = 'show shortlist';
		}
		
		$("#shortlist_fixed").attr('href', $("#shortlist_fixed").attr('href').replace(page, new_case));
		$("#shortlist_fixed > b").html(label);
	}
		
}

function changeSortOrder(obj, ufi, type, pagenum)
{
	var order_mode = $(".uparrow,.downarrow").attr('class');
	order_mode = order_mode.replace('arrow', '');
	if( order_mode == 'up' )
		$(".uparrow,.downarrow").attr('class', 'downarrow');
	else
		$(".uparrow,.downarrow").attr('class', 'uparrow');	
		
	sortEvents(obj, ufi, type, pagenum);	
}

function sortEvents(obj, ufi, type, pagenum)
{
	// if there is a quick search made
	var query = $("[name='quick_search']").attr('value');
	var dateFrom = '';
	var dateTo = '';

	var order_mode = $(".uparrow,.downarrow").attr('class');
	order_mode = order_mode.replace('arrow', '');

	var option = $(obj).val();
	$.post('http://www.exquiso.com/ajaxed_data.html', {'page': 'events', 'order': option, 'order_mode': order_mode, 'search': query, 'ufi': ufi, 'type': type, 'pagenum': pagenum, 'dateFrom': dateFrom, 'dateTo': dateTo}, function(data) {
		$("#events_list").html(data);
		$('.page_link').focus();
	});
}

function getStars()
{
	var stars = new Array();
	for(i=0; i<=5; i++)
	{
		stars.push( $("[name='stars_"+ i +"']").attr('checked') );
	}
	return escape(stars);
}

function centerHolder(obj)
{
	var scroll = getScroll();
	if($.browser.opera) {
		windowHeight = window.innerHeight;
		windowWidth = window.innerWidth;
	}else{
		windowHeight = $(window).height();
		windowWidth = $(window).width();
	};
	
	$(obj).css('top', scroll['scrollTop'] + 100 + 'px' );
	$(obj).css('left', (windowWidth/2) - ($(obj).width()/2) + 'px');
}

function getScroll()
{
	scrollTop = window.pageYOffset || document.documentElement.scrollTop || 0;
	scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || 0;
	return {scrollTop:scrollTop,scrollLeft:scrollLeft};
};


$('#events').ajaxStart( function() {
	$(this).css('background', "url('http://www.exquiso.com/images/loader.gif') center top no-repeat");
	$("#events .heading").css('margin-top', '20px');
} );

$('#events').ajaxStop( function() {
	$(this).css('background', "");
	$("#events .heading").css('margin-top', '5px');
} );

function changeDates(day, month, year, event)
{
	//$("#" + event + " .find_hotel").datepicker({ dateFormat: 'dd/mm/yy', minDate:  new Date(year, month, day ), onSelect: function(input) { } });
	
	month = month - 1;
	$("#logo").focus();
	$('.arrival_date').datepicker( 'setDate', new Date(year, month, day ) );
	$('.departure_date').datepicker( 'setDate', new Date(year, month, day + 2 ) );
	$('.arrival_date').datepicker('show');
}

function whatTime()
{
	var text = 'this_is';
	text += '_now';
	document.getElementById('what_time').value = text;
}

function showRooms(hid, city, date_from, date_to, page)
{
	if($("#avail_info_" + hid).html().length > 1)
	{
		$("#avail_info_" + hid).empty();
		$("#avail_info_" + hid).hide(300);
		$("#avail_rooms_" + hid).html('show the available room types');
		return true;
	}
	$("#avail_rooms_" + hid).append('&nbsp;&nbsp;&nbsp;<img src="http://www.exquiso.com/images/ajax-loader-rooms.gif" width="12" />');
	$.post('http://www.exquiso.com/ajaxed_data.html', {hid: hid, ufi: city, df: date_from, dt: date_to, page: page}, function(data){
		$("#avail_info_" + hid).html(data);
		$("#avail_info_" + hid).slideDown(500);
		$("#avail_rooms_" + hid).html('hide the available room types');
	});
}
function shortListEdit(mode, hid, cid, df, dt, price)
{
	var where = $('.shortlist').html() == 'show search results';
	$.post('http://www.exquiso.com/ajaxed_data.html', {page: 'shortlist_edit', 'case':mode, hid: hid, cid: cid, df: df, dt:dt, min_price: price}, function(data) {
		if(data > 0)
		{
			$('.shortlist').show();
			$('.shortlist_info').show();
			label = '<b>@hotels@</b> hotels added';
			label = label.replace('@hotels@', data);
			$('.shortlist_info').html(label);

			// details case
			var text = $("#shortlist_fixed > i").html();
			if(text)
			{
				if(data == 1 || data == 2)
					$("#shortlist_fixed").show();
				$("#shortlist_fixed > i").html(text.replace(/\([0-9]+/, '(' + data));
			}
		}
		else
		{
			if(where == false)
				$('.shortlist').hide();
			$('.shortlist_info').hide();
			// details case
			$("#shortlist_fixed").hide();
		}
	});
	if(mode == 'add')
	{
		if($('#remove_' + hid).length == 0)
		{
			$('#add_' + hid).before('<span title="remove this hotel from your custom shortlist" class="remove" id="remove_' + hid + '" style="display:none;" onclick="shortListEdit(\'remove\', ' + hid + ', ' + cid + ', ' + df + ', ' + dt + ', ' + price + ');"></span>');
			$('#remove_' + hid).show(600);
			$('#add_' + hid).css('background-color', '#339900');
		}
	}
	else
	{
		$('#remove_' + hid).hide('normal', function(){
			$('#remove_' + hid).remove();
		});
		$('#add_' + hid).css('background-color', '#FFF');
		if(where == true)
		{
			$("#hotel_" + hid).fadeOut(600);
		}
	}	
}
function check_header(hid, picture)
{
	$.post('http://www.exquiso.com/ajaxed_data.html', {hid: hid, picture: picture, page: 'details_photos'}, function(data) {
		// .city_image
		if(data.length > 10)
		{
			//$(".city_image > img").attr('src', data);
			$("#banner").css('background', 'url(' + data + ')');
		}
	});
}

// details functions

function changePicture(selected, obj)
{
	$(".number_holder > .number").each(function(i) {
		$(this).css('border', '1px solid transparent');
	});
	
	$(obj).css('border', '1px solid #64B3DD');
	$(obj).css('border-left', '1px solid #FFF');
	$("#hotel_picture").fadeOut(400, function() { $("#hotel_picture").attr('src', thumb_pictures[selected]); $("#hotel_picture_big").attr('href', big_pictures[selected]);  $("#hotel_picture").fadeIn(500) });
	return false;
}

function changePhotos(href)
{
	$("#hotel_picture").fadeOut(400, function() { $("#hotel_picture").attr('src', href); $("#hotel_picture").fadeIn(500) });
	return false;
}

function availability(hid, cid, room_id, multi)
{
	var load_page = 'details_search';
	try {
		if(multi == 1 || multi == 2)
		{
			$(".book_multi").remove();
			if(multi == 1)
			{
				var new_button = '<span class="book_multi" onclick="availability('+ hid +','+ cid +',\''+ room_id +'\', 2);">back to single rooms</span>';
				load_page = 'details_search_multi';
			}
			else if(multi == 2)
			{
				var new_button = '<span class="book_multi" onclick="availability('+ hid +','+ cid +',\''+ room_id +'\', 1);">want to book multiple rooms?</span>';
				load_page = 'details_search';
			}
			$(".change").after(new_button);
		}
	} catch(e){}
	$("#available_info").html('<br /></br >').css('background', 'url(http://www.exquiso.com/images/ajax-loader-rooms.gif) center center no-repeat').slideDown();
	$.post('http://www.exquiso.com/ajaxed_data.html', {hid: hid, ufi: cid, date_from: $("#arrival_date").attr('value'), date_to: $("#departure_date").attr('value'), page: load_page }, function(data) {
		$("#available_info").css('background', '').html(data);
		var open_div = $("#availability_search").css('display') == 'none' ? "#search_label_storing" : "#availability_search";
		var preg = $(open_div).html().match(/<strong>(.*?)<\/strong>/gi);
		try{
			if(preg.length == 3)
			{
				var new_string = $(open_div).html().replace(preg[1], '<strong>' + $("#arrival_date").attr('value').replace(/\//g, '-') + '</strong>');
				new_string = new_string.replace(preg[2], '<strong>' + $("#departure_date").attr('value').replace(/\//g, '-') + '</strong>');
				$(open_div).html(new_string);
			}
		} catch(e) {}
		try{
			if(room_id)
				show_room_details(room_id);
		} catch(e) {}
	});
}

function show_room_details(id)
{
	$("#" + id + '_details').toggle(400);
	if($("#" + id).html() == '(hide room details)')
		$("#" + id).html('(show room details)');
	else
		$("#" + id).html('(hide room details)');
}

function loadSection(hid, selected, df, dt)
{
	$(".menu").append('&nbsp;&nbsp;&nbsp;<img src="http://www.exquiso.com/images/ajax_loader.gif" width="12" />');
	$.post('http://www.exquiso.com/ajaxed_data.html', {hid: hid, selection: selected, df: df, dt: dt, page: 'details'}, function(data){
		$("#data").html(data);
		$(".menu > a").each(function(i) {
			$(this).css('background', '');
			$(this).css('border', '');
			$(this).css('color', '#999999');
			$(".menu > img").remove();
		});
		$("#menu_" + selected).css('background', 'url(http://images.exquiso.com/images/details_menu_item.png) repeat-x');
		$("#menu_" + selected).css('border', '1px solid #FFF');
		$("#menu_" + selected).css('color', '#FFF');

		$("#arrival_date").datepicker({ dateFormat: 'dd/mm/yy', minDate: new Date(cDate.getFullYear(), cDate.getMonth(), cDate.getDate() ), onSelect: function(input) { getDF_two() } });
		$("#departure_date").datepicker({ dateFormat: 'dd/mm/yy', minDate: new Date(cDate.getFullYear(), cDate.getMonth(), cDate.getDate() ) });
	});
	return false;
}

function openPhoto(obj)
{
	var src = obj.href;
	var img_new = new Image();
	img_new.src = obj;

	$(".map_holder").show();
	centerHolder($(".map_holder"));
	$("#gmap").html('');
	$("#gmap").css("background", "#fff url('http://www.exquiso.com/images/ajax-loader-pic.gif') no-repeat center center");

	if ($.browser.msie)
		$(img_new).ready(function(){loadTehPhoto(img_new); return false;});
	else
		$(img_new).load(function(){loadTehPhoto(img_new); return false;});
	return false;
}

function loadTehPhoto(obj)
{
	$(obj).hide();
	$("#gmap").css("background", "").html(obj);
	var im_width = $(obj).width();
	var im_height = $(obj).height();
	if($.browser.msie && im_width == 28 )
		setTimeout(function(){loadTehPhoto(obj)}, 200);

	// .map_holder

	$(".map_holder").css('width', im_width + 'px');
	$(".map_holder").css('height', im_height + 'px');
	centerHolder($(".map_holder"));

	$("#gmap > img").show();
}

function closePicture()
{
	$("#enlarged_photo").hide();
	$("#enlarged_photo").css('border', '')
	$("#enlarged_photo").empty();
}

function showForm(mode)
{
	if($("#search_label_storing").css('display') == 'none')
	{
		var obj = $("#search_label_storing");
		var obj2 = $("#availability_search");
	}
	else
	{
		var obj = $("#availability_search");
		var obj2 = $("#search_label_storing");
	}

	obj2.fadeOut(500, function(){
		obj.show();
	});
}

function getDF()
{
	var value = $(".arrival_date").attr( "value" );
	value = value.split('/');
	$(".departure_date").datepicker('option', 'minDate', new Date(value[2], value[1] - 1, (value[0]*1) + 1 ));
}

function getDF_two()
{
	var value = $("#arrival_date").attr( "value" );
	value = value.split('/');
	$("#departure_date").datepicker('option', 'minDate', new Date(value[2], value[1] - 1, (value[0]*1) + 1 ));
}

function getCities(value)
{
	$.post('http://www.exquiso.com/ajaxed_data.html', { country : value }, function(data) {
		$("select[name='cities']").attr('disabled', '');
		$("select[name='cities']").html(data);
	});
}

function loadMap(name, lat, lon, map_element, map_id, dont_position)
{
	var tname = map_element != '' ? map_element : '.map_holder';
	//$(map_id).remove();
	if(  tname == '.map_holder')
	{
		$(tname).css('width', '450px');
		$(tname).css('height', '300px');
		$('.close_map_holder').css('width', '450px');
	}

	if( dont_position != 1 )
	{
		var crd = getY(document.getElementById(dont_position));
		// use the coordinates from the crd var
		$(tname).css('top', (crd[0] + 20) + 'px');
		$(tname).css('left', (crd[1] - 50) + 'px');
	}

	$(tname).css('display', 'block');
	if( map_id == '' )
		loadSingle();
	else
		loadSingle(map_id);
	if( tname == '.map_holder' )
		setpoint(lat, lon, name);
}

function zoomMap(tname)
{
	var tname = tname != undefined ? tname : '.map_holder';
	var crd = getY(document.getElementById('map_zoomer'));
	$(tname).animate( {width: '800', height: '400'}, 1000);
	$(tname).css('top', (crd[0] - 300) + 'px');
	$('.close_map_holder').css('width', '800px');
	$(tname).css('left', (crd[1] ) + 'px');
	load();
	return false;
}

function closeMap(element)
{
	element = element != undefined ? element : '.map_holder';
	$(element).hide();
}


function changeEventHotelDates(day, month, year, event_id, id)
{

	var date_to = new Date(year, month - 1, day + 2 );
	var select_from = makeSelect(day, month - 1, year, 'hotel_dateFrom');
	var select_to = makeSelect(date_to.getDate(), date_to.getMonth(), date_to.getFullYear(), 'hotel_dateTo');
	var crd = getY(document.getElementById(event_id));

	var text = '<input type="hidden" name="ufi" value="' + id + '" />';
	text += '<input type="submit" name="event_change_dates" class="event_change_dates" value="change"></span>';
	text += '<span class="cancel_datechange" onclick="closeMap(\'#hotel_dates\');">cancel</span>';
	$("#hotel_dates").css("top", crd[0] + 45 +'px');
	$("#hotel_dates").css("left", crd[1] + 760 +'px');
	$("#hotel_dates > .dates_form").html('<div><label>from</label><span class="select_box">' + select_from + '</span></div><div><label>to</label><span class="select_box">'+select_to + '</span></div>' + text);
	$("#hotel_dates").show();

}

function makeSelect(day, month, year, name)
{
	now = new Date();
	var select = '<select name="day_'+ name +'">';
	for(i=1; i<=31; i++)
	{
		if( i == day )
			select += '<option selected="selected" value="'+ i +'">'+ i +'</option>';
		else
			select += '<option value="'+ i +'">'+ i +'</option>';
	}
	select += '</select>';
	var month_names = new Array();
	month_names.push('jan');month_names.push('feb');month_names.push('mar');month_names.push('apr');month_names.push('may');month_names.push('jun');month_names.push('jul');month_names.push('aug');month_names.push('sep');month_names.push('oct');month_names.push('nov');month_names.push('dec');	select += '<select name="month_'+ name +'">';
	for(i=0; i<=12; i++)
	{
		for_date = new Date(year, month + i, day);
		select += '<option value="' + for_date.getMonth() + '#' + for_date.getFullYear() + '">' + month_names[for_date.getMonth()] + ', ' + for_date.getFullYear() + '</option>';
	}
	select += '</select>';
	return select;
}

function changeText(id, obj)
{
	$(".current_texts").attr('class', 'other_texts');
	$(obj).toggleClass('current_texts');
	$(".info > p").fadeOut(300, function(){
		$(this).html(descrip[id]).fadeIn(200);
	});
}

function showRedirect()
{
	// check if there is selected room
	var has = false;
	$("[name*=nr_rooms_]").each(function(i){
		if($(this).attr('value') > 0)
			has = true;
	});

	if(has == false)
	{
		alert('please choose a room');
		return false;
	}
	$("#avail").submit();
	return false;
}

function countdown(sec)
{
	if(sec > 0)
	{
		$("#redirect > p").html($("#redirect > p").html().replace(/([0-9])/, sec));
		setTimeout(function(){countdown(sec - 1);}, 1000);
	}
	return false;
}