var objCategoryDrp = null;
var objAreaDrp = null;
var isCategoriesAndAreaRetrieved = false;
var CurrentCategroy = ""
var CurrentArea = ""
function GetCategoriesAndAreas()
{
	try
	{
		var strTransId = "";
		var ArrPortions = window.location.href.split("?");
		if( ArrPortions.length > 1 )
		{
			ArrPortions = ArrPortions[1].split("&");
			var i = 0 ;
			for(i=0 ; i < ArrPortions.length ; i++ )
			{
				var ArrValues = ArrPortions[i].split("=");
				if( ArrValues.length > 1 )
				{
					if( ArrValues[0].toUpperCase() == "TRANSID" )
					{
						strTransId = ArrValues[1];
					}
					else if( ArrValues[0].toUpperCase() == "HOTELCATEGORY" )
					{
						CurrentCategroy = ArrValues[1];
					}
					else if( ArrValues[0].toUpperCase() == "AREA" )
					{
						CurrentArea = ArrValues[1];
					}
					if( strTransId != "" && CurrentArea != "" && CurrentCategroy != "" )
					{
						break;
					}
				}
			}
		}
		var ArrElements = document.getElementsByTagName("select");
		for( i = 0 ; i < ArrElements.length ; i++ )
		{
			if( ArrElements[i].name != null )
			{
				if( ArrElements[i].name.toUpperCase().indexOf("CITYREGIONSDRP") > -1 )
				{
					objAreaDrp = ArrElements[i]; 
				}
				if( ArrElements[i].name.toUpperCase().indexOf("HOTELCATEGORYDRP") > -1 )
				{
					objCategoryDrp = ArrElements[i]; 
				}
				if( objCategoryDrp != null && objAreaDrp != null )
				{
					break;
				}
			}
		}
		var objAjax = new AJAXInteraction( "controls/HotelsCategoriesAndAreaAJAX.aspx?TransID=" + strTransId  , GetCategoriesAndAreaCallBack );
		objAjax.doGet();
	}
	catch(e){}
}
function GetCategoriesAndAreaCallBack(strUrl , objRequest)
{
	try
	{
		isCategoriesAndAreaRetrieved = true;
		var objDom = new XMLDocument();
		objDom.LoadXML( objRequest.responseText );	
		var i = 0;
		if( objAreaDrp != null )
		{
			var ArrNodes = objDom.GetNodes("Area");
			for( i = 0 ; i < ArrNodes.length ; i++ )
			{
				var nIndex = objAreaDrp.options.length;
				objAreaDrp.options.length = nIndex + 1;
				objAreaDrp.options[ nIndex ].text = ArrNodes.item(i).getElementsByTagName("Text")[0].childNodes[0].nodeValue;
				objAreaDrp.options[ nIndex ].value = ArrNodes.item(i).getElementsByTagName("Value")[0].childNodes[0].nodeValue;
			}
			if( CurrentArea != "" )
			{
				objAreaDrp.value = CurrentArea;
			}
		}
		if( objCategoryDrp != null )
		{
			var ArrNodes = objDom.GetNodes("Category");
			for( i = 0 ; i < ArrNodes.length ; i++ )
			{
				var nIndex = objCategoryDrp.options.length;
				objCategoryDrp.options.length = nIndex + 1;
				objCategoryDrp.options[ nIndex ].text = ArrNodes.item(i).getElementsByTagName("Text")[0].childNodes[0].nodeValue;
				objCategoryDrp.options[ nIndex ].value = ArrNodes.item(i).getElementsByTagName("Value")[0].childNodes[0].nodeValue;
			}
			if( CurrentCategroy != "" )
			{
				objCategoryDrp.value = CurrentCategroy;
			}
		}
	}
	catch(e){}
}
function RefreshResultPage()
{
	var strRID="";
	var strTransId = "";
	var strSort = "BestValue";
	var strDebug = "";
	var strPageIndex = "0";
	var strCategory =  "";
	var strMode="";
	var strCitycode="";
	var strLocation="";
	var NonChangedParams='';
	
	//&RoomsCount=1&Room0ADULTS=2&Room0CHILDREN=0
	var ArrPortions = window.location.href.split("?");
	if( ArrPortions.length > 1 )
	{
		ArrPortions = ArrPortions[1].split("&");
		var i = 0 ;
		for(i=0 ; i < ArrPortions.length ; i++ )
		{
			var ArrValues = ArrPortions[i].split("=");
			if( ArrValues.length > 1 )
			{
				if( ArrValues[0].toUpperCase() == "TRANSID" )
				{
					strTransId = ArrValues[1];
				}
				if( ArrValues[0].toUpperCase() == "RID" )
				{
					strRID = ArrValues[1];	
				}
				else if( ArrValues[0].toUpperCase() == "SORT" )
				{
					strSort = ArrValues[1];
				}
				else if( ArrValues[0].toUpperCase() == "DEBUG" )
				{
					strDebug = ArrValues[1];
				}
				else if( ArrValues[0].toUpperCase() == "PAGEINDEX" )
				{
					strPageIndex = ArrValues[1];
					strPageIndex=0;
				}
				else if( ArrValues[0].toUpperCase() == "HOTELCATEGORY" )
				{
					strCategory = ArrValues[1];
				}
				else if( ArrValues[0].toUpperCase() == "MODE" )
				{
					strMode = ArrValues[1];
				}
				else if (ArrValues[0].toUpperCase() == "CITYCODE" )
				{
					strCitycode=ArrValues[1];
				}
				else if (ArrValues[0].toUpperCase() == "LOCATION" )
				{
					strLocation=ArrValues[1];
				}
				/*else
				{
					NonChangedParams+='&'+ArrValues[0]+'='+ArrValues[1];
				}*/
			}
		}
	}
	var strName = "";
	var strAmenities = "";
	var strPrice = "";
	var strRegion = "";
	var strChain = "";
	var strStars = "";
	var ArrElements = document.getElementsByTagName("input");
	var i = 0 ;
	for( i = 0 ; i < ArrElements.length ; i++ )
	{
		if( ArrElements[i].type != null )
		{
			if( ArrElements[i].type.toUpperCase() == "TEXT" )
			{
				if( ArrElements[i].name != null )
				{
					if( ArrElements[i].name.toUpperCase().indexOf("HNAME_FILTER_TXT") > -1 )
					{
						strName = ArrElements[i].value;
					}
				}
			}
			else if( ArrElements[i].type.toUpperCase() == "CHECKBOX" )
			{
				if( ArrElements[i].name != null )
				{
					if( ArrElements[i].name.toUpperCase().indexOf("AMENTIESDATALIST") > -1 )
					{
						if( ArrElements[i].checked == true )
						{
							var strVal = document.getElementsByName(  ArrElements[i].name.replace("AmentyChk" , "AmentyIDHdn" ) )[0].value;
							if( strAmenities != "" )
							{
								strAmenities += ",";
							}
							strAmenities += strVal;
						}
					}
				}					
			}//end of if( ArrElements[i].type.toUpperCase() == "CHECKBOX" )
		}//end ofif( ArrElements[i].type != null )
	}//end of for( i = 0 ; i < ArrElements.length ; i++ )
	ArrElements = document.getElementsByTagName("select");
	for( i = 0 ; i < ArrElements.length ; i++ )
	{
		if( ArrElements[i].name != null )
		{
			if( ArrElements[i].name.toUpperCase().indexOf("CITYREGIONSDRP") > -1 )
			{
				strRegion = (ArrElements[i].options.selectedIndex > 0) ? ArrElements[i].value : "";
			}
			else if( ArrElements[i].name.toUpperCase().indexOf("CHAINDRP") > -1 )
			{
				strChain = (ArrElements[i].options.selectedIndex > 0) ? ArrElements[i].value : "";
			}
			else if( ArrElements[i].name.toUpperCase().indexOf("STARSDRP") > -1 )
			{
				strStars = (ArrElements[i].options.selectedIndex > 0) ? ArrElements[i].value : "0";
			}
			else if( ArrElements[i].name.toUpperCase().indexOf("PRICEDRP") > -1 )
			{
				strPrice = (ArrElements[i].options.selectedIndex > 0) ? ArrElements[i].value : "0";
			}
			else if( ArrElements[i].name.toUpperCase().indexOf("HOTELCATEGORYDRP") > -1 )
			{
				strCategory = (ArrElements[i].options.selectedIndex > 0) ? ArrElements[i].value : "";
			}
		}//end of if( ArrElements[i].name != null )
	}//end of for( i = 0 ; i < ArrElements.length ; i++ )
	//var strUrl = "HotelsResult.aspx?TransId=" + strTransId + "&Sort=" + strSort + "&PageIndex=" + strPageIndex;
	var strUrl = GetPageName()+"?TransId=" + strTransId +"&RID="+ strRID + "&Sort=" + strSort + "&PageIndex=" + strPageIndex;
	
	if( strTransId != "" )
	{
		
		if( strDebug != "" && strDebug != null ) strUrl += "&Debug=" + strDebug;

		if( strAmenities != "" && strAmenities != null ) strUrl += "&Amenities=" + strAmenities;
		else strUrl += "&Amenities=";

		if( strName != "" && strName != null )	strUrl += "&Name=" + escape( strName );
		else strUrl += "&Name=";

		if( strRegion != "" && strRegion != null) strUrl += "&Area=" + strRegion;
		else strUrl += "&Area=";

		if( strPrice != "" && strPrice != null ) strUrl += "&Price=" + strPrice;
		else strUrl += "&Price=";

		if( strStars != "" && strStars != null ) strUrl += "&Stars=" + strStars;
		else strUrl += "&Stars=0";

		if( strChain != "" && strChain != null ) strUrl += "&Chain=" + strChain;
		else strUrl += "&Chain=";

		if( strCategory != "" && strCategory != null ) strUrl += "&HotelCategory=" + strCategory;
		else strUrl += "&HotelCategory=";
		
		if( strMode != "" && strMode != null ) strUrl += "&mode=" + strMode
		else strUrl += "&mode=";
		
		if( strCitycode != "" && strCitycode != null ) strUrl += "&CityCode=" + strCitycode
		else strUrl += "&CityCode=";
		
		if( strLocation != "" && strLocation != null ) strUrl += "&Location=" + strLocation
		else strUrl += "&Location=";
		
		var RoomsUrl='';
		//debugger;
		/*var RoomsCount=GetUrlParam('RoomsCount');
		if(RoomsCount!=null)
		{//RoomsCount=1&Room0ADULTS=2&Room0CHILDREN=0
			try
			{
				RoomsUrl="&RoomsCount="+RoomsCount;
				var i=0;
				for(i=0;i<RoomsCount;i++)
				{
					RoomsUrl+='&Room'+i+'ADULTS='+ GetUrlParam('Room'+i+'ADULTS')+'&Room'+i+'CHILDREN='+GetUrlParam('Room'+i+'CHILDREN');
				}
			}
			catch(e)
			{
				RoomsUrl="&RoomsCount=1&Room0ADULTS=2&Room0CHILDREN=0";								 
			}
			
			
		}
		else
		{
			RoomsUrl="&RoomsCount=1&Room0ADULTS=2&Room0CHILDREN=0";			
		}*/
		//if(NonChangedParams!='')
		//strUrl+=NonChangedParams;
	}
	//alert(strUrl);
	//alert(GetPageName());
	//strUrl+=RoomsUrl;
	window.location.href = strUrl;
	
}
/////////////////john//////////////////////
function FilterResultPage(HotelNameTxtID,RegionsDrpID,ClassDrpID)
{
	var FilterHotelNameCntrl=document.getElementById(HotelNameTxtID);
	var FilterHotelsRegionCntrl=document.getElementById(RegionsDrpID);
	var FilterHotelsClassCntrl=document.getElementById(ClassDrpID);
	
	
	var FilterHotelNamestr=trim(FilterHotelNameCntrl.value);
	var FilterHotelsRegionstr= (FilterHotelsRegionCntrl.options.selectedIndex > 0) ? FilterHotelsRegionCntrl.value : "";
	var FilterHotelsClassstr= (FilterHotelsClassCntrl.options.selectedIndex > 0) ? FilterHotelsClassCntrl.value : "";
	
	//if(FilterHotelNamestr!='' || FilterHotelsRegionstr!='' || FilterHotelsClassstr!='')
	//{
		var UrlStr=window.location.href;
		//if(FilterHotelNamestr!='')
		UrlStr=ChangeCurrentUrlNEW('Name',FilterHotelNamestr,UrlStr);
		
		//if(FilterHotelsRegionstr!='')
		UrlStr=ChangeCurrentUrlNEW('Area',FilterHotelsRegionstr,UrlStr);
		
		//if(FilterHotelsClassstr!='')
		UrlStr=ChangeCurrentUrlNEW('Stars',FilterHotelsClassstr,UrlStr);
		
		UrlStr=ChangeCurrentUrlNEW('pageindex','0',UrlStr);
		
		window.location.href=UrlStr;
	//}
}
function trim(stringToTrim) 
{
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}	

