var page=0;var maxR=50;var _lastsort=null;var _sortorder=true;var _priceascending=true;var _ratingascending=true;var _nameascending=true;var _preferredsortid="preferredsort";var _pricesortid="pricesort";var _ratingsortid="ratingsort";var _namesortid="namesort";var _lastsortid=_pricesortid;var _currentsortid=_pricesortid;var _r=new Array();var _templist=new Array();var _searchStatus="HotelsSearchStatus";function processResults(a){try{var e=getSearchingContainer();var f=getResultsContainer();var b=getNoResultsPanel();var d=getResultsHeaderPanel();if(a==null||a.length==0){e.style.display="none";b.style.display="block";if(d){d.style.display="none"}}else{_r=a;for(i=0;i<a.length;i++){_templist.push(i)}e.style.display="none";f.style.display="block";f.style.display="block";if(d){d.style.display="block"}redrawPage();$.Pagination.SetTotalsToggle(_r.length,$("#_paginationControls"));$(".sortControls").SortArrows();SetProcessRequired()}}catch(c){LogError("HotelResults.js - processResults(hotels): "+c)}}function GetHotelsContext(){var a=$get("_pSize").value;var d=(a*($get("_currentPage").value-1));var c=new Array();while(d<(a*$get("_currentPage").value)&&d<_templist.length){c.push(_templist[d]);d++}var b={hotelIndexes:c};b.hotelIndexes.RetrieveHotel=function(e){return _r[e]};b.hotelIndexes.GetFormattedPrice=function(e){return parseFloat(e)};b.hotelIndexes.GetCurrency=function(){return _currency};b.hotelIndexes.RetrieveFirstImage=function(e){return e[0].thumbImage};b.hotelIndexes.MoreImagesAvailable=function(e){return e.length>1};return b}function GetSearchStatus(){try{_resultsProxy.GetSearchStatus(getSessionId(),_searchStatus,GetSearchStatus_Callback,OnPageError)}catch(a){LogError("HotelResults.js - GetSearchStatus(): "+a)}}function GetSearchStatus_Callback(d){try{if(d==null){var b,c;b=getSearchingContainer();c=getLostSessionPanel();b.style.display="none";c.style.display="block";_resultsHeader.style.display="none"}else{if(d==completeStatus){GetHotels()}else{setTimeout("GetSearchStatus()",500)}}}catch(a){LogError("HotelResults.js - GetSearchStatus_CallBack(Result): "+a)}}function GetHotels(){try{_resultsProxy.GetResults(getSessionId(),GetHotels_Callback,OnPageError)}catch(a){LogError("HotelResults.js - GetHotels(): "+a)}}function GetHotels_Callback(Result){eval(Result)}function showDetails(a){if($get(a).style.display=="none"){$get(a).style.display="block"}else{$get(a).style.display="none"}}function sortname(){if(_lastsortid==_namesortid){_sortorder=(_sortorder?false:true)}else{_sortorder=_nameascending}_lastsort=sortname;_currentsortid=_namesortid;function a(d,c){var f=_r[d].hotelName;var e=_r[c].hotelName;var g=f.localeCompare(e);if(g==0){g=priceCompare(_r[d].price)-priceCompare(_r[c].price)}if(!_sortorder){return 0-g}else{return g}}_templist.sort(a);_lastsortid=_namesortid;_nameascending=(_nameascending?false:true)}function sortpreferred(){_lastsort=sortpreferred;_currentsortid=_preferredsortid;function a(d,c){var f=_r[d];var e=_r[c];val=boolCompare(e.isPreferred)-boolCompare(f.isPreferred);if(val==0&&f.price){val=priceCompare(f.price)-priceCompare(e.price)}return val}_templist.sort(a);_lastsortid=_preferredsortid}function boolCompare(a){if(a){return 1}return 0}function sortprice(){if(_lastsortid==_pricesortid){_sortorder=(_sortorder?false:true)}else{_sortorder=_priceascending}_lastsort=sortprice;_currentsortid=_pricesortid;function a(d,c){var j=_r[d];var h=_r[c];var g=priceCompare(j.price)-priceCompare(h.price);if(g==0){var f="";var e="";g=j.rating.localeCompare(h.rating)}if(!_sortorder){return 0-g}else{return g}}_templist.sort(a);_lastsortid=_pricesortid;_priceascending=(_priceascending?false:true)}function sortrating(){if(_lastsortid==_ratingsortid){_sortorder=(_sortorder?false:true)}else{_sortorder=_ratingascending}_lastsort=sortrating;_currentsortid=_ratingsortid;function a(l,k){var e=_r[l];var d=_r[k];var c=e.rating.localeCompare(d.rating);if(e.price){if(c==0){var j="";var h="";c=priceCompare(e.price)-priceCompare(d.price)}}if(c==0&&e.hotelName){var g=e.hotelName;var f=d.hotelName;c=g.localeCompare(f)}if(!_sortorder){return 0-c}else{return c}}_templist.sort(a);_lastsortid=_ratingsortid;_ratingascending=(_ratingascending?false:true)}function redrawPage(){var b=parseInt($get("_currentPage").value);$(".pageLinks").Pagination({current:b,redrawFunction:redrawPage,currentList:_templist,resultCountTotal:$(".resultsCountTotal"),showAllToggle:$(".showAllToggle")});var d=$get("_pSize").value;setHtml("#_hotels",v2js_ResultsTemplate(GetHotelsContext()));var c=$(".showingResult");c.find("#resultCountStart").text(((b-1)*d)+1);var a=(_r.length<b*d)?_r.length:b*d;c.find("#resultCountEnd").text(a);c.find("#resultCountTotal").text(_r.length);if(a==_r.length){c.find("#showAllToggle").text($.Pagination.PagedText())}else{c.find("#showAllToggle").text($.Pagination.NonPagedText())}}function ShowHotelImages(b){var d=$("div#hotelSummaryMorePhotos"+b);if(d.children("a").length==0){var a=_r[b].imageUrls;if(a){for(var c=0;c<a.length;c++){$('<a class="lightbox'+b+'" href="'+a[c].image+'" title="'+a[c].imageTitle+'"><img src="'+a[c].thumbImage+'" width="72" height="72" alt="" /></a>').appendTo(d)}}}$("a.lightbox"+b).lightBox();$("a.lightbox"+b+":first").click()}function ToggleRSShow(b,c){function a(){var e="";for(var d=0;d<_r[b].roomsandsuites.length;d++){e+=_r[b].roomsandsuites[d]}return e}ToggleDetailsDiv(b,c,"roomandsuites",a)}function ToggleDetailsDiv(b,d,a,g){var h=$(d).parents(".hotelFacilities");h.find("li").each(function(j){$(this).removeClass("SelectedDetailsTab")});var e=1000;var f=$("div#detailsDisplay"+b);var c=f.data("state");if(c==a){f.hide(e);f.removeData("state")}else{f.html(g());f.prepend("<div class='closeDetails'><a href='Javascript:;' title='Close Details' onclick='CloseDetails("+b+")'><img src='../../Images/icons/close.png' /></a></div>");f.show(e);f.data("state",a);$(d).parent().addClass("SelectedDetailsTab")}}function CloseDetails(a){var b=1000;var c=$("div#detailsDisplay"+a);c.hide(b);c.removeData("state");c.prev(".hotelResult").find("li.SelectedDetailsTab").each(function(d){$(this).removeClass("SelectedDetailsTab")})}function ToggleFacilitiesShow(a,b){function c(){var e="";for(var d=0;d<_r[a].facilities.length;d++){e+=_r[a].facilities[d]}return e}ToggleDetailsDiv(a,b,"facilities",c)}function ToggleRBShow(a,b){function c(){var e="";for(var d=0;d<_r[a].restaurantsandbars.length;d++){e+=_r[a].restaurantsandbars[d]}return e}ToggleDetailsDiv(a,b,"restaurantsandbars",c)};