///***************************************************************************************************************************/
//function MoreInfo(TheKey){
//
//	document.getElementById('divInfo' + TheKey).innerHTML += "<br/><br/><img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
//
//	var url = "ajax_hotel_info.aspx?R=" + TheKey 
//	var pars = null;
//	var target = "divInfo" + TheKey ;
//	var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
//}
/***************************************************************************************************************************/
/* REQUIRES: 
/* 		prototype.js
/***************************************************************************************************************************/
function LoadDescription(HotelKey, RoomKey){

	var target = "tabDescription" + RoomKey ;
	if ($(target).innerHTML.length < 500)  {

		$(target).innerHTML = "<img src='images/loading.gif' border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = "results_ajax_description.aspx?R=" + RoomKey + "&H=" + HotelKey;
		var pars = null;
		var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
	}

	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function LoadPhotos(RoomKey){

	var target = "tabPhotos" + RoomKey ;
	if ($(target).innerHTML.length < 10)  {

		$(target).innerHTML = "<img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = "results_ajax_photos.aspx?R=" + RoomKey;
	
		new Ajax.Request(url, {
		  method: 'get',
		  onSuccess: function(transport) {
			$(target).innerHTML = transport.responseText;
//			initLightbox();

		  }
		});

	}
//	initLightbox(); 			
	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function LoadAmenities(HotelKey, RoomKey){

	var target = "tabAmenities" + RoomKey ;
	if ($(target).innerHTML.length < 10)  {

		$(target).innerHTML = "<img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = "results_ajax_amenities.aspx?R=" + RoomKey + "&H=" + HotelKey 
		var pars = null;
		var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
	}
	
	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function LoadReviews(HotelKey, RoomKey){

	var target = "tabReviews" + RoomKey ;
	if ($(target).innerHTML.length < 10)  {

		$(target).innerHTML = "<img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = "results_ajax_reviews.aspx?R=" + RoomKey + "&H=" + HotelKey 
		var pars = null;
		var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
	}
	
	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function LoadMoreInfo(HotelKey, RoomKey, CityName, HotelName, NumNights, ArrivalDate) {

	var target = "tabMoreInfo" + RoomKey ;
	if ($(target).innerHTML.length < 10)  {

		$(target).innerHTML = "<img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = 'results_ajax_moreinfo.aspx?C=' + CityName + '&H=' + HotelName + '&N=' + NumNights + '&A=' + ArrivalDate;
		var pars = null;
		var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
	}

	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function LoadLocation(HotelKey, RoomKey, HotelAddress){

	var target = "tabLocation" + RoomKey ;
	if ($(target).innerHTML.length < 10)  {

		$(target).innerHTML = "<img src='images/loading.gif'   border='0' align='absmiddle' alt='Loading...' /> Loading...";
	
		var url = "results_ajax_location.aspx?R=" + RoomKey + "&H=" + HotelKey 
		var pars = null;
		var myAjax = new Ajax.Updater(target, url, {	method: 'get',	parameters: pars});
	}
	// loading the tab should take less than 5 seconds.  once loaded, fetch the map from yahoo
	setTimeout("BuildYahooMap('" + HotelAddress + "', 'mapContainer" + RoomKey + "');",5000); 
	
	scrollToResult(RoomKey);
}
/***************************************************************************************************************************/
function HideContact(HotelID) {

	var myPopup = document.getElementById('divBalloon' + HotelID);
	var myBalloon 	= document.getElementById('imgBalloon' + HotelID);

	myPopup.style.display = "none";
	myBalloon.style.display = "none";
	
	// remove this balloon from list of timers
	//FindAndClearTimer(HotelID);
}
/***************************************************************************************************************************/
function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}
/***************************************************************************************************************************/
function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}
/***************************************************************************************************************************/
function scrollToResult(RoomKey) {

//	// collaps all tabs for all hotels except this one
//	var RoomKeyDiv = $('RoomKeys')
//	var RoomKeyList = RoomKeyDiv.innerHTML;
//	
//	var RoomKeys = RoomKeyList.split(',');
//
//	for (var i = 0; i < RoomKeys.length; i++)  {
//		if (RoomKeys[i] != RoomKey) {
//			eval("TabsBar" + RoomKeys[i] + ".setActiveTab('tabDefault" + RoomKeys[i] + "');");
//		}
//	}
	
	// magically scroll the window 

	var myContainer = $('resultsTable' + RoomKey + '');
	var yPos = findPosY(myContainer);

	ScrollPageToTargetY(yPos);
}
/***************************************************************************************************************************/
function ScrollPageToTargetY(targetY) {

	var scrollDelay = 50; // milliseconds 
	var yWin = GetPageYScrollPosition();

	var distance = (targetY - yWin);
	var absDistance = Math.abs(distance);

	if (absDistance > 2) {

		var direction = distance / absDistance; // 1 = UP, -1 = DOWN
		
		// determine increment
		var increment = 1;
		if (absDistance <= 5)  increment = 2;
		if (absDistance > 5)  increment = 4;
		if (absDistance > 20)  increment = 6;
		if (absDistance > 40)  increment = 8;
		if (absDistance > 80)  increment = 16;
		if (absDistance > 160)  increment = 32;
		if (absDistance > 320)  increment = 64;
		if (absDistance > 640)  increment = 128;
		if (absDistance > 1280)  increment = 256; 
		if (absDistance > 2560)  increment = 512; // see a pattern? :-)
	
		increment *= direction;
		
		window.scrollBy(0,increment); // horizontal and vertical scroll increments
		
		// if no progress was made, don't keep trying 
		if (yWin != GetPageYScrollPosition()) {
			scrollJob = setTimeout('ScrollPageToTargetY(' + targetY + ')',scrollDelay); 
		}
	}
}
/***************************************************************************************************************************/
function GetPageYScrollPosition() {
	if (window.pageYOffset) {
		return window.pageYOffset; }
	else {
		return document.body.scrollTop; }
}
/***************************************************************************************************************************/
// GLOBALS

var TimerIDList = '|';

// on load


/***********************************************************************************/