function GetPageName()
{
//debugger;
var url=window.location.href;
var arr1=url.split("?");
var arr2=arr1[0].split("/");
return arr2[arr2.length-1];
}
///////////////////////////////////////
function ChangeCurrentUrl( strQueryStringKey , strQueryStringValue )
{//debugger;
	var isFound = false;
	var nCount = 0;
	//var strUrl = "HotelsResult.aspx?";
	var strUrl =GetPageName(window.location.href)+"?"; //"Results.aspx?";
	
	if(strUrl.toUpperCase().indexOf("PAGEINDEX")==-1)
	strUrl+="PageIndex=0";
	
	var ArrPortions = window.location.href.split("?");
	if( ArrPortions.length > 1 )
	{
		ArrPortions = ArrPortions[1].split("&");
		var i = 0 ;
		for(i=0 ; i < ArrPortions.length ; i++ )
		{
			nCount++;
			if( i > 0 )	strUrl += "&";

			if( ArrPortions[i].toUpperCase().indexOf( strQueryStringKey.toUpperCase()  ) == 0 )
			{
				isFound = true;
				strUrl += strQueryStringKey + "=" + strQueryStringValue;
			}
			else
			{
				if( ArrPortions[i].toUpperCase().indexOf("PAGEINDEX") == 0 && strQueryStringKey.toUpperCase() == "SORT" )
				{
					strUrl += "PageIndex=0";
				}
				else
				{
					if(!(ArrPortions[i].toUpperCase()=='TE=TRUE' || ArrPortions[i].toUpperCase()=='TE=T' || ArrPortions[i].toUpperCase()=='TE=1'))
					{
					strUrl += "" + ArrPortions[i];
					}
				}
			}
		}
	}
	if( isFound == false )
	{
		if( nCount > 0 ) strUrl += "&";

		strUrl += strQueryStringKey + "=" + strQueryStringValue;
	}
	window.location.href = strUrl;
}
function SetPage( nPage )
{//debugger;
	var val=ChangeCurrentUrlNEW( "PageIndex" , nPage,window.location.href ); 
	window.location.href=val;
	//ChangeCurrentUrl( "PageIndex" , nPage ); 
}
function SetSort(strSort)
{//debugger;
	var val=ChangeCurrentUrlNEW( "Sort" , strSort,window.location.href ); 
	//ChangeCurrentUrl( "Sort" , strSort ); 
	window.location.href=val;
}
function ChangeCurrentUrlNEW( strQueryStringKey , strQueryStringValue,URL )
{
	var strUrl='';
	var FoundParamFlag=false;
	if(strQueryStringKey.toUpperCase()=='SORT')
	{
		strUrl =ChangeCurrentUrlNEW('PAGEINDEX','0',URL);
	}
	else
	{
		strUrl =URL;
	}
	var UrlQuery=new String();
	var BaseUrl=GetPageName()+"?";
	var ArrPortions = strUrl.split("?");
	if( ArrPortions.length > 1 )
	{
		ArrPortions = ArrPortions[1].split("&");
		var i = 0 ;
		for(i=0 ; i < ArrPortions.length ; i++ )
		{
			if(i>0)
				UrlQuery+="&";
			
			if(ArrPortions[i].toUpperCase().indexOf(strQueryStringKey.toUpperCase())>-1)
			{	FoundParamFlag=true;
				UrlQuery+=strQueryStringKey + '=' + strQueryStringValue;
			}
			else
			{
				UrlQuery+=ArrPortions[i];	
			}
		}
		if(FoundParamFlag==false)
		{
				UrlQuery+="&"+strQueryStringKey + '=' + strQueryStringValue;
		}
	}
		return  BaseUrl+UrlQuery;
}
function GetUrlParam(param)
{
	var strUrl=location.href;
	var strallparams=strUrl.split("?")[1];
	var Arrallparams=strallparams.split("&");
	var i=0;
	var paramname='';
	for(i=0;i<Arrallparams.length;i++)
	{
		paramname=Arrallparams[i].split("=")[0];
		if(paramname.toUpperCase()==param.toUpperCase())
		{
			return Arrallparams[i].split("=")[1];
		}
	}
	return null;
	
}
function GoToSearchForm(RoomCount , AdultsInRoom0 , ChildrenInRoom0 , ChildrenAgesInRoom0 , AdultsInRoom1 , ChildrenInRoom1 , ChildrenAgesInRoom1 , AdultsInRoom2 , ChildrenInRoom2 , ChildrenAgesInRoom2 , ByCityRadioBtnID , ByAirportRadioBtnID , ByLandMarkRadioBtnID , ByCityTxtBoxID , ByAirportTxtBoxID , CheckInDateTxtBoxID , CheckOutTxtBoxID , RoomCountDrpId , AdultsInRoom0DrpId , ChildrenInRoom0DrpId , AdultsInRoom1DrpId , ChildrenInRoom1DrpId , AdultsInRoom2DrpId , ChildrenInRoom2DrpId)
{	
	//alert('sddd');
	//debugger;
	var mode = "City";
	try
	{
		var objRad = document.getElementById( ByAirportRadioBtnID  );
		if( objRad.checked == true ) mode = "Airport";
		else mode = "City";
	}
	catch(e){}
	var strLocation = "";
	switch( mode.toUpperCase() )
	{
		case "AIRPORT":
			strLocation = document.getElementsByName( ByAirportTxtBoxID )[0].value; 
			break;
		case "CITY":
			strLocation = document.getElementsByName( ByCityTxtBoxID )[0].value; 
			break;
	} 
	var strCheckInDate = document.getElementsByName( CheckInDateTxtBoxID )[0].value;
	var strCheckOutDate =  document.getElementsByName( CheckOutTxtBoxID )[0].value;
	
	var strURL = "defaulthotels.aspx?SearchMode="+ mode +"&Location=" + strLocation + "&CheckInDate=" + strCheckInDate + "&CheckOutDate=" + strCheckOutDate ;
	//var strURL = GetPageName()+"?SearchMode="+ mode +"&Location=" + strLocation + "&CheckInDate=" + strCheckInDate + "&CheckOutDate=" + strCheckOutDate ;
	
	var nRooms = 0;
	try{nRooms  = parseInt( document.getElementsByName( RoomCountDrpId )[0].value );}catch(e){nRooms = RoomCount;}
	if( nRooms > 0 )
	{
		try{strURL += "&RoomsCount=" + document.getElementsByName( RoomCountDrpId )[0].value;}catch(e){strURL += "&RoomsCount=" + RoomCount;}
		try{strURL += "&Room0Adults=" + document.getElementsByName( AdultsInRoom0DrpId )[0].value;}catch(e){strURL += "&Room0Adults=" + AdultsInRoom0;}
		try{strURL += "&Room0Children=" + document.getElementsByName( ChildrenInRoom0DrpId )[0].value;}catch(e){strURL += "&Room0Children=" + ChildrenInRoom0;}
		if( nRooms > 1 )
		{
			try{strURL += "&Room1Adults=" + document.getElementsByName( AdultsInRoom1DrpId )[0].value;}catch(e){strURL += "&Room1Adults=" + AdultsInRoom1;}
			try{strURL += "&Room1Children=" + document.getElementsByName( ChildrenInRoom1DrpId )[0].value;}catch(e){strURL += "&Room1Children=" + ChildrenInRoom1;}
		}
		if( nRooms > 2 )
		{
			try{strURL += "&Room2Adults=" + document.getElementsByName( AdultsInRoom2DrpId )[0].value;}catch(e){strURL += "&Room2Adults=" + AdultsInRoom2;}
			try{strURL += "&Room2Children=" + document.getElementsByName( ChildrenInRoom2DrpId )[0].value;}catch(e){strURL += "&Room2Children=" + ChildrenInRoom2;}
		}		
	}
	else
	{
		strURL += "&RoomsCount=" + RoomCount + "&Room0Adults=" + AdultsInRoom0 + "&Room0Children=" + ChildrenInRoom0
		if( RoomCount > 1 )	strURL += "&Room1Adults=" + AdultsInRoom1 + "&Room1Children=" + ChildrenInRoom1  ;
		if( RoomCount > 2 ) strURL += "&Room2Adults=" + AdultsInRoom2 + "&Room2Children=" + ChildrenInRoom2 ;
	}
	//document.location.href = strURL; 
}