﻿
//Search box:
function LoadHomeSearchBox() 
{
    if( GetCookie("Checkin")!='' && GetCookie("Checkout")!='' )
    {
      var checkinCookie = Date.parse(GetCookie("Checkin").replace(/-/g, '/'));
      if( checkinCookie>=new Date().getDate() )
      {
         document.getElementById("Checkin").value = GetCookie("Checkin");
         document.getElementById("Checkout").value = GetCookie("Checkout");
      }
    }
}
function LoadAdvancedSearchBox() 
{
    if( GetCookie("Checkin")!='' && GetCookie("Checkout")!='' )
    {
      var checkinCookie = Date.parse(GetCookie("Checkin").replace(/-/g, '/'));
      if( checkinCookie>=new Date().getDate() )
      {
         document.getElementById("Checkin").value = GetCookie("Checkin");
         document.getElementById("Checkout").value = GetCookie("Checkout");
      }
    }
    var cityName = encodeURIComponent(document.getElementById('frmInputcity').value);
    var language = document.getElementById('hLanguage').value;
    RunJavascript("/Data/GetCityArea.ashx?city="+cityName+"&language="+language);
}
function ShowAdvSearch(type) 
{
    var hSearch = document.getElementById('HSearch'+type);
    var searchCol = document.getElementById( 'searchCol' + type);
    var bFold = hSearch.className=="titleH3SearchFold";
    hSearch.className = bFold ? "titleH3Search" : "titleH3SearchFold";
    searchCol.className = bFold ? searchCol.className.substring(0,searchCol.className.length-4) :  (searchCol.className + "Fold");
}
function AdvancedSearch_Click(e) 
{
    e = e || event;
    var city = document.getElementById('frmInputcity');
    if (city.value == "input city name or first words" || city == "") 
    {
        document.getElementById('frmInputcity').onclick();
        return false;
    } 
    var url = "/en/search.aspx?city="+encodeURIComponent( city.value);
    url += "&language="+document.getElementById('hLanguage').value;
    var checkin = document.getElementById("Checkin");
    var checkout = document.getElementById("Checkout");
    if (checkin.value != "yyyy-mm-dd")
        url += "&checkin=" + checkin.value;
    if (checkout.value != "yyyy-mm-dd")
        url += "&checkout=" + checkout.value;
    if (checkin.value == "yyyy-mm-dd")
    {
        showCalendar('Checkin', false, 'Checkin');
        cancelBubble(e);
        return false;
    }
    if (checkout.value == "yyyy-mm-dd") 
    {
        showCalendar('Checkout', false, 'Checkout');
        cancelBubble(e);
        return false;
    }
    if (Date.parse(checkout.value.replace(/-/g, '/')) <= Date.parse(checkin.value.replace(/-/g, '/'))) 
    {
        showCalendar('Checkout', false, 'Checkout');
        cancelBubble(e);
        return false;
    }
    var area = document.getElementById("inputDirection");
    if (area.value != "")
        url += "&area=" + encodeURIComponent(area.value);
    var keyWord = document.getElementById("SearchKeywords");
    if (keyWord.value != "" && keyWord.value != keyWord.title)
        url += "&keywords=" +encodeURIComponent( keyWord.value);
    var OHotelTypeSel = document.getElementsByName("HotelTypeSel");
    for (var i = 0; i < OHotelTypeSel.length; i++) 
    {
        if (OHotelTypeSel[i].checked) 
        {
            if (OHotelTypeSel[i].value == "0")
                break;
            url += "&hotelTypeID=" + OHotelTypeSel[i].value;
        }
    }
    var OPriceFrom = document.getElementById("PriceFrom");
    if (OPriceFrom.value != "0" && OPriceFrom.value != "")
        url += "&fromprice=" + OPriceFrom.value;
    var OPriceTo = document.getElementById("PriceTo");
    if (OPriceTo.value != "0" && OPriceTo.value != "")
        url += "&ToPrice=" + OPriceTo.value;
    var ORatings = document.getElementById("Ratings");
    if (ORatings.value != "0")
        url += "&rating=" + ORatings.value;
    var OAmenities = document.getElementsByName("cbAmenities");
    for (var m = 0; m < OAmenities.length; m++)
        if (OAmenities[m].checked)
          url += "&" + OAmenities[m].value + "=1";
    var ODistance = document.getElementById("Distance");
    if (ODistance.value != "0")
        url += "&distance=" + ODistance.value;
    var OLandmark = document.getElementById("Landmark");
    if (OLandmark.value != "0")
        url += "&landmarkID=" + OLandmark.value;
    document.location.href =url;
}
function HomeSearch_Click(e)
{
    e = e || event;
    var city = document.getElementById('frmInputcity');
    var checkin = document.getElementById("Checkin");
    var checkout = document.getElementById("Checkout");
    var keyWord = document.getElementById("SearchKeywords");
    if (city.value == "input city name or first words" || city.value == "")
    {
        city.onclick();
        return false;
    }
    var url = "/en/search.aspx?city="+encodeURIComponent( city.value);
    url += "&language="+document.getElementById('hLanguage').value;
    if (checkin.value != "yyyy-mm-dd")
        url += "&checkin=" + checkin.value;
    if (checkout.value != "yyyy-mm-dd")
        url += "&checkout=" + checkout.value;
    if (checkin.value == "yyyy-mm-dd")
    {
        showCalendar('Checkin', false, 'Checkin');
        cancelBubble(e);
        return false;
    }
    if (checkout.value == "yyyy-mm-dd")
    {
        showCalendar('Checkout', false, 'Checkout');
        cancelBubble(e);
        return false;
    }
    if (Date.parse(checkout.value.replace(/-/g, '/')) <= Date.parse(checkin.value.replace(/-/g, '/')))
    {
        showCalendar('Checkout', false, 'Checkout');
        cancelBubble(e);
        return;
    }
    if (keyWord.value != "" && keyWord.value != keyWord.title)
        url += "&keywords=" + encodeURIComponent(keyWord.value);
    document.location.href =  url;
}
//show the Locations of the city:
function showDirection()
{
    var MSG_SelectDestination = "Please select Destination first!";
    var MSG_CityNotArea = "There is no area in this city!";
    var TextAreaCommercial = "Commercial area";
    var TextAreaAdministrative = "Administrative area";
    
	var directiondiv = document.getElementById('DirectionDiv');	
	var iframearea = document.getElementById('IframeArea');
	
	var strCommercialLi,strAdministrativeLi;
	strCommercialLi='';
	strAdministrativeLi='';
	if( typeof(arrayCityArea)=='undefined' || arrayCityArea==null )
	{
		alert(MSG_SelectDestination );
		return;
	}
	if( arrayCityArea[0].length==0 && arrayCityArea[1].length==0 )
	{
		alert(MSG_CityNotArea);
		return;
	}
	document.getElementById('adSearchAreaBox').innerHTML ='';
	var areaCount1 = 0, areaCount2 = 0;
	if (arrayCityArea[0].length>0){		
		strCommercialLi += "<div class='directionBoxTop'><h3>"+TextAreaCommercial+"</h3><ul id='CommercialArea' class='commercialArea'>";
		for (i=0 ;i<arrayCityArea[0].length; i++)
		    strCommercialLi += "<li class='areaListLi'><a href='javascript: void 0;' onclick='writeAreaInput(this);' title=\"" + arrayCityArea[0][i] + "\">" + arrayCityArea[0][i] + "</a></li>";
		strCommercialLi += "</ul><div class='clear'></div></div>";
		document.getElementById('adSearchAreaBox').innerHTML += strCommercialLi;
		areaCount1 = arrayCityArea[0].length;
		areaCount1 = (areaCount1%3 ==0 ? ((areaCount1/3)*20) : (((areaCount1/3)+1)*20)) +19;
	}
	if(arrayCityArea[1].length>0 ){
		strAdministrativeLi +="<div class='directionBoxBottom'><h3>"+TextAreaAdministrative+"</h3><ul id='AdministrativeArea' class='administrativeArea'>";
		for (i=0 ;i<arrayCityArea[1].length; i++)
		    strAdministrativeLi += "<li class='areaListLi'><a href='javascript: void 0;' onclick='writeAreaInput(this);' title=\"" + arrayCityArea[1][i] + "\">" + arrayCityArea[1][i] + "</a></li>";
		"</ul><div class='clear'></div></div>";
		document.getElementById('adSearchAreaBox').innerHTML += strAdministrativeLi;
		areaCount2 = arrayCityArea[1].length;
		areaCount2 = (areaCount2%6 ==0 ? ((areaCount2/6)*20) : (((areaCount2/6)+1)*20)) +19;
	}
	iframearea.height = 25 + areaCount1 + areaCount2;
	directiondiv.style.display = '';
	iframearea.style.display = '';
}
function hiddenDirection()
{
	var directiondiv = document.getElementById('DirectionDiv');
	var iframearea = document.getElementById('IframeArea');
	if( iframearea!=null && typeof(iframearea)!='undefined' )
		iframearea.style.display = 'none';
	if( directiondiv!=null && typeof(directiondiv)!='undefined' )
	directiondiv.style.display = 'none';
}
function writeAreaInput(obj) 
{
    document.getElementById('inputDirection').value = typeof(obj)=='undefined' ? '' : obj.title;
	hiddenDirection();
}

// show viewed history
function ShowViewedHotels() 
{
    var viewedHotels = GetCookie('viewedHotels');
    var arrHotels = viewedHotels.split('"');
    var html = '';
    for( var i=0; i<20 && i+1<arrHotels.length; i+=2 )
        html += "<li><a href='" + arrHotels[i] + "' title=\""+arrHotels[i+1] + "\">" + arrHotels[i+1] + "</a></li>";
    document.getElementById('ViewedHistoryUL').innerHTML = html;
}

//click the room name to show the room detail:
function ShowRoomDetail(roomID) 
{
    var roomDetail = document.getElementById('roomDetail_' + roomID);
    roomDetail.style.display = roomDetail.style.display == 'none' ? '' : 'none';
    var tr = roomDetail.parentNode;
    tr.className = tr.className == 'rtd_TR2' ? 'rtd_TR2Line' : 'rtd_TR2';
    if( roomDetail.style.display=='' )
      RunJavascript("/Data/GetRoomDetail.ashx?language=" + document.getElementById('hLanguage').value + "&RoomID="+roomID + "&BHongkong=" + document.getElementById('hBHongkong').value);
}
function SetRoomDetail(roomID,strHtml)
{
    var roomDetail = document.getElementById('roomDetail_' + roomID);
    roomDetail.innerHTML = "<div class='roomTypeDivHidden'>" + strHtml + "<div class='clear'></div><p class='roomTypeToHide' onclick='ShowRoomDetail("+roomID+");'>Hide</p></div>";
}
function Search_PressEnter(e) 
{
    e = e || event;
    if( e.keyCode==13 )
    {
        AdvancedSearch_Click(event);
        return false;
    }
}
function Search_HomePressEnter(e) 
{
    e = e || event;
    if( e.keyCode==13 )
        HomeSearch_Click(e);
}
