var BrowserDetect={init:function(){this.browser=this.searchString(this.dataBrowser)||"An unknown browser";this.version=this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version";
this.OS=this.searchString(this.dataOS)||"an unknown OS";},searchString:function(d){for(var a=0;a<d.length;a++){var b=d[a].string;var c=d[a].prop;this.versionSearchString=d[a].versionSearch||d[a].identity;
if(b){if(b.indexOf(d[a].subString)!=-1){return d[a].identity;}}else{if(c){return d[a].identity;}}}},searchVersion:function(b){var a=b.indexOf(this.versionSearchString);if(a==-1){return;
}return parseFloat(b.substring(a+this.versionSearchString.length+1));},dataBrowser:[{string:navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",versionSearch:"Version"},{prop:window.opera,identity:"Opera"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.userAgent,subString:"iPhone",identity:"iPhone/iPod"},{string:navigator.platform,subString:"Linux",identity:"Linux"}]};
BrowserDetect.init();function getPageName(){var a=YAHOO.util.Selector.query("meta[name='PageName']",document.head);return a.length>0?YAHOO.util.Dom.getAttribute(a[0],"content"):"";}function doPopup(b,a,c){if(a==null||a==""){a="widgetPopupWin";
}if(!c){popwindow=window.open(b,a);}else{popwindow=window.open(b,a,"width=600,height=600,scrollbars=yes");}if(window.focus){popwindow.focus();}}function safe_exec(b,a){return function(){try{return b.apply(a?a:this,arguments);
}catch(c){logInfo(c.message);logInfo(c.stack);}};}$A=function(a){return new function(){this.array=a||[];this.copy=function(){var c=[];for(var b=0;b<this.array.length;b++){c.push(this.array[b]);
}return c;};this.filter=function(e,d){var b=[];for(var c=0;c<this.array.length;c++){if(e.call(d?d:this.array[c],this.array[c])){b.push(this.array[c]);}}return b;};this.reduce=function(f,c,e){var b=c;
for(var d=0;d<this.array.length;d++){b=f.call(e?e:this.array[d],this.array[d],b);}return b;};this.map=function(e,d){var b=[];for(var c=0;c<this.array.length;c++){b.push(e.call(d?d:this.array[c],this.array[c]));
}return b;};this.foreach=function(d,c){for(var b=0;b<this.array.length;b++){d.call(c?c:this.array[b],this.array[b],b);}};this.any=function(d,c){for(var b=0;b<this.array.length;b++){if(d.call(c?c:this.array[b],this.array[b])){return this.array[b];
}}return null;};this.remove=function(c){for(var b=0;b<this.array.length;b++){if(c==this.array[b]){this.array.splice(b,1);return;}}};this.removeAll=function(c){for(var b=0;b<c.length;
b++){this.remove(c[b]);}};return this;};};$O=function(a){return new function(){this.object=a||{};this.foreach=function(d,c){for(var b in this.object){d.call(c?c:b,b,this.object[b]);
}};this.every=function(d,c){for(var b in this.object){if(!d.call(c?c:b,b,this.object[b])){return false;}}return true;};this.reduce=function(f,c,e){var b=c;for(var d in this.object){b=f.call(e?e:d,d,this.object[d],b);
}return b;};this.any=function(d,c){for(var b in this.object){if(d.call(c?c:b,b,this.object[b])){return b;}}return null;};this.values=function(){var b=[];this.foreach(function(c,d){b.push(d);
});return b;};this.keys=function(){var b=[];this.foreach(function(c,d){b.push(c);});return b;};this.filter=function(d,c){var b={};this.foreach(function(e,f){if(d(e,f)){b[e]=f;}},this);
return $O(b);};this.put=function(c,d){var b=this.object[c];if(b){if(YAHOO.lang.isArray(b)){b.push(d);}else{var e=[b,d];this.object[c]=e;}}else{this.object[c]=d;}return this;};this.mixin=function(c){for(var b in c){this.object[b]=c[b];
}return this;};this.get=function(){return this.object;};this.map=function(c){this.object=$O(this.object).clone();for(var d in this.object){if(this.object.hasOwnProperty(d)){var b=this.object[d];
if(b&&"object"===typeof b){$A(b).map(c);}else{this.object[d]=c(b);}}}return this;};this.clone=function(){var d={};var c;for(c in this.object){if(this.object.hasOwnProperty(c)){var b=this.object[c];
if(b&&"object"===typeof b){d[c]=$A(b).copy();}else{d[c]=b;}}}return d;};this.objectClone=function(d){var e={};var c;for(c in this.object){if(this.object.hasOwnProperty(c)){var b=this.object[c];
if(b&&"object"===typeof b&&!d){e[c]=$O(b).clone(true);}else{e[c]=b;}}}return e;};this.flatMap=function(){var c=function(h,g,f){var e;for(e in g){if(g.hasOwnProperty(e)){var d=g[e];if(d&&"object"===typeof d){if(!d.innerHTML){c(h,d,f+"."+e);
}}else{h[f+"."+e]=d;}}}};var b={};c(b,this.object,getPageName());return b;};return this;};};function reverseMap(c){var a={};for(var b in c){if(c[b]){a[c[b]]=b;}}return a;}YAHOO.util.Dom.createElement=function(b){var a=document.createElement("span");
a.innerHTML=b;return a.children.length>0?a.children[0]:a;};YAHOO.util.Dom.place=function(b,a){if(YAHOO.lang.isString(b)){b=YAHOO.util.Dom.createElement(b);}a.appendChild(b);};YAHOO.util.Dom.remove=function(b,a){if(a){a.removeChild(b);
}else{b.parentNode.removeChild(b);}};function jsonToQuery(a){function c(f,d,e){if(f.length>0){f+="&";}return f+d+"="+encodeURIComponent(e);}var b="";$O(a).foreach(function(d,e){if(YAHOO.lang.isString(e)||YAHOO.lang.isNumber(e)||YAHOO.lang.isBoolean(e)){b=c(b,d,e);
}else{if(YAHOO.lang.isArray(e)){$A(e).foreach(function(f){b=c(b,d,f);});}}});return b;}function hitch(a,b){return function(){a[b]();};}YAHOO.util.Number.format=function(b,e){if(!isFinite(+b)){return"";
}b=!isFinite(+b)?0:+b;e=YAHOO.lang.merge({decimalSeparator:".",decimalPlaces:null,thousandsSeparator:"",prefix:"",suffix:"",negativeFormat:"-#"},(e||{}));var c=b<0,f=Math.abs(b),a=e.decimalPlaces,j=e.thousandsSeparator,h,g,d;
if(a<0){h=f-(f%1)+"";d=h.length+a;if(d>0){h=Number("."+h).toFixed(d).slice(2)+new Array(h.length-d+1).join("0");}else{h="0";}}else{h=f<1&&f>=0.5&&!a?"1":f.toFixed(a);}g=h.split(/\D/);
d=g[0].length%3||3;g[0]=g[0].slice(0,d)+g[0].slice(d).replace(/(\d{3})/g,j+"$1");h=e.prefix+g.join(e.decimalSeparator)+e.suffix;return c?e.negativeFormat.replace(/#/,h):h;};function parseDate(b){var a=Date.parse(b);
return(a)?new Date(a):null;}YAHOO.util.Date.parseDate=function(c,i){if(!c){return null;}if(!i){return parseDate(c);}var d=new RegExp("(\\w+)(\\W+)(\\w+)(\\W+)(\\w+)","g");var a=d.exec(i);
if(!a||a.length!=6){return null;}var l=function(p,o){for(var n=0;n<p.length;n++){if(p[n].toLowerCase().indexOf(o)>=0){return n;}}return -1;};var f=a[2];a=[a[1],a[3],a[5]];var b=l(a,"y");
var m=l(a,"m");var e=l(a,"d");var g=c.split(f);if(g.length<3){return null;}var j=new Number((g[b]<100)?"20"+g[b]:g[b]).valueOf();var h=new Number(g[m]).valueOf();var k=new Number(g[e]).valueOf();
return(j>0&&h>0&&k>0)?new Date(j,h-1,k):null;};function showErrorMessage(b,d,a,c){var f=getPageName()+".error";var e=reverseMap($O(appConfig).flatMap());if(e[d]){f=e[d];}showErrorMessageTealeafOmniture(b,d,a,c,f);
}var lastErrorCode="";function showErrorMessageTealeafOmniture(d,e,a,c,g){var f=getPageName();if(g.indexOf(f)<0){g=f+"."+g;}if(lastErrorCode!=g){sendOmnitureUserErrorInformation(g);
var b={errCode:g};if(TeaLeaf&&TeaLeaf.Event){TeaLeaf.Event.tlAddCustomEvent("ValidationEvent",b);}lastErrorCode=g;}if(a){var i=YAHOO.util.Dom.get(a);var j="<!-- "+"error_"+d+"="+g+"-->";
if(i){var h=YAHOO.util.Selector.query("ul.field-errors-list li",i);if(h.length==0){YAHOO.util.Dom.place('<ul class="field-errors-list"><li id="error'+d+'"><span>'+e+j+"</span></li></ul>",i);
}else{errorListNode=h[0].parentNode;if(!c){$A(h).foreach(function(k){if(k.id=="error"+d){YAHOO.util.Dom.remove(k);}});}else{$A(errorListNode.children).foreach(function(k){YAHOO.util.Dom.remove(k,errorListNode);
});}YAHOO.util.Dom.place('<li id="error'+d+'"><span>'+e+j+"</span></li>",errorListNode);}if(YAHOO.util.Dom.get(d)){YAHOO.util.Dom.addClass(d,"error");}if(TeaLeaf&&TeaLeaf.Client){TeaLeaf.Client.tlProcessNode(i);
}}}}function hideErrorMessage(c,b,d){if(b){var e=YAHOO.util.Dom.get(b);var g=YAHOO.util.Selector.query("ul.field-errors-list li",e);var f=null;var a=d||function(i,h){return i.id=="error"+h;
};$A(g).foreach(function(h){if(a(h,c)){f=h.parentNode;YAHOO.util.Dom.remove(h);}});if(YAHOO.util.Selector.query("ul.field-errors-list li",e).length==0&&f){YAHOO.util.Dom.remove(f);}if(YAHOO.util.Dom.get(c)){YAHOO.util.Dom.removeClass(c,"error");
}if(TeaLeaf&&TeaLeaf.Client){TeaLeaf.Client.tlProcessNode(e);}}}function noEnter(){return !(window.event&&window.event.keyCode==13);}function showDefaultText(a,c){var b=YAHOO.util.Dom.get(a);
if(b){b.focus();showElementHint(b,c);}}function showElementHint(c,d){function a(){if(c.value==d){c.value="";}}function b(){if(c.value==""){c.value=d;}}b();YAHOO.util.Event.on(c,"focus",a,this,true);
YAHOO.util.Event.on(c,"click",a,this,true);YAHOO.util.Event.on(c,"keypress",a,this,true);YAHOO.util.Event.on(c,"blur",b,this,true);}function setOpenPopupHandler(c){var b=YAHOO.util.Dom.get(c);
if(b){YAHOO.util.Event.on(b,"click",function(g){YAHOO.util.Event.stopEvent(g);var h=this.href+"&subSession="+window.name+"&async=true";var d=getPageName();if(d=="results"&&Dom.get("mapWrapper")){var f=YAHOO.application.pages[d].dependencies["mapenabled"];
f.mapProviderSpecific.getMapDataCallBack=function(e){e.bounds=$O(e.bounds).map(function(i){return YAHOO.application.doDoubleNumberFormat(parseFloat(i));}).get();h+=("&"+jsonToQuery(e.bounds)+"&hotelIds="+e.hotelIds.toString());
a(h);};f.mapProviderSpecific.getMapData();}else{a(h);}return false;});function a(d){popupWin=window.open(d.replace("noscript=true&",""),"","resizable=no,scrollbars=yes,menubar=no,location=yes,width=720,height=600");
popupWin.focus();}}}function createUrl(b,a){return b+"?"+jsonToQuery(a);}function isVisible(b){if(b==document){return true;}if(!b){return false;}if(!b.parentNode){return false;}if(b.style){if(b.style.display=="none"){return false;
}if(b.style.visibility=="hidden"){return false;}}if(window.getComputedStyle){var a=window.getComputedStyle(b,"");if(a.display=="none"){return false;}if(a.visibility=="hidden"){return false;
}}var a=b.currentStyle;if(a){if(a["display"]=="none"){return false;}if(a["visibility"]=="hidden"){return false;}}return isVisible(b.parentNode);}function updateIndex(){var d=selector.query(".index");
var b=[];for(var a in d){a.tabIndex=-1;if(isVisible(d[a])){b.push(d[a]);}}var c=1;for(var e=0;e<b.length;e++){b[e].tabIndex=c++;}}function getQueryStringParameterUtils(f,c){var d,b,a,h,g,e;
c=c||top.location.href;a=c.indexOf("?");h=a>=0?c.substr(a+1):c;a=h.lastIndexOf("#");h=a>=0?h.substr(0,a):h;g=h.split("&");for(d=0,b=g.length;d<b;d++){e=g[d].split("=");if(e.length>=2){if(e[0]===f){return xssFilter(decodeURIComponent(e[1].replace(/\+/g," ")));
}}}return null;}function xssFilter(a){return a;}function endsWith(b,a){if(b.length<a.length){return false;}return b.lastIndexOf(a)===b.length-a.length;}function startsWith(b,a){if(!b||!a){return false;
}return b.indexOf(a)===0;}function getSelectedTab(d){var a=Dom.get(d);if(a!=null){var b=selector.query(".selected",a);if(b!=null){var c=new String(b[0].id);return c.substr(0,c.indexOf("-"));
}}return"";}function getSelectedResultsTab(){return getSelectedTab("change-view-mode");}function hideWarning(){Dom.setStyle("warning-message","display","none");}function showWarning(){Dom.setStyle("warning-message","display","block");
}function hideError(){Dom.setStyle("error-message","display","none");}function showError(){Dom.setStyle("error-message","display","block");}String.prototype.startsWith=function(a){return this.match("^"+a)==a;
};String.prototype.endsWith=function(a){return this.match(a+"$")==a;};String.prototype.format=function(){var b=this;for(var a=0;a<arguments.length;a++){b=b.replace("{"+a+"}",arguments[a]);
}return b;};Event=YAHOO.util.Event;Connect=YAHOO.util.Connect;Dom=YAHOO.util.Dom;Element=YAHOO.util.Element;lang=YAHOO.lang;selector=YAHOO.util.Selector;Cookie=YAHOO.util.Cookie;History=YAHOO.util.History_||{getQueryStringParameter:function(b,a){return getQueryStringParameterUtils(b,a);
},getBookmarkedState:function(a){return null;}};if(typeof console=="undefined"){console={};console.log=function(){};}function logInfo(a){if(isConsoleDefined()){console.log("info:"+a);
}}function logError(a){if(isConsoleDefined()){console.error(a);}}function logFatal(a){if(isConsoleDefined()){console.error(a);}}function logWarning(a){if(isConsoleDefined()){console.warn(a);
}}function logDebug(a){if(isConsoleDefined()){console.log("debug:"+a);}}var isLoggingEnabled=false;function isConsoleDefined(){if(isLoggingEnabled){return((typeof(console)!=="undefined")&&(typeof(console.log)!=="undefined"));
}return false;}if(YAHOO.env.ua.ie&&((!document.documentMode&&YAHOO.env.ua.ie<8)||document.documentMode<8)){selector.attrAliases["class"]="className";selector.attrAliases["for"]="htmlFor";
}YAHOO.application={config:null,groups:{},pages:{},decorators:{},startSearchData:{},filterTriggered:null,onDecorateEvent:new YAHOO.util.CustomEvent("onDecorateEvent",this),omnitureTrackEvent:new YAHOO.util.CustomEvent("omnitureTrackEvent",this),calendarLocale:{},dateLocale:{},numberFormat:{},sliderPriceRate:{minRate:0,maxRate:0},targetId:"",savedSortOrder:null,lastTimerId:0,dependencies:{"landing":[],"results":["landing","dateless","searchdetails","filter","mapenabled","title"],"searchdetails":[],"details":["landing","dateless","searchdetails","mapenabled","ratedetails","title"],"checkout":["ratedetails","coupondetails"],"confirmation":["mapenabled","ratedetails"],"groupBooking":[],"itinerary":["mapenabled","ratedetails"]},initSubSession:function(){if(!window.name||!window.name.indexOf("subSession")==-1){window.name="subSession"+Math.random();
}},start:function(c,b,j){Connect.initHeader("Accept","application/json;charset=UTF-8",true);var f=typeof searchPageBookmarkManager!="undefined";if(f){searchPageBookmarkManager.initBookmarking(this);
}this.pageName=getPageName();this.config=c;this.config.form=Dom.get("search-form");if(yuiLocales){var d=function(n,m){var k=null;var l=function(o){if(!k){if(n[m+o]){k=n[m+o];}}};l("");
l("_SA");l("_CA");l("_PL");l("_TW");return k;};this.calendarLocale=d(yuiLocales.calendarLocales,this.config.locale);this.calendarLocale["DATE_RANGE_DELIMITER"]="--";this.dateLocale=d(yuiLocales.dateLocales,this.config.locale);
YAHOO.util.DateLocale[this.config.locale]=lang.merge(YAHOO.util.DateLocale["en"],this.dateLocale);this.numberFormat=d(yuiLocales.numberFormats,this.config.locale);}YAHOO.util.Date.formatDate=function(l,k){return YAHOO.util.Date.format(l,k?k:{format:"%x"},c.locale);
};var i=this;this.groups.put=function(n,k,m){var l=i.groups[n]||{};l[k]=m;i.groups[n]=l;};this.groups.get=function(m,k){var l=i.groups[m]||{};return l[k];};this.groups.remove=function(n,k){var l=i.groups[n]||{};
var m=l[k];if(m&&lang.isFunction(m.hideErrors)){m.hideErrors();}delete l[k];};var g=this.pages[this.pageName];g.dependencies={};var h=this.dependencies[this.pageName];$A(h).foreach(function(k){var l=this.pages[k];
if(l&&lang.isFunction(l.start)){l.start(this,this.config,j);g.dependencies[k]=l;}},this);if(g&&lang.isFunction(g.start)){g.start(this,this.config,j);}this.initSubSession();if(f){if(!searchPageBookmarkManager.data){this.startSearchData=this.getUrlData();
searchPageBookmarkManager.data=this.startSearchData;}else{b=true;this.startSearchData=searchPageBookmarkManager.data;}}this.waiter=new YAHOO.ext.Waiter(c.waiter);this.initDecorators();
this.initEvents();this.initMenubar();this.initContentLinksBar();if(b){var e=true;var a=function(){if(e){captureOmnitureData();}e=false;};if(f){if(searchPageBookmarkManager.data){searchPageBookmarkManager.registerPostSearchDelegate(a);
this.bookmarkFilter(searchPageBookmarkManager.data);}else{YAHOO.application.onDecorateEvent.subscribe(a);this.firstSearch();}}}else{captureOmnitureData();}},addDecorator:function(b,a){this.decorators[b]=a;
},initDecorators:function(){lang.augmentObject(this.decorators,{"content-links-bar":hitch(this,"initContentLinksBar")});},initEvents:function(){this.onDecorateEvent.subscribe(this.decorate);
},decorate:function(b,a){YAHOO.application.update();if(a.length==0||!a[0].widgets){return;}$A(a[0].widgets).foreach(function(d){var c=YAHOO.application.decorators[d];if(c){c();}});},initMenubar:function(){var b=this.config;
var a=this;b.getData=function(){return a.getFormData(true);};if(Dom.get("change-locale-btn")&&(Dom.get("lang"))){new YAHOO.ext.DropDownMenu("change-locale-btn","lang",b);}if(Dom.get("change-currency-btn")&&Dom.get("currency")){new YAHOO.ext.DropDownMenu("change-currency-btn","currency",b);
}Dom.setStyle("localization-container","display","inline-block");},initContentLinksBar:function(){setOpenPopupHandler("save-as-pdf-link");setOpenPopupHandler("print-preview-link");setOpenPopupHandler("receipt-popup");
},validateGroup:function(c){var b=this.groups[c]||{};var a=true;$O(b).foreach(function(e,f){var d=(f.validate)?f.validate():true;a=a&&d;});return a;},getSearchCookies:function(){return{"destination":Cookie.get("destination"),"targetId":Cookie.get("targetId")};
},setSearchCookies:function(d,c){if(!d||!c){var a=this.groups.get("search","destination");var b=Dom.get("targetId");if(b&&a){if(b.value.length>0){d=b.value;c=a.getInputEl().value;}}}if(d&&c){Cookie.set("destination",c,{path:"/",expires:new Date(9999,0,1)});
Cookie.set("targetId",d,{path:"/",expires:new Date(9999,0,1)});}},update:function(){var a=this.groups["filter"]||{};$O(a).foreach(function(b,c){if(!Dom.get(b)){delete a[b];}},this);
},getUpdatedUrl:function(a,c){$O(c).foreach(function(g,i){var f=a.indexOf(g);if(f!=-1){var e=a.indexOf("&",f);if(e==-1){e=a.length;}else{e=e-1;}var d=a.substr(e+1,a.length-e);var h=a.substr(0,f);
if((endsWith(h,"?")||endsWith(h,"&"))&&(startsWith(d,"&"))){d=d.substr(1);}a=h+d;}});var b=a[a.length-1];if(b=="/"){return a+"?"+jsonToQuery(c);}else{if(b=="&"||b=="?"){return a+jsonToQuery(c);
}else{return a+"&"+jsonToQuery(c);}}},getFiltersData:function(e){if(e&&e=="restoreFilters"&&this.savedFiltersData){var b=this.savedFiltersData;this.savedFiltersData=undefined;return b;
}var b={};var h=this.groups["filter"]||{};if(this.filterTriggered){b["filterTriggered"]=this.filterTriggered;}$O(h).foreach(function(k,l){if(l.get&&l.get("checked")){b=$O(b).put(l.get("name"),l.get("value")).get();
}});var a=h["traveler-opinion-slider-bg"];if(a&&a.getValue()>0){b["filter.travelerOpinion"]=this.doNumberFormat(a.getRealValue());}var g=h["price-slider-bg"];if(g){var c=this.sliderPriceRate.previousMaxRate&&this.sliderPriceRate.previousMaxRate>this.sliderPriceRate.maxRate?this.sliderPriceRate.previousMaxRate:this.sliderPriceRate.maxRate;
var f=this.sliderPriceRate.minRate;if(c>0){b["filter.highPrice"]=this.doNumberFormat(c);}if(f>=0){b["filter.lowPrice"]=this.doNumberFormat(f);}}var j=h["filter.hotelName"];if(j){b["filter.hotelName"]=j.getInputEl().filterValue;
}var i=h["filter.sortedBy"];if(i){var d=i.getValue();if(d){b["filter.sortedBy"]=d;}}if(e&&e=="saveFilters"&&!this.savedFiltersData){this.savedFiltersData=b;this.savedFiltersData["page"]=searchPageBookmarkManager.data["page"];
}return b;},getFormData:function(f,m){var e={};var b=Dom.get("hotelIds");if(b){e["hotelIds"]=b.value;}e["requestVersion"]=appConfig.requestVersion;e["lang"]=this.config.locale;e["currency"]=this.config.currency;
var l=Dom.get("targetId");var i=Dom.get("destination");var h=Dom.get("edit-destination");if(l){e["targetId"]=l.value;}if(i){e["destination"]=i.value;}else{if(h){e["destination"]=h.value;
}}$O(this.groups["search"]||{}).foreach(function(n,o){if(o.get){e=$O(e).put(o.get("name"),o.get("value")).get();}},this);if(f){var k=this.getFiltersData(m);e=$O(e).mixin(k).get();}var c=Dom.get("reset-dates");
if(c){e[c.name]=c.checked;}var d=Dom.get("tab-input");if(d){e[d.name]=d.value;}var g=Dom.get("property-id");if(g){e["property-id"]=g.value;}var j="link-more-options";var a=Dom.get(j);
if(a&&Dom.hasClass(j,"hide-more-options")){e["showOptions"]=true;}this.getFromUrl(e,"mcicid");this.getFromUrl(e,"mktid");this.getFromUrl(e,"mdpcid");if(getPageName()=="details"){if(History.getQueryStringParameter("detailsTab")){e["detailsTab"]=History.getQueryStringParameter("detailsTab");
}}return e;},getFromUrl:function(a,b){if(History.getQueryStringParameter(b)){a[b]=History.getQueryStringParameterList(b);}else{if(History.getQueryStringParameter(escape(b))){a[b]=History.getQueryStringParameterList(escape(b));
}}return a;},getUrlData:function(){var f={};f=this.getFromUrl(f,"page");f=this.getFromUrl(f,"deepLinkHeaderText");f=this.getFromUrl(f,"hotelIds");f["lang"]=this.config.locale;f["currency"]=this.config.currency;
f=this.getFromUrl(f,"targetId");f=this.getFromUrl(f,"errorMessagesUuid");f=this.getFromUrl(f,"inactiveHotelError");f=this.getFromUrl(f,"filter.hotelName");f=this.getFromUrl(f,"filter.starRates");
f=this.getFromUrl(f,"filter.highPrice");f=this.getFromUrl(f,"filter.lowPrice");f=this.getFromUrl(f,"filter.sortedBy");f=this.getFromUrl(f,"filter.travelerOpinion");f=this.getFromUrl(f,"filter.amenities");
f=this.getFromUrl(f,"filter.hotelTypes");f=this.getFromUrl(f,"filter.locations");f=this.getFromUrl(f,"filter.themes");f=this.getFromUrl(f,"filterTriggered");f=this.getFromUrl(f,"hotelIds");
f=this.getFromUrl(f,"hotelId");f=this.getFromUrl(f,"rating");f=this.getFromUrl(f,"customerRequisites.email");f=this.getFromUrl(f,"customerRequisites.phone");f=this.getFromUrl(f,"customerRequisites.couponCode");
f=this.getFromUrl(f,"customerRequisites.membershipNumber");f=this.getFromUrl(f,"subscriptionInfo.termsConditionAgreement");f=this.getFromUrl(f,"subscriptionInfo.wantNews");f=this.getFromUrl(f,"subscriptionInfo.wantNewsletters");
f=this.getFromUrl(f,"currency");f=this.getFromUrl(f,"lang");f=this.getFromUrl(f,"search");var b=window.location.href;b=b.substr(0,b.indexOf("?"));if(endsWith(b,"map")){f["tab"]="map";
}else{if(endsWith(b,"list")){f["tab"]="list";}else{if(endsWith(b,"matrix")){f["tab"]="matrix";}}}f=this.getFromUrl(f,"filter.breakfastIncluded");f=this.getFromUrl(f,"checkin");f=this.getFromUrl(f,"checkout");
f=this.getFromUrl(f,"destination");f=this.getFromUrl(f,"roomsCount");var e=parseInt(History.getQueryStringParameter("roomsCount"),10);if(e&&e>9){e=9;}for(var d=0;d<e;d++){f=this.getRoomFromUrl(f,"rooms["+d+"].adultsCount");
f=this.getRoomFromUrl(f,"rooms["+d+"].childrenCount");var c=parseInt(f["rooms["+d+"].childrenCount"],10);if(c&&c>4){c=4;}for(var a=0;a<c;a++){f=this.getFromUrl(f,"rooms["+d+"].children["+a+"].age");
}}f=this.getFromUrl(f,"firstVisible");f=this.getFromUrl(f,"requestVersion");return f;},getRoomFromUrl:function(a,b){if(History.getQueryStringParameter(b)){a[b]=History.getQueryStringParameterList(b);
}else{if(History.getQueryStringParameter(escape(b))){a[b]=History.getQueryStringParameterList(escape(b));}else{a[b]="error";}}return a;},sort:function(d,c){if(!c){c=10;}var b=this.getFormData(true);
b["sort"]=true;b.widgets=(d||{}).widgets;var a={};a["our_rec"]="Recom";a["price_lh"]="LowPrice";a["price_hl"]="HighPrice";a["stars_lh"]="LowStars";a["stars_hl"]="HighStars";a["traveler_lh"]="LowTraveler";
a["traveler_hl"]="HighTraveler";if(a[b["filter.sortedBy"]]){updateOmnitureLinkIdWithOutSend("HotSearch:Hot:Sort:"+a[b["filter.sortedBy"]]);}this.performAsyncSearchByData(b,false,c);
},filter:function(c,b){if(!b){b=10;}var a=this.getFormData(true);if(a["targetId"]==""){a["targetId"]=this.targetId;}if(a["targetId"]||a["destination"]||a["hotelId"]){a["filtering"]=true;
a.widgets=(c||{}).widgets;this.performAsyncSearchByData(a,false,b);}},search:function(c,b){if(!b){b=10;}this.filterTriggered=null;var a=this.getFormData(false);if(c&&c.data){a=$O(a).mixin(c.data).get();
}a.widgets=(c||{}).widgets;if(a["targetId"]||a["destination"]||(getPageName()=="details")){a["search"]=true;this.performAsyncSearchByData(a,false,b);}},firstSearch:function(){var a=this.getUrlData();
if(a["targetId"]||a["destination"]||a["hotelId"]){if(History.getQueryStringParameter("search")){a["search"]=History.getQueryStringParameter("search");}this.performSearchByData(a,false);
}},getSearchUrl:function(b){var a;if(b=="map"){a=this.config.results.mapSearchUrl;}else{if(b=="matrix"){a=this.config.results.matrixSearchUrl;}else{a=this.config.results.listSearchUrl;
}}return a.substr(0,a.indexOf("?"));},preventAsyncQuery:function(){if(this.lastTimerId){clearTimeout(this.lastTimerId);}this.lastTimerId=0;},performAsyncSearchByData:function(b,e,d){var a=this;
if(this.lastTimerId){clearTimeout(this.lastTimerId);this.lastTimerId=0;}var c=this.lastTimerId=setTimeout(function(){if(c==a.lastTimerId){a.lastTimerId=0;searchPageBookmarkManager.registerBookmark(b);
a.performSearchByData(b,e);}},d);},performSearchByData:function(d,f){this.preventAsyncQuery();var c="list";if(d["tab"]){c=d["tab"];}hideErrorMessage("invalidTarget","change-destination-errors");
Dom.removeClass("edit-destination","error");var a=Dom.get("edit-destination");if(a){a.blur();}if(f&&d.widgets){delete d.widgets;}if(f&&d["filtering"]){delete d["filtering"];}var e={};
if(getPageName()=="details"){e={widgets:["content-links-bar","search-details","select-rooms","details-view","availability-message","rate-details","warning-message"]};new YAHOO.ext.RemoteQuery(this.config.form.action,{timer:this.timer,skipWaiter:false,bookmarkQuery:f}).get($O(d).mixin(e).get());
}else{if(c=="list"){e={widgets:(d.widgets)?d.widgets:["filter-bar","results","results-total","paging","search-details","select-rooms","select-destination","select-dates","content-links-bar","change-view-mode","change-destination-errors","change-destination","warning-message","error-message"]};
new YAHOO.ext.RemoteQuery(this.getSearchUrl(c),{timer:this.timer,skipWaiter:false,bookmarkQuery:f}).get($O(d).mixin(e).get());}else{if(c=="map"){if(d["filtering"]){var b=this.pages["mapenabled"];
if(b&&YAHOO.lang.isFunction(b.updateHotels)){b.updateHotels(true,false);}}else{var e={widgets:(d.widgets)?d.widgets:["content-links-bar","map-view","search-details","select-rooms","select-destination","change-view-mode","change-destination-errors","change-destination","warning-message","error-message"]};
new YAHOO.ext.RemoteQuery(this.getSearchUrl(c),{timer:this.timer,skipWaiter:false,render:"container",bookmarkQuery:f}).get($O(d).mixin(e).get());}}else{if(c=="matrix"){var e={widgets:(d.widgets)?d.widgets:["content-links-bar","matrix-view","search-details","select-rooms","change-view-mode","select-destination","change-destination-errors","change-destination","warning-message","error-message"]};
new YAHOO.ext.RemoteQuery(this.getSearchUrl(c),{timer:this.timer,skipWaiter:false,render:"container",bookmarkQuery:f}).get($O(d).mixin(e).get());}}}}},bookmarkFilter:function(a){searchPageBookmarkManager.preSearch(a);
if(a["filterTriggered"]){this.filterTriggered=a["filterTriggered"];}this.performSearchByData(a,true);},doNumberFormat:function(a){return YAHOO.util.Number.format(a,{decimalSeparator:this.numberFormat.decimalSeparator,decimalPlaces:1});
},doDoubleNumberFormat:function(a){return(""+a).replace(".",this.numberFormat.decimalSeparator);},doParseDouble:function(a){return parseFloat(a.replace(this.numberFormat.decimalSeparator,"."));
},checkChosenRoom:function(){checkedRoom=this.groups.get("search","roomsCount").element.value;if(checkedRoom=="maxcount"){var a=this.config.groupBookingUrl+"&targetId="+Dom.get("targetId").value;
if(Dom.get("destination")){a+="&destination="+Dom.get("destination").value;}else{if(Dom.get("destination-value")){a+="&destination="+Dom.get("destination-value").innerHTML;}}window.location.href=a;
return false;}return true;},setFocusWithoutSelecting:function(b){var c=Dom.get(b);if(c){if(c.createTextRange){var a=c.createTextRange();a.move("character",0);a.select();}else{if(c.setSelectionRange){c.focus();
c.setSelectionRange(0,0);}else{c.focus();}}}}};(function(d){d.namespace("ext");var b=d.util.Connect;var a=function(e){if(e){d.application.waiter.hide();}};var c=function(e){if(e){d.application.waiter.show();
}};d.ext.RemoteQuery=function(f,g){this.url=f;if(!g){g={};}this.type=g["type"]=="json"?"json":"html";this.process=g["process"];this.render=g["render"];this.timer=g.timer;this.scrollAndFocus=g.scrollAndFocus==undefined?true:g.scrollAndFocus;
if(g.readyCallback){this.readyCallback=g.readyCallback;}var e=this;if(g.bookmarkQuery){this.callbacks={"json":{success:e.successJSONBookmark,failure:e.failure},"html":{success:e.successHTMLBookmark,failure:e.failure}};
}else{this.callbacks={"json":{success:e.successJSON,failure:e.failure},"html":{success:e.successHTML,failure:e.failure}};}this.showWaiter=(this.type=="html"&&!g.skipWaiter);};d.ext.RemoteQuery.prototype.get=function(i){if(!i){i={};
}i["async"]=true;this.queryParams=i;var j=this.callbacks[this.type];j.argument=this;c(this.showWaiter);var g=this.url;var f=(g.indexOf("?")<0);if(f){if(i){g+="?";}}else{g+="&";}if(d.application){var h="lang="+d.application.config.lang+"&currency="+d.application.config.currency;
if(g.indexOf(h)>0){if(i["lang"]){delete i["lang"];}if(i["currency"]){delete i["currency"];}}}if(i){g+=jsonToQuery(i);}g=g.replace("asyncSearch=true","asyncSearch=false");if(this.timer){var e=this;
j.customevents={onStart:hitch(this.timer,"start")};}this.request=b.asyncRequest("GET",g+"&subSession="+window.name+"&uniqueAjaxID="+Math.random(),j);};d.ext.RemoteQuery.prototype.abort=function(){b.abort(this.request);
if(this.readyCallback){this.readyCallback(this.request,false);}};d.ext.RemoteQuery.prototype.successJSON=function(e){try{var f=d.lang.JSON.parse(e.responseText);if(e.argument.process){e.argument.process(f);
}if(e.argument.readyCallback){e.argument.readyCallback(e,true);}}catch(g){logInfo(g.message);logInfo(g.stack);}};d.ext.RemoteQuery.prototype.successJSONBookmark=function(e){e.argument.successJSON(e);
};d.ext.RemoteQuery.prototype.redirect=function(e){if(e.getResponseHeader){var f=e.getResponseHeader["RedirectURL"];if(f==undefined){f=e.getResponseHeader["Redirecturl"];}if(f!=undefined){window.location=f;
return true;}}return false;};d.ext.RemoteQuery.prototype.successHTML=function(f){if(f.argument.redirect(f)){return;}if(f.argument.process){f.argument.process();}var g=f.argument.queryParams["widgets"];
if(!g||g.length==0){a(f.argument.showWaiter);return;}var e=document.createElement("div");e.innerHTML=f.responseText;if(f.argument.render){g.push(f.argument.render);}$A(g).foreach(function(j){var i=selector.query("#"+j,e,true);
if(i){var h=Dom.get(i.id);if(h){h.parentNode.replaceChild(i,h);if(TeaLeaf&&TeaLeaf.Client){TeaLeaf.Client.tlProcessNode(h);}}else{logInfo("Could not find dom element with id: "+h+" to refresh.");
}}});d.application.onDecorateEvent.fire({"widgets":g});a(f.argument.showWaiter);if(f.argument.scrollAndFocus==true){d.application.setFocusWithoutSelecting("edit-destination");window.scroll(0,0);
}if(Dom.get("O_c")){Dom.setStyle("O_c","top","0");}if(f.argument.readyCallback){f.argument.readyCallback(f,true);}};d.ext.RemoteQuery.prototype.successHTMLBookmark=function(e){e.argument.successHTML(e);
searchPageBookmarkManager.postSearch();};d.ext.RemoteQuery.prototype.failure=function(h){if(h.argument.redirect(h)){return;}var i=h.responseText.search("<body");var e=h.responseText.search("</body>")+7;
var j=h.responseText.substring(i,e);var g=document.createElement("div");g.innerHTML=j;var f=selector.query("body")[0];f.innerHTML=g.innerHTML;if(h.argument.readyCallback){h.argument.readyCallback(h,false);
}};})(YAHOO);(function(d){d.namespace("ext");var b=d.util.Dom;var c=d.widget.DateMath;var a=65;d.ext.ValidationHook=function(f,e){e=e||{};this.elementId=f;this.element=b.get(f);this.postvalidate=e.postvalidate||function(g,h){return true;
};this.validate=e.validate?e.validate:this.validate;this.required=e.required;this.skip=e.skip;this.errorNode=e.errorNode;this.messages=[];this.translations=e.translations||{};this.constraints=e.constraints||function(){return{};
};};d.ext.ValidationHook.prototype.validate=function(){var e=true;if(!this.element){this.element=b.get(this.elementId);}if(this.required&&this.element&&(!this.element.value||this.element.value.length==0)){e=false;
this.messages.push(this.translations.invalidMessage);}return e;};d.ext.ValidationHook.prototype.showErrors=function(){$A(this.messages).foreach(function(e){showErrorMessage(this.element.id,e,this.errorNode,this.singleError);
},this);};d.ext.ValidationHook.prototype.hideErrors=function(){hideErrorMessage(this.element.id,this.errorNode);};d.ext.DateValidationHook=function(g,f){d.ext.DateValidationHook.superclass.constructor.call(this,g,f);
this.datePattern=f.datePattern||"";var e=this.datePattern.replace(/\./g,"\\.").replace(/d+/i,"\\d{1,2}").replace(/y+/i,"\\d{2,4}").replace(/m+/i,"\\d{1,2}");this.patternMatcher=new RegExp("^"+e+"$");
};d.lang.extend(d.ext.DateValidationHook,d.ext.ValidationHook,{validate:function(k){var l=this.skip||d.ext.DateValidationHook.superclass.validate.call(this);if(!this.skip&&l){var j=this.element.value;
l=this.patternMatcher.test(j);if(!l){j=this.element.value.replace(/[-./ ]/g,this.locale.DATE_FIELD_DELIMITER);l=this.patternMatcher.test(j);}if(!l){var m=this.translations.invalidMessage;
if(m.indexOf(":dateFormatPattern")!=-1){m=m.replace(":dateFormatPattern",this.datePattern).replace("yy","yyyy");}this.messages.push(m);}else{this.element.value=j;}}if(!this.skip&&l){var g=this.constraints();
if(g.mindate&&g.maxdate){var f=d.util.Date.parseDate(this.element.value,this.datePattern);var h=c.add(g.mindate,c.DAY,-1);var i=c.add(g.maxdate,c.DAY,1);h=new Date(h.getFullYear(),h.getMonth(),h.getDate());
i=new Date(i.getFullYear(),i.getMonth(),i.getDate());var e;if(!c.between(f,h,i)){e=this.translations.rangeMsg;}else{if(g.dateRangeStart&&c.before(f,g.dateRangeStart)){e=this.translations.checkinBeforeMsg;
}else{if(g.dateRangeEnd&&c.after(f,c.add(g.dateRangeEnd,c.DAY,-1))){e=this.translations.allowedPeriodMsg||null;}}}if(e){l=false;this.messages.push(e);}}}if(!k){if(!l){this.showErrors();
}else{hideErrorMessage(this.element.id,this.errorNode);}}return l;}});d.ext.SimpleValidationHook=function(f,e){d.ext.SimpleValidationHook.superclass.constructor.call(this,f,e);this.singleError=e.singleError;
};d.lang.extend(d.ext.SimpleValidationHook,d.ext.ValidationHook,{validate:function(e){var f=this.skip||d.ext.SimpleValidationHook.superclass.validate.call(this);if(!f){this.showErrors();
}else{hideErrorMessage(this.element.id,this.errorNode);}return f;}});d.ext.AutocompleteValidationHook=function(f,e){d.ext.AutocompleteValidationHook.superclass.constructor.call(this,f,e);
this.target=b.get("targetId");};d.lang.extend(d.ext.AutocompleteValidationHook,d.ext.ValidationHook,{validate:function(f){var g=f||(d.ext.AutocompleteValidationHook.superclass.validate.call(this)&&this.target.value&&this.target.value.length>0&&this.target.value!="null");
if(g){hideErrorMessage(this.element.id,this.errorNode);}var e=this;return g||this.postvalidate(function(h){showErrorMessage(e.element.id,h,e.errorNode,false);},this.translations.invalidMessage);
}});d.ext.FieldListValidator={nonEmptyPattern:{name:"nonEmpty",pattern:/\S/},emailPattern:{name:"email",pattern:/^[\w\-\+\._]+\@[\w\-\+_]+\.[\w\-\+_]+(\.[\w\-\+_]+)*$/},phonePattern:{name:"phone",pattern:/^\+?[\d\-\.\ \(\)]{6,}$/},couponPattern:{name:"coupon",pattern:/^[\d\-\w\:]*$/},uniqueNumbersPattern:{name:"uniqueNumbers",pattern:function(g){if(!g||g.length==0){return false;
}var f=g.charAt(0);for(var e=1;e<g.length;e++){if(g.charAt(e)!=f){return true;}}return false;}},itineraryPattern:{name:"itinerary",pattern:/^[\d\.\-\ ]*$/},digitPattern:{name:"digit",pattern:/^(\d)*$/},firstNamePattern:{name:"firstName",pattern:/^[\u0041-\u005A\u0061-\u007A\u00C0-\u00FF\_\-\(\)\'\.\ ]{1,25}$/},firstNameGdsPattern:{name:"firstName",pattern:/^[\u0041-\u005A\u0061-\u007A\u00C0-\u00FF\_\-\(\)\'\.\ ]{1,25}$/},lastNamePattern:{name:"lastName",pattern:/^[\u0041-\u005A\u0061-\u007A\u00C0-\u00FF\_\-\(\)\'\.\ ]{1,40}$/},latinPattern:{name:"latin",pattern:/^[\u0020-\u007F\u00A0-\u00FF\_\-\(\)\'\ ]{2,}$/},latinNoNumbersPattern:{name:"latinNoNumbers",pattern:/^[\u0020-\u002F\u0040-\u007F\u00A0-\u00FF\_\-\(\)\'\ ]{2,}$/},containConsonantPattern:{name:"containConsonant",pattern:/[^aeiouAEIOU]/},containVowelPattern:{name:"containVowel",pattern:/[aeiouAEIOU]/}};
d.ext.FieldListValidator.addValidateListener=function(e,j,f){var h=new Array();for(var g=0;g<e.length;g++){newValidateFields=b.getElementsByClassName(e[g].id);$A(newValidateFields).foreach(function(i){i.errorMsgs=e[g].msg;
i.errorContainer=e[g].errorContainer!=null?e[g].errorContainer:i.id+"-error";i.validEvents=e[g].validEvents;i.validatePatternList=j;});h=h.concat(newValidateFields);}d.ext.FieldListValidator.addValidateFieldsListToSubmitControl(f,h);
if(h.length>0){$A(h).foreach(function(k){var i=k.validEvents==null||k.validEvents.length==0?["blur"]:k.validEvents;$A(i).foreach(function(l){Event.on(k,l,function(m){setTimeout(function(){validateField(k);
},200);});});});}};d.ext.FieldListValidator.addSubmitValidator=function(f,g,e){var h=b.get(f);if(h!=null){Event.on(h,"click",function(m){if(h.validateFieldsList!=null){var l=false;var k=null;
$A(h.validateFieldsList).foreach(function(o){var n=o.validateFunction!=null?o.validateFunction:validateField;if((d.lang.isFunction(o))?o():n(o)){k=(k!=null&&k.tabIndex<o.tabIndex)?k:o;
l=true;}});if(l){Event.stopEvent(m);k.focus();if(b.getY(k)-b.getDocumentScrollTop()<a){window.scrollBy(0,(0-a));}}else{if(e){var j=b.get(f+"-disabled");b.setStyle(h,"display","none");
b.setStyle(j,"display","inline");}var i=b.get(f+"-hidden");if(i!=null){i.name=h.name;}if(g){g();d.lang.later(1500,this,function(){b.get("search-form").submit();});Event.stopEvent(m);
}else{if(e){b.get("search-form").submit();}}}}});}};d.ext.FieldListValidator.addUniqueValidator=function(e,g,f){$A(e).foreach(function(h){$O(h).foreach(function(i,j){Event.on(j,"blur",function(k){d.ext.FieldListValidator.validateUniqueFields(e,g);
});});});d.ext.FieldListValidator.addValidateFieldsListToSubmitControl(f,function(){return d.ext.FieldListValidator.validateUniqueFields(e,g);});};d.ext.FieldListValidator.validateUniqueFields=function(e,f){var h=false;
var g=function(l,i){var m=null;i=$A(i).filter(function(n){return !$O(n).any(function(o,p){if(o==l.id){m=n;}return o==l.id;});});if(!m){return;}var j=true;var k=$O(m).reduce(function(o,p,n){j=j&&(p.value.length>0);
return n+p.value;},"");$A(i).foreach(function(o){var n=true;var p=$O(o).reduce(function(r,s,q){n=n&&(s.value.length>0);return q+s.value;},"");if(n){if(k==p){$O(m).foreach(function(r,q){if(!q.errorShown&&j){h=true;
d.ext.FieldListValidator.showBookingErrorMaessage(q,f.msg,q.id+"-error");q.errorShown=true;q.uniqueError=true;}});}else{$O(m).foreach(function(r,q){q.errorShown=false;if(!q.uniqueError){d.ext.FieldListValidator.hideBookingErrorrMsg(q,q.id+"-error");
}});}}});};$A(e).foreach(function(i){$O(i).foreach(function(k,j){j.uniqueError=false;});});$A(e).foreach(function(i){$O(i).foreach(function(k,j){g(j,e);});});return h;};d.ext.FieldListValidator.showBookingErrorMaessage=function(f,g,e){this.hideBookingErrorrMsg(f,e);
showErrorMessage(f,g,e,false);};d.ext.FieldListValidator.hideBookingErrorrMsg=function(f,e){hideErrorMessage(f,e,function(h,g){return h.id==""||h.id=="error"+g;});};d.ext.FieldListValidator.addValidateFieldsListToSubmitControl=function(e,f){if(e==null||f==null){return;
}var g=b.get(e);if(g!=null){if(g.validateFieldsList==null){g.validateFieldsList=new Array();}g.validateFieldsList=g.validateFieldsList.concat(f);}};})(YAHOO);(function(b){b.namespace("ext");
var a=b.util.Dom;b.widget.AutoComplete.prototype._toggleContainer=function(k){var f=this._elContainer;if(this.alwaysShowContainer&&this._bContainerOpen){return;}if(!k){this._toggleHighlight(this._elCurListItem,"from");
this._nDisplayedItems=0;this._sCurQuery=null;if(this._elContent.style.display=="none"){return;}}var d=this._oAnim;if(d&&d.getEl()&&(this.animHoriz||this.animVert)){if(d.isAnimated()){d.stop(true);
}var i=this._elContent.cloneNode(true);f.appendChild(i);i.style.top="-9000px";i.style.width="";i.style.height="";i.style.display="";i.style.overflowY="visible";var h=i.offsetWidth;var n=(selector.query(".yui-ac-bd",i,true)).offsetHeight;
var l=19;var e=n+l;var c=(this.animHoriz)?0:h;var g=(this.animVert)?0:e;d.attributes=(k)?{width:{to:h},height:{to:e}}:{width:{to:c},height:{to:g}};if(k&&!this._bContainerOpen){this._elContent.style.width=c+"px";
this._elContent.style.height=g+"px";}else{this._elContent.style.width=h+"px";this._elContent.style.height=e+"px";}f.removeChild(i);i=null;var j=this;var m=function(){d.onComplete.unsubscribeAll();
if(k){j._toggleContainerHelpers(true);j._bContainerOpen=k;j.containerExpandEvent.fire(j);}else{j._elContent.style.display="none";j._bContainerOpen=k;j.containerCollapseEvent.fire(j);
}};this._toggleContainerHelpers(false);this._elContent.style.display="";d.onComplete.subscribe(m);d.animate();}else{if(k){this._elContent.style.display="";this._elContent.style.overflowY="visible";
this._toggleContainerHelpers(true);this._bContainerOpen=k;this.containerExpandEvent.fire(this);}else{this._toggleContainerHelpers(false);this._elContent.style.display="none";this._elContent.style.overflowY="hidden";
this._bContainerOpen=k;this.containerCollapseEvent.fire(this);}}};b.ext.Autocomplete=function(e,c,d,f){this.element=e;this.container=c;this.options=d;this.dataSource=this.createDataSource(d.url);
this.autocomplete=this.createAutocomplete(e,c,this.dataSource,f);this.initialize();};b.ext.Autocomplete.prototype.focus=function(c){if(b.lang.isFunction(c)){}else{a.get(this.element).focus();
this.autocomplete._bFocused=true;}};b.ext.Autocomplete.prototype.createDataSource=function(c){return new b.util.XHRDataSource(c,{responseType:b.util.XHRDataSource.TYPE_JSON,responseSchema:{resultsList:"items",fields:["name","category","categoryLocalized","id"]}});
};b.ext.Autocomplete.prototype.createAutocomplete=function(d,c,g,h){var e=a.inDocument;a.inDocument=function(i){return a.get(i)?true:false;};var f=new b.widget.AutoComplete(d,c,g,{minQueryLength:3,itemSelectEvent:(h==null),useIFrame:true,resultTypeList:false,maxResultsDisplayed:16,generateRequest:function(i){return i;
},formatResult:function(l,j){var i=l.name;var k=b.ext.Autocomplete.prototype.buildAutocompleteTermRegex(j);i=i.replace(new RegExp(k,"gi"),'<span class="term">$1</span>');return'<span class="destination">'+i+"</span>";
}},this.options);if(h){f.itemSelectEvent.subscribe(h);}a.inDocument=e;return f;};b.ext.Autocomplete.prototype.buildAutocompleteTermRegex=function(e){var c=String(e).split(" ");var f="(";
for(var d=0;d<c.length;d++){if(f.length>1){f=f+"|";}f=f+"("+c[d]+")";}f=f+")";return f;};b.ext.Autocomplete.prototype.initialize=function(){if(this.options.categories){this.autocomplete.containerPopulateEvent.subscribe(function(e,c){var d=null;
$A(this.getListItems()).foreach(function(h,g){var f=this.getListItemData(h);if(f!=null&&d!=f.categoryLocalized){a.place('<span class="category">'+f.categoryLocalized+"</span>",h);if(g>0){a.addClass(h,"first");
}d=f.categoryLocalized;}else{a.removeClass(h,"first");}},this);});}};b.ext.Autocomplete.prototype.setValidationHook=function(c){b.lang.augmentObject(this.autocomplete,c);};})(YAHOO);
(function(f){f.namespace("ext");var c=f.util.Dom;var b=f.util.Event;var e=f.util.Date;var d=f.widget.DateMath;var a=f.util.KeyListener.KEY;f.ext.Calendar=function(i,h){this.options=i;
this.dialog=null;this.calendar=null;this.element=c.get(i.elementId);this.iconElement=c.get(i.elementId+"-icon");this.dayElement=c.get(i.elementId+"-day");this.checkinElement=c.get(i.checkinElementId);
this.checkinDate=i.checkinDate;this.enterKL=null;this.tabKL=null;this.previousMonthEl=null;this.nextMonthEl=null;this.firstCalendarFirstDayEl=null;this.firstCalendarLastDayEl=null;this.secondCalendarFirstDayEl=null;
this.locale=i.locale;if(i.onselect){this.onselect=i.onselect;}if(i.onshow){this.onshow=i.onshow;}this.calendarName=i.elementId+"-calendar";var g=this;if(this.element.value.length==0){this.element.value=e.formatDate(i.value);
}if(this.dayElement){this.dayElement.innerHTML=e.formatDate(i.value,{format:"%A"});}if(this.options.container){b.on(this.element,"focus",this.showCalendar,this,true);b.on(this.iconElement,"click",this.showCalendar,this,true);
this.makeKeyListener(this.element,a.TAB,this.setFocus).enable();}b.on(this.element,"change",this.elementChange,this,true);this.makeKeyListener(this.element,a.ENTER,function(){g.elementChange();
if(f.lang.isFunction(g.element.onchange)){g.element.onchange();}}).enable();if(this.checkinElement){b.on(this.checkinElement,"change",this.checkinElementChange,this,true);}if(!this.options.container){this.showCalendar();
}this.element.decorated=true;};f.ext.Calendar.prototype.makeKeyListener=function(j,i,k,g){var h={"keys":i};if(g){h["shift"]=g;}return new f.util.KeyListener(j,h,{fn:k,scope:this,correctScope:true});
};f.ext.Calendar.prototype.elementChange=function(){if(this.element.value==""){this.selectDate("");}else{if(this.validate){if(this.validate(false)){var g=e.parseDate(this.element.value,this.locale.datePattern);
if(g){this.selectDate(g);}}}}};f.ext.Calendar.prototype.checkinElementChange=function(){if(this.checkinElement.value==""){this.update();}};f.ext.Calendar.prototype.setFocus=function(h,g){if(this.options.container){var i=g[1];
this.dialog.firstElement.focus();b.preventDefault(i);}};f.ext.Calendar.prototype.enterEvent=function(i,g,l){var j=g[1];var h=new Element(j.currentTarget);if(!h.hasClass("calnavright")&&!h.hasClass("calnavleft")){f.util.UserAction.click(j.currentTarget);
var k=c.get(this.options.nextFocusableElementId);if(k){k.focus();}b.preventDefault(j);}};f.ext.Calendar.prototype.sendFocus=function(h,g,j){if(this.options.container&&this.options.nextFocusableElementId){this.close();
var i=c.get(this.options.nextFocusableElementId);if(i){i.focus();b.preventDefault(g[1]);}}};f.ext.Calendar.prototype.showCalendar=function(){this.onshow();if(!this.dialog&&this.options.container){this.dialog=new f.widget.Dialog(this.options.container,{visible:false,draggable:false,close:false,context:[this.options.elementId,"tl","bl"],underlay:"none",zIndex:100});
c.addClass(this.dialog.element,"calendar");this.dialog.subscribe("beforeShow",function(){this.dialog.align("tl","bl");},this,true);this.dialog.cfg.queueProperty("keylisteners",[this.makeKeyListener(document,a.ESCAPE,this.close)]);
var i=function(l){var j=b.getTarget(l);var k=this.dialog.element;if(j!=k&&!c.isAncestor(k,j)&&j!=this.element&&!c.isAncestor(this.element,j)&&j!=this.iconElement&&!c.isAncestor(this.iconElement,j)){this.close();
}};b.on(document,"focus",i,this,true);b.on(document,"click",i,this,true);b.on(this.element,"blur",function(k,j){if(!j.calendar){this.close();}},this,true);this.dialog.setBody('<div id="'+this.calendarName+'"></div>');
this.dialog.render(document.body);this.dialog.showEvent.subscribe(function(){if(f.env.ua.ie){this.dialog.fireEvent("changeContent");}},this,true);}if(!this.calendar){var g={monthFormat:f.widget.Calendar.LONG,initialFocus:"year"};
this.calendar=new f.widget.CalendarGroup(this.calendarName,{iframe:false,hide_blank_weeks:true,pages:this.options.pages,mindate:this.options.mindate,maxdate:this.options.maxdate,navigator:false,LOCALE_WEEKDAYS:"1char"});
$O(this.locale).foreach(function(l,j){if(l!="datePattern"){this.calendar.cfg.setProperty(l,j);}},this);this.calendar.select(e.formatDate(this.element.value?this.element.value:new Date()));
this.update();this.calendar.selectEvent.subscribe(function(k,j){if(this.calendar.getSelectedDates().length>0){this.element.value=e.formatDate(this.calendar.getSelectedDates()[0]);if(this.dayElement){this.dayElement.innerHTML=e.formatDate(this.calendar.getSelectedDates()[0],{format:"%A"});
}}else{this.element.value="";}this.close();this.onselect(k,j);},this,true);this.calendar.renderEvent.subscribe(function(){this.dialog.fireEvent("changeContent");},this,true);this.calendar.changePageEvent.subscribe(function(){this.enterKL.disable();
this.tabKL.disable();this.setTabOrder();},this,true);this.calendar.renderEvent.subscribe(function(){c.get("checkinCalendar").select();});}var h=this.calendar.getSelectedDates();if(h.length>0){this.calendar.cfg.setProperty("pagedate",h[0]);
this.calendar.render();}this.calendar.show();if(this.options.container){this.dialog.show();this.element.focus();this.setTabOrder();}};f.ext.Calendar.prototype.setTabOrder=function(){this.tabKL=this.makeKeyListener(this.dialog.lastElement,a.TAB,this.sendFocus);
this.tabKL.enable();var k=this.dialog.getFocusableElements();this.previousMonthEl=k[0];this.firstCalendarFirstDayEl=k[1];var j=1;while(k[j].className!="calnavright"){j++;}this.nextMonthEl=k[j];
this.firstCalendarLastDayEl=k[j-1];this.secondCalendarFirstDayEl=k[j+1];var g=this;var h=function(n,i,l){var m=function(p,o,r){var q=o[1];b.preventDefault(q);i.focus();};g.makeKeyListener(n,a.TAB,m,l).enable();
};h(this.previousMonthEl,this.nextMonthEl,false);h(this.nextMonthEl,this.firstCalendarFirstDayEl,false);h(this.firstCalendarLastDayEl,this.secondCalendarFirstDayEl,false);h(this.nextMonthEl,this.previousMonthEl,true);
h(this.firstCalendarFirstDayEl,this.nextMonthEl,true);h(this.secondCalendarFirstDayEl,this.firstCalendarLastDayEl,true);this.enterKL=this.makeKeyListener(k,a.ENTER,this.enterEvent);
this.enterKL.enable();};f.ext.Calendar.prototype.setProperty=function(h,i,g){if(this.calendar){this.calendar.cfg.setProperty(h,i,g);if(this.calendar.pages){$A(this.calendar.pages).foreach(function(j){j.cfg.setProperty(h,i,g);
});}}else{this.options[h]=i;}};f.ext.Calendar.prototype.getProperty=function(g){return(this.calendar)?this.calendar.cfg.getProperty(g):null;};f.ext.Calendar.prototype.updateRenderers=function(){if(this.calendar){this.calendar.removeRenderers();
var g=new Date();g=new Date(g.getFullYear(),g.getMonth(),g.getDate());if(this.checkinElement&&this.checkinDate){if(this.checkinElement.value==""){this.calendar.cfg.setProperty("mindate",d.add(g,d.DAY,1));
}else{this.calendar.addRenderer(e.formatDate(this.checkinDate),function(l,k){if((l.getTime()-this.cfg.getProperty("mindate").getTime())<0){k.innerHTML='<a href="#" class="previous">'+l.getDate()+"</a>";
c.addClass(k,"checkin-date");return f.widget.Calendar.STOP_RENDER;}else{c.addClass(k,"checkin-date");}});if(this.calendar.getSelectedDates().length>0){var i=new Date(this.checkinDate.getFullYear(),this.checkinDate.getMonth(),this.checkinDate.getDate()+1);
var h=this.calendar.getSelectedDates()[0];var j=new Date(h.getFullYear(),h.getMonth(),h.getDate()-1);this.calendar.addRenderer(e.formatDate(i)+this.calendar.cfg.getProperty("DATE_RANGE_DELIMITER")+e.formatDate(j),function(l,k){c.addClass(k,"range");
});}}}if((this.checkinElement&&this.checkinElement.value=="")||!this.checkinDate||((g.getTime()-this.checkinDate.getTime())!=0)){this.calendar.addRenderer(e.formatDate(g),function(l,k){if((l.getTime()-this.cfg.getProperty("mindate").getTime())<0){k.innerHTML='<a href="#" class="previous">'+l.getDate()+"</a>";
c.addClass(k,"today");return f.widget.Calendar.STOP_RENDER;}else{if(!c.hasClass(k,"oom")){c.addClass(k,"today");}}});}this.calendar.render();}};f.ext.Calendar.prototype.update=function(){this.updateRenderers();
if(this.calendar){if(!this.options.container){this.showCalendar();}}};f.ext.Calendar.prototype.close=function(){if(this.calendar){this.calendar.hide();}if(this.dialog){this.dialog.hide();
}};f.ext.Calendar.prototype.get=function(g){switch(g){case"value":return this.element.value;case"name":return this.element.attributes["name"].value;}return null;};f.ext.Calendar.prototype.selectDate=function(g){if(this.calendar){if(g!=""){this.calendar.select(e.formatDate(g));
var i=this.calendar.getSelectedDates();if(i.length>0){var h=i[0];this.calendar.cfg.setProperty("pagedate",(h.getMonth()+1)+"/"+h.getFullYear());}}else{this.calendar.clear();}this.update();
if(!this.options.container){this.showCalendar();}}else{this.element.value=e.formatDate(g);}if(this.validate){this.validate();}};f.ext.Calendar.prototype.onselect=function(){};f.ext.Calendar.prototype.onshow=function(){};
})(YAHOO);(function(c){c.namespace("ext");var b=c.util.Dom;var a=c.util.Event;c.ext.DropDown=function(e,d){this.elementId=e;this.element=b.get(e);this.validationHook=d||{};c.lang.augmentObject(this,this.validationHook);
};c.ext.DropDown.prototype.get=function(d){if(!this.element){this.element=document.getElementById(this.elementId);}if(d=="value"){return this.element.value;}else{if(d=="name"){return this.element.attributes["name"].value;
}}return null;};c.ext.DropDownMenu=function(e,f,d){this.options=d;this.buttonId=e;this.srcId=f;this.button=b.get(this.buttonId);this.srcElement=b.get(this.srcId);this.isOpened=false;
this.menu=new c.widget.Overlay(this.srcId+"-overlay",{visible:false});this.menu.setBody(this.listFromSource());this.menu.render(this.srcElement.parentNode);this.button.innerHTML=this.srcElement.options[this.srcElement.selectedIndex].text;
this.srcElement.parentNode.removeChild(this.srcElement);this.initEventHandlers();};c.ext.DropDownMenu.prototype.listFromSource=function(){var i=new Element(document.createElement("ul"));
var j=this.srcElement.firstChild;do{if(j&&j.tagName&&j.tagName.toUpperCase()=="OPTION"){var h=new Element(document.createElement("a"));var f=new Element(document.createElement("span"),{"id":j.value,"innerHTML":j.innerHTML});
if(this.srcId=="currency"){var e=new Element(document.createElement("div"),{"className":"popup-menu-item-icon-wrapper"});var d=new Element(document.createElement("img"),{"className":"popup-menu-item-icon "+appConfig.currencies[j.value].className,"src":appConfig.flagsImagesUrl});
e.appendChild(d);h.appendChild(e);f.addClass("currency");}h.appendChild(f);var g=new Element(document.createElement("li"));if(j.selected){g.addClass("menuitem-selected");}g.appendChild(h);
i.appendChild(g);}}while(j=j.nextSibling);return i.get("element");};c.ext.DropDownMenu.prototype.initEventHandlers=function(){a.on(this.button,"click",this.onBtnClick,this,true);a.on(this.button,"mouseover",this.onBtnMouseOver,this,true);
a.on(this.button,"mouseout",this.onBtnMouseOut,this,true);a.delegate(this.menu.element,"click",this.onMenuClick,"li",this,true);var d=new c.util.KeyListener(document,{keys:27},{fn:this.hide,scope:this,correctScope:true});
d.enable();a.on(document,"click",function(h){var g=a.getTarget(h);var f=this.menu.element;if(g!=f&&!b.isAncestor(f,g)&&g!=this.button){this.hide();}},this,true);};c.ext.DropDownMenu.prototype.onBtnClick=function(d){a.preventDefault(d);
if(this.isOpened){this.hide();}else{this.show();}};c.ext.DropDownMenu.prototype.onBtnMouseOver=function(d){if(!this.isOpened){b.addClass(this.button,"hover");}};c.ext.DropDownMenu.prototype.onBtnMouseOut=function(d){b.removeClass(this.button,"hover");
};c.ext.DropDownMenu.prototype.onMenuClick=function(e,k){this.hide();var g=selector.query("span",k,true);this.button.innerHTML=g.innerHTML;var f=b.get("search-form");if(f){var j=this.options.getData();
if(this.srcId=="currency"){j["currency"]=g.id;j["changeCurrency"]=true;}else{j["lang"]=g.id;j["changeLocale"]=true;}if(b.get("details-tab-input")&&b.get("details-tab-input").value){j["detailsTab"]=b.get("details-tab-input").value;
}var i=b.get("lang-from");var l=b.get("currency-from");var h=j.lang;if(i){h=b.get("lang-from").value;if(this.srcId=="lang"){b.get("lang-from").value=j.lang;}}var o=j.currency;if(l){o=b.get("currency-from").value;
if(this.srcId=="currency"){b.get("currency-from").value=j.currency;}}if((i&&(this.srcId=="lang")&&(h!=g.id))||((l&&this.srcId=="currency")&&(o!=g.id))){var m=appConfig.langCurrencyUrl;
var d="&";if(new String(m).indexOf("?")==-1){m+="?";d="";}if(getPageName()=="results"){m=m.replace("/list?","/"+getSelectedResultsTab()+"?");window.location.href=m+d+jsonToQuery(j)+"&lang-from="+h+"&currency-from="+o+"&subSession="+window.name;
}else{if(getPageName()=="details"){var n="overview";if(History.getQueryStringParameter("detailsTab")){n=History.getQueryStringParameter("detailsTab");}window.location.href=m+d+jsonToQuery(j)+"&lang-from="+h+"&currency-from="+o+"&detailsTab="+n;
}else{if(getPageName()=="landing"){c.application.SearchPage.prototype.getSearchPageFilterData(j);}window.location.href=m+d+jsonToQuery(j)+"&lang-from="+h+"&currency-from="+o;}}return false;
}}a.preventDefault(e);};c.ext.DropDownMenu.prototype.show=function(){if(!this.isOpened){if(this.srcId=="currency"){this.menu.cfg.setProperty("context",[this.buttonId,"tr","br",["windowResize"]]);
this.menu.align("tr","br");}else{if(this.srcId=="lang"){this.menu.cfg.setProperty("context",[this.buttonId,"tl","bl",["windowResize"]]);this.menu.align("tl","bl");}}this.menu.show();
this.isOpened=true;b.addClass(this.button,"selected");}};c.ext.DropDownMenu.prototype.hide=function(){if(this.isOpened){this.menu.hide();this.isOpened=false;b.removeClass(this.button,"selected");
}};})(YAHOO);(function(f){f.namespace("ext");var c=f.util.Dom;var a=f.util.Event;var b=f.util.Element;var e=f.util.Date;var d=f.widget.DateMath;f.ext.Panel=function(h,g,i){this.maskElementId=i;
f.ext.Panel.superclass.constructor.call(this,h,g);};f.lang.extend(f.ext.Panel,f.widget.Panel);f.ext.Panel.prototype.sizeMask=function(){if(this.mask){var i=this.mask;if(c.get(this.maskElementId)){var l=c.getXY(this.maskElementId);
var k=c.getStyle(this.maskElementId,"width");var g=c.getStyle(this.maskElementId,"height");i.style.left=l[0]+"px";i.style.top=l[1]+"px";i.style.width=k;i.style.height=g;}else{var j=c.getViewportWidth(),h=c.getViewportHeight();
if(i.offsetHeight>h){i.style.height=h+"px";}if(i.offsetWidth>j){i.style.width=j+"px";}i.style.height=c.getDocumentHeight()+"px";i.style.width=c.getDocumentWidth()+"px";}}};f.ext.Waiter=function(g){this.options=g;
};f.ext.Waiter.prototype.show=function(){this.isShow=true;if(c.get("virtual-tours-content")){c.addClass("virtual-tours-iframe","hide");c.addClass("virtual-tours-content","details-virtual-tours-no-flash");
}if(!this.panel){this.panel=new f.ext.Panel("wait",{iframe:true,fixedcenter:true,close:false,draggable:false,zIndex:9999,modal:true,visible:false,width:"546px",underlay:"none"});this.panel.setBody('<div class="message-box-container"><p>'+this.options.message+'</p><img alt="'+this.options.preloaderAlt+'" src="'+this.options.preloaderUrl+'" class="message-preloader"></div>');
this.panel.render(document.body);}this.panel.show();};f.ext.Waiter.prototype.hide=function(){var h=this;function g(){if(h.panel&&h.isShow==false){if(h.dontHide&&h.dontHide()==true){f.lang.later(100,window,g);
return;}h.dontHide=undefined;if(c.get("virtual-tours-content")){c.removeClass("virtual-tours-iframe","hide");c.removeClass("virtual-tours-content","details-virtual-tours-no-flash");
}h.panel.hide();}}this.isShow=false;g();};f.ext.Waiter.prototype.dontHideWhile=function(g){this.dontHide=g;};f.ext.DestinationPanel=function(g,h){this.options=g;this.callbacks=h||{};
return this;};f.ext.DestinationPanel.prototype.getSelectedDestination=function(){if(this.dialog){var h=$A(selector.query("div input[type='radio']",this.dialog.element)).any(function(i){return i.checked;
});var g=null;if(h){g=h.parentNode.nextSibling.innerHTML;}return h?[h.value,g]:null;}return null;};f.ext.DestinationPanel.prototype.show=function(h){var g=this;new f.ext.RemoteQuery(this.options.fetchLocationsByDestinationUrl+h.term,{type:"json",process:function(p){var m=g.callbacks.error||function(){};
var j=g.callbacks.search||function(){};var q=g.callbacks.beforeHide||function(){};if(p.error){m(g.options.destinationNotFound);}else{if(p.items&&p.items.length==1){$A(p.items).foreach(function(r){j(r.id,h.term);
});}else{if(p.items&&p.items.length>1){if(!g.dialog){g.dialog=new f.widget.SimpleDialog("destination-overlay",{modal:true,fixedcenter:true,visible:false,close:true});g.dialog.setHeader(g.options.search.destinationOverlay.translationPack.title);
g.dialog.beforeHideEvent.subscribe(q);}var i=new b(document.createElement("div"));var l=new b(document.createElement("p"),{"innerHTML":g.options.search.destinationOverlay.translationPack.radiosCaption});
var n=new b(document.createElement("div"),{className:"description-radios"});i.appendChild(l);i.appendChild(n);$A(p.items).foreach(function(t){var r=new b(document.createElement("fieldset"),{className:"form-row"});
var u=document.createElement("div");u.innerHTML="<input type='radio' name='destination' class='radio' id='"+t.id+"' value='"+t.id+"'>";r.appendChild(u);var s=new b(document.createElement("label"),{"innerHTML":t.name});
c.setAttribute(s,"for",t.id);r.appendChild(s);n.appendChild(r);});g.dialog.setBody(i.get("element"));g.dialog.render(document.body);var o=c.getChildren(n);if(o.length>10){c.setStyle(n,"height","256px");
c.setStyle(n,"overflow","auto");}else{c.setStyle(n,"height","auto");c.setStyle(n,"overflow","visible");}c.setStyle("destination-overlay-btn","display","none");c.setStyle("destination-overlay-btn-disabled","display","inline");
a.on("destination-overlay-btn","click",function(){selected=g.getSelectedDestination();if(selected){j(selected[0],selected[1]);g.dialog.hide();}});var k=c.getElementsByClassName("radio","input","destination-overlay");
a.on(k,"click",function(){c.setStyle("destination-overlay-btn-disabled","display","none");c.setStyle("destination-overlay-btn","display","inline");});g.dialog.show();g.dialog.focusableElements[0].focus();
}else{m(g.options.search.destination.translationPack.promptMessage);}}}}}).get();};f.ext.DestinationPanel.prototype.hide=function(){if(this.dialog){this.dialog.hide();}};f.ext.DatelessPopup=function(r){this.options=r;
this.calendarLocale=this.options.calendarLocale;this.showCancelButton=this.options.showCancelButton;this.config=this.options.config;this.groups=r.groups;this.isOpened=false;if(c.get("dateless-popup-body")){var l=[];
l.push({text:this.config.dateless.translationPack.continueBtn,handler:function(){if(r.canContinue()){r.onFinish();}}});this.popup=new f.widget.SimpleDialog("dateless-popup",{modal:false,fixedcenter:true,visible:false,close:true,draggable:false,buttons:l});
var k=new f.util.KeyListener(document,{keys:27},{fn:this.hide,scope:this,correctScope:true});this.popup.cfg.queueProperty("keylisteners",k);f.util.Event.addListener(document,"click",function(w){var u=f.util.Event.getTarget(w);
var v=this.popup.element;var t;if(w.target){t=w.target.parentNode;while(t.parentNode){t=t.parentNode;}}if(u!=v&&!c.isAncestor(v,u)&&(t.classList==null||!t.classList.contains("yui-calendar"))){this.hide();
}},this,true);this.popup.setBody(c.get("dateless-popup-body"));this.popup.render(document.body);c.setStyle("dateless-popup-body","display","block");if(this.showCancelButton){c.setStyle("dateless-cancel-btn","display","block");
a.on("dateless-cancel-btn","click",r.onCancel);}var q=c.get("dateless-checkin-input");var i=c.get("dateless-checkout-input");if(!q||!i){return;}var m=new Date();m=new Date(m.getFullYear(),m.getMonth(),m.getDate());
var s=e.parseDate(q.value,this.calendarLocale.datePattern);var h=e.parseDate(i.value,this.calendarLocale.datePattern);var p=d.add(m,d.DAY,329);var g=d.add(m,d.DAY,328);q.value=e.formatDate(s);
i.value=e.formatDate(h);if(!s){s=d.add(m,d.DAY,3);h=d.add(s,d.DAY,2);if(h&&d.after(h,p)){h=p;}}var j=new f.ext.Calendar({elementId:"dateless-checkout-input",locale:this.calendarLocale,container:null,translationPack:this.config.search.checkout.translationPack,pages:1,value:h,mindate:d.add(s,d.DAY,1),maxdate:p,checkinDate:s,checkinElementId:"dateless-checkin-input",applyKeyListeners:true,onselect:function(w,t){this.updateRenderers();
this.calendar.show();if(!c.get("dateless-checkin-input").value){var v=new Date(t[0][0][0],t[0][0][1]-1,t[0][0][2]);var u=d.subtract(v,d.DAY,2);if(d.before(u,m)){u=d.subtract(v,d.DAY,1);
}n.selectDate(u);n.updateRenderers();j.setProperty("mindate",d.add(u,d.DAY,1),true);j.checkinDate=u;}j.updateRenderers();}});this.groups.put("datelessPopup","checkout",j);var o=this;
f.lang.augmentObject(j,new f.ext.DateValidationHook("dateless-checkout-input",{datePattern:this.calendarLocale["datePattern"],required:true,errorNode:"dateless-checkin-errors",translations:this.config.search.checkout.translationPack,constraints:function(){var t=e.parseDate(n.get("value"),o.calendarLocale.datePattern)||m;
return{mindate:d.add(m,d.DAY,1),maxdate:p,dateRangeStart:d.add(t,d.DAY,1),dateRangeEnd:d.add(t,d.DAY,29)};}}));var n=new f.ext.Calendar({elementId:"dateless-checkin-input",locale:this.calendarLocale,container:null,translationPack:this.config.search.checkin.translationPack,pages:1,value:s,mindate:m,maxdate:g,checkinDate:null,onselect:function(x,u){this.updateRenderers();
this.calendar.show();var t=new Date(u[0][0][0],u[0][0][1]-1,u[0][0][2]);var v=e.parseDate(c.get("dateless-checkout-input").value,this.locale.datePattern);var y=d.add(t,d.DAY,2);var w=false;
if(v&&d.after(d.add(t,d.DAY,1),v)){j.selectDate(y);w=true;}if(w&&d.after(y,p)){j.selectDate(p);}j.setProperty("mindate",d.add(t,d.DAY,1),true);j.checkinDate=t;j.updateRenderers();}});
this.groups.put("datelessPopup","checkin",n);f.lang.augmentObject(n,new f.ext.DateValidationHook("dateless-checkin-input",{datePattern:this.calendarLocale["datePattern"],required:true,errorNode:"dateless-checkin-errors",translations:this.config.search.checkin.translationPack,constraints:function(){return{mindate:m,maxdate:g};
}}));}};f.ext.DatelessPopup.prototype.show=function(){if(this.popup){this.popup.show();this.isOpened=true;var g=c.get("dateless-checkin-input");var h=this.groups.get("datelessPopup","checkout");
var i=this.groups.get("datelessPopup","checkin");h.calendar.show();i.calendar.show();if(g){g.focus();}}};f.ext.DatelessPopup.prototype.hide=function(){if(this.popup){this.popup.hide();
this.isOpened=false;}};})(YAHOO);(function(a){a.namespace("ext");a.ext.RoomsWidget=function(b,c){this.translations=c.translations;};a.ext.RoomsWidget.prototype.childrenCountChange=function(b){if(a.lang.isFunction(b)){b();
}};})(YAHOO);(function(h){h.namespace("application");var d=h.util.Dom;var b=h.util.Event;var c=h.util.UserAction;var g=h.util.Date;var e=h.widget.DateMath;var a=null;var f=null;h.application.pages=h.application.pages||{};
h.application.SearchPage=function(){};h.application.SearchPage.prototype.start=function(m,k,j){m.decorators=m.decorators||{};a=this;this.app=m;this.config=k;m.addDecorator("select-destination",hitch(this,"decorateDestinationWidget"));
m.addDecorator("select-dates",hitch(this,"decorateDatesWidget"));m.addDecorator("pageTitle",hitch(this,"decoratePageTitleWidget"));if(!this.config.print){this.initSearchForm();}this.decorateMoreOptions();
if(j&&j.showMoreOptions){this.toggleMoreOptions();}this.inputDestinationResize();var l=d.get("edit-destination");if(l){this.firstSavedDestination=l.value;}if(getPageName()=="landing"&&(appConfig.invalidTarget||History.getQueryStringParameter("autosearch"))){if(d.get("search-btn")){c.click("search-btn");
}}a.updateMoreOptionsTabListener();if(typeof searchPageBookmarkManager=="undefined"){return;}var i=this;searchPageBookmarkManager.registerBookmarkSaveDelagate(function(o){var n=d.get("edit-destination");
if(n){o["savedDestination"]=n.value;}});searchPageBookmarkManager.registerPreSearchDelegate(function(q){if(q["targetId"]&&d.get("targetId")){d.get("targetId").value=q["targetId"];}if(d.get("edit-destination")){if(q["savedDestination"]){d.get("edit-destination").value=q["savedDestination"];
}else{if(i.firstSavedDestination){d.get("edit-destination").value=i.firstSavedDestination;}}}if(q["filter.sortedBy"]){m.savedSortOrder=q["filter.sortedBy"];}if(q["roomsCount"]){var v=parseInt(q["roomsCount"],10);
if(d.get("roomsCount")){d.get("roomsCount").selectedIndex=v-1;i.roomsCountChangeHandler({target:d.get("roomsCount"),value:v-1,simulated:true});if(v>9){v=9;}for(var r=0;r<v;r++){var o="rooms["+r+"].adultsCount";
var t=document.getElementById("rooms"+r+".adultsCount");if(t&&q[o]){var u=parseInt(q[o],10);t.selectedIndex=u-1;}var s=document.getElementById("rooms"+r+".childrenCount");var z="rooms["+r+"].childrenCount";
if(s&&q[z]){var y=parseInt(q[z],10);if(y&&y>4){y=4;}if(y>0){s.selectedIndex=y;i.onChildrenCountChange({target:s,simulated:true});for(var p=0;p<y;p++){var n=document.getElementById("rooms"+r+".children"+p+".age");
var w="rooms["+r+"].children["+p+"].age";if(n&&q[w]){var x=parseInt(q[w],10);n.selectedIndex=x+1;}}}}}}}});};h.application.SearchPage.prototype.initSearchForm=function(){if(d.get("checkout-form-hidden-panel")){return;
}var i=this.decorateDestinationWidget(true);var l=this.decorateDatesWidget();this.decorateRoomsWidget();if(selector.query("#main-content.group-booking").length>0){this.decorateAdditionalHotels(i,l);
}var k=d.get("search-btn");if(!k){return;}var j=this;if(!d.get("search-details-form")&&k){b.on(k,"click",function(p){b.stopEvent(p);if(!j.app.checkChosenRoom()){return;}if(j.app.validateGroup("search")){if(d.get("disabled-search-btn")){d.setStyle("search-btn","display","none");
d.setStyle("disabled-search-btn","display","inline");}var o=j.app.getFormData(true);h.application.SearchPage.prototype.getSearchPageFilterData(o);var n=Math.random();o["requestKey"]=n;
o["pagename"]="ToSearchResults";var m=j.app.getUpdatedUrl(j.config.searchUrl,o);j.app.setSearchCookies();window.location.href=m+"&asyncSearch=true"+"&linkId=Home:Hot:SrcWiz:Search";
}});}};h.application.SearchPage.prototype.inputDestinationResize=function(p){var n=d.get("edit-destination");if(!n){return;}var v=n.value;if(v){var x=document.createElement("DIV");var k=d.get("destination-title-edit");
d.addClass(x,"destination-source");var q="25px";var o=d.getStyle(n,"font-weight");var m=d.getStyle(n,"font-family");var i=v.replace(/&/g,"").replace(/\s/g," ").replace(/</g,"").replace(/>/g,"");
x.innerHTML=i;d.setStyle(x,"font-size",q);d.setStyle(x,"font-weight",o);d.setStyle(x,"font-family",m);document.body.appendChild(x);var r=4;var s=8;var t=x.offsetWidth;var u=k.offsetWidth-s;
var w;var y=d.get("save-destination").offsetWidth+r;var l=0;if(d.get("destination-reset-id")!=null){l=d.get("destination-reset-id").offsetWidth;}var j=n.offsetWidth;if(((!p)&&((u-y-l)<t))||(p&&((u-y-l)<j))){w=u-y-l;
d.setStyle(n,"width",w+"px");}else{if(!p){w=t;d.setStyle(n,"width",w+"px");}}}};h.application.SearchPage.prototype.decoratePageTitleWidget=function(){if(d.get("pageTitle")){document.title=d.get("pageTitle").innerHTML;
}};h.application.SearchPage.prototype.decorateDestinationWidget=function(J){var j=(getPageName()=="landing");var D=null;var w=null;var I=null;var o=null;var F=null;var H=d.get("targetId");
var m=this.app.getSearchCookies();var y=false;var v=false;var x=false;var z=this;if((History.getQueryStringParameter("targetId")||History.getQueryStringParameter("autosearch"))&&((getPageName()=="landing")||(getPageName()=="results"))&&J){v=true;
}else{if(m["destination"]&&m["targetId"]&&(getPageName()=="landing")){y=true;}}var C=d.get("predefined-destinations");if(C){this.decoratePredefinedDestination();}var M=d.get("destination");
if(M&&M.type!="hidden"){D="destination";w=d.get(D);I="search-btn";}else{if(d.get("edit-destination")){D="edit-destination";I="save-destination";w=d.get(D);var B=w.value;var n=H.value;
this.app.targetId=n;if(!B){y=true;}var G=d.get("destination-title-buttons");var K="destination-reset-id";F=d.get(K);if(!F){F=document.createElement("span");F.id=K;F.setAttribute("title",this.config.search.destination.translationPack.title);
d.addClass(F,"destination-reset");F.innerHTML=this.config.search.destination.translationPack.reset;d.insertAfter(F,G);}b.on(w,"keyup",function(N){if(w.value!=B){d.setStyle(F,"display","block");
this.inputDestinationResize(true);}else{d.setStyle(F,"display","none");this.inputDestinationResize(true);}},this,true);}else{if(C&&M.type=="hidden"){var L=this.getSelectedDestination();
var u=L.value.split("|");var k=z.app.groups.get("search","destination");if(k){var A=(u.length>2)?u[2]:L.value;k.getInputEl().value=A;}var l=d.get("targetId");if(l){var q=L.value.split("|");
l.value=q[0]+"|"+q[1];}return;}else{return;}}}b.on(w,"click",function(N){if(w.value){w.select();w.focus;}b.stopEvent(N);});o=d.get(I);if(appConfig.invalidTarget&&J){d.setAttribute(D,"value","");
}else{if(v){if(History.getQueryStringParameter("destination")){d.setAttribute(D,"value",History.getQueryStringParameter("destination"));d.setAttribute("targetId","value",History.getQueryStringParameter("targetId"));
}}else{if(y){d.setAttribute(D,"value",m["destination"]);d.setAttribute(H,"value",m["targetId"]);}else{showDefaultText(D,this.config.hotel.destinationHint);}}}var A=new h.ext.Autocomplete(D,"destination-autocomplete-div",{url:this.config.search.destination.baseUrl,categories:true});
A.focus();this.app.setFocusWithoutSelecting(D);var p=function(P,O){var Q=P.split("|");H.value=Q[0]+"|"+Q[1];A.autocomplete.getInputEl().value=O;var N=d.get("search-btn");if(N){z.inputDestinationResize();
z.app.setSearchCookies(P,O);N.click();}};if(j){var s=A.autocomplete.getInputEl();A.setValidationHook(new h.ext.AutocompleteValidationHook("destination",{required:true,errorNode:"destination-errors",translations:this.config.search.destination.translationPack,postvalidate:function(N,O){if(appConfig.invalidTarget&&!s.value){N(appConfig.search.destination.translationPack.invalidMessage);
return false;}if(!s.value){if(!z.getSelectedDestination()){N(O);return false;}}else{if(s.value==appConfig.hotel.destinationHint){N(appConfig.search.destination.translationPack.promptMessage);
return false;}if(!z.destinationOverlay){z.destinationOverlay=new h.ext.DestinationPanel(z.config,{error:function(P){N(P);},search:p,beforeHide:function(){A.autocomplete.validate(true);
}});}z.destinationOverlay.show({term:s.value});return false;}return true;}}));}A.autocomplete.setFooter(this.config.search.destination.translationPack.extraSearch);A.autocomplete.itemSelectEvent.subscribe(function(O,N){var P=N[2];
var Q=P.id.split("|");H.value=Q[0]+"|"+Q[1];A.autocomplete.getInputEl().selected=true;A.autocomplete.itemSelectEventFired=true;YAHOO.application.omnitureTrackEvent.fire();setTimeout(function(){A.autocomplete.itemSelectEventFired=false;
},10);});A.autocomplete.textboxKeyEvent.subscribe(function(P,N){var O=z.getSelectedDestination();if(O&&O.checked){O.checked=false;}H.value="";});this.app.groups.put("search","destination",A.autocomplete);
if(!j){var t=function(N){showErrorMessage("invalidTarget",N,"change-destination-errors",true);d.addClass("edit-destination","error");d.setStyle(F,"display","block");};var r=function(){hideErrorMessage("invalidTarget","change-destination-errors");
d.removeClass("edit-destination","error");};var E=function(O,N){B=w.value;n=H.value;d.setStyle(F,"display","none");z.inputDestinationResize();p(O,N);};if(o){b.on(o,"click",function(N){r();
if(H&&H.value==""&&A.autocomplete.getInputEl().value){if(!z.destinationOverlay){z.destinationOverlay=new h.ext.DestinationPanel(z.config,{error:t,search:E});}z.destinationOverlay.show({term:A.autocomplete.getInputEl().value});
}else{if(w&&w.value==""&&F){c.click(F);return;}E(H.value,w.value);}b.stopEvent(N);});}if(F){b.on(F,"click",function(N){r();w.value=B;H.value=n;d.setStyle(F,"display","none");z.inputDestinationResize();
b.stopEvent(N);});}}if(w&&o){var i=new h.util.KeyListener(D,{keys:13},function(P,N,R){if(!A.autocomplete.itemSelectEventFired){var Q=N[1];b.preventDefault(Q);c.click(I);}else{A.autocomplete.itemSelectEventFired=false;
if(j){var O=d.get("checkin");O.focus();}}});i.enable();}return A;};h.application.SearchPage.prototype.getSelectedDestination=function(){return $A(selector.query("input[name=predefinedDestination]")).any(function(i){return i.checked;
});};h.application.SearchPage.prototype.decoratePredefinedDestination=function(){var k=this;b.on("predefined-destinations","click",function(s){var r=b.getTarget(s);if(r.name=="predefinedDestination"){var q=r.value.split("|");
var u=k.app.groups.get("search","destination");if(u){var o=(q.length>2)?q[2]:r.value;u.getInputEl().value=o;}var p=d.get("targetId");if(p){var t=r.value.split("|");p.value=t[0]+"|"+t[1];
}}});var n=this.getSelectedDestination();var l=selector.query("input",d.get("predefined-destinations"));if(n&&d.get("destination")&&d.get("destination").type!="hidden"){n.checked=false;
}if(l){var j=new h.util.KeyListener(l,{keys:13},{fn:this.enterPredefinedDestinations,scope:this,correctScope:true});j.enable();}var i=function(r,p,t){var s=p[1];b.preventDefault(s);
var q=Number(this.id.substr("predefinedDestination".length,this.id.length))+1;var u="predefinedDestination"+q;var o=selector.query("#"+u,this.parentNode.parentNode,true);if(o){o.focus();
}else{k.app.setFocusWithoutSelecting("destination");}};var m=function(r,p,u){var t=p[1];var s=Number(this.id.substr("predefinedDestination".length,this.id.length))-1;var q="predefinedDestination"+s;
var o=selector.query("#"+q,this.parentNode.parentNode,true);if(o){o.focus();b.preventDefault(t);}};if(l){$A(l).foreach(function(o){new h.util.KeyListener(o,{keys:9},{fn:i,scope:o,correctScope:true}).enable();
new h.util.KeyListener(o,{shift:true,keys:9},{fn:m,scope:o,correctScope:true}).enable();});}};h.application.SearchPage.prototype.enterPredefinedDestinations=function(j,i,l){var k=i[1];
b.preventDefault(k);h.util.UserAction.click(k.currentTarget);};h.application.SearchPage.prototype.decorateDatesWidget=function(){var t=2;var s="reset-dates";if(d.get("search-details-form")){t=1;
s="change-search-link";}var u=d.get("checkin");var G=d.get("checkout");if(!u||!G){return;}if(u.decorated&&G.decorated){return;}var E=new Date();E=new Date(E.getFullYear(),E.getMonth(),E.getDate());
E.setHours(0,0,0,0);var x=g.parseDate(u.value,this.app.calendarLocale.datePattern);var n=g.parseDate(G.value,this.app.calendarLocale.datePattern);var A=e.add(E,e.DAY,329);var l=e.add(E,e.DAY,328);
u.value=g.formatDate(x);G.value=g.formatDate(n);if(t==1){u.readOnly=true;G.readOnly=true;}var i=(getPageName()=="landing");if((d.get("showExpiredDatesWarning")||History.getQueryStringParameter("dateless"))&&i){d.get("dateless-input").value="true";
d.get("reset-dates").checked="checked";}var r=d.get("dateless-input")?d.get("dateless-input").value=="true":false;if(!r){d.get("dateless-input").value="false";if(d.get("reset-dates")){d.get("reset-dates").checked="";
}}if(!x){x=e.add(E,e.DAY,3);n=e.add(x,e.DAY,2);if(n&&e.after(n,A)){n=A;}}var o=new h.ext.Calendar({elementId:"checkout",locale:this.app.calendarLocale,container:"checkout-container",translationPack:this.config.search.checkout.translationPack,pages:t,value:n,mindate:e.add(x,e.DAY,1),maxdate:A,checkinDate:x,checkinElementId:"checkin",applyKeyListeners:true,nextFocusableElementId:s,onshow:function(){if(D){D.close();
}},onselect:function(K,H){hideWarning();hideError();if(!d.get("checkin").value){var J=new Date(H[0][0][0],H[0][0][1]-1,H[0][0][2]);var I=e.subtract(J,e.DAY,2);if(e.before(I,E)){I=e.subtract(J,e.DAY,1);
}if(e.before(I,E)){I=e.subtract(J,e.DAY,1);}D.selectDate(I);o.setProperty("mindate",e.add(I,e.DAY,1),true);o.checkinDate=I;}this.update();this.close();k();if(d.get("reset-dates")){d.get("reset-dates").checked=false;
}if(d.get("search-content")){d.get("search-btn").click();}}});this.app.groups.put("search","checkout",o);var w=this;h.lang.augmentObject(o,new h.ext.DateValidationHook("checkout",{datePattern:this.app.calendarLocale["datePattern"],skip:r,required:true,errorNode:"checkin-errors",translations:this.config.search.checkout.translationPack,constraints:function(){var H=g.parseDate(D.get("value"),w.app.calendarLocale.datePattern)||E;
return{mindate:e.add(E,e.DAY,1),maxdate:A,dateRangeStart:e.add(H,e.DAY,1),dateRangeEnd:e.add(H,e.DAY,29)};}}));var D=new h.ext.Calendar({elementId:"checkin",locale:this.app.calendarLocale,container:"checkin-container",translationPack:this.config.search.checkin.translationPack,pages:t,value:x,mindate:E,maxdate:l,checkinDate:null,nextFocusableElementId:"checkout",onshow:function(){if(o){o.close();
}},onselect:function(L,I){hideWarning();hideError();var H=new Date(I[0][0][0],I[0][0][1]-1,I[0][0][2]);var J=g.parseDate(d.get("checkout").value,this.locale.datePattern);var M=e.add(H,e.DAY,2);
var K=false;if(!J){J=H;}if(J&&e.after(e.add(H,e.DAY,1),J)){o.selectDate(M);K=true;}if(K&&e.after(M,A)){o.selectDate(A);}o.setProperty("mindate",e.add(H,e.DAY,1),true);o.checkinDate=H;
o.update();if(d.get("checkout").value){if(d.get("reset-dates")){d.get("reset-dates").checked=false;}if(d.get("search-content")){d.get("search-btn").click();}}k();}});this.app.groups.put("search","checkin",D);
h.lang.augmentObject(D,new h.ext.DateValidationHook("checkin",{datePattern:this.app.calendarLocale["datePattern"],skip:r,required:true,errorNode:"checkin-errors",translations:this.config.search.checkin.translationPack,constraints:function(){return{mindate:E,maxdate:l};
}}));if(r){D.selectDate(null);o.selectDate(null);}var m=function(){if(D.validate){D.validate();}if(o.validate){o.validate();}};var F=function(){D.skip=true;D.required=false;o.skip=true;
o.required=false;o.setProperty("mindate",e.add(E,e.DAY,1),true);m();};var k=function(){D.skip=false;D.required=true;o.skip=false;o.required=true;m();};var q=function(){if(D){D.close();
}if(o){o.close();}};var C=d.get("reset-dates");if(C){var p=d.get("checkin-last-value");var z=d.get("checkout-last-value");if(!p||!z){return;}p.value=u.value;z.value=G.value;b.on(C,"click",function(){if(C.checked){p.value=u.value;
u.value="";z.value=G.value;G.value="";F();q();}else{u.value=p.value;G.value=z.value;k();}D.elementChange();o.elementChange();o.checkinElementChange();});u.onchange=function(){hideWarning();
hideError();if(!G.value&&!u.value){C.checked="checked";F();q();}else{C.checked="";k();q();}};G.onchange=function(){hideWarning();hideError();if(!G.value&&!u.value){C.checked="checked";
F();q();}else{C.checked="";k();q();}};var v=new h.util.KeyListener(u,{shift:true,keys:9},function(I,H,J){D.close();});v.enable();var j=new h.util.KeyListener(G,{shift:true,keys:9},function(I,H,J){o.close();
});j.enable();var y=new h.util.KeyListener(C,{shift:true,keys:9},function(I,H,K){var J=H[1];G.focus();b.preventDefault(J);});y.enable();var B=new h.util.KeyListener(C,{keys:13},{fn:this.toggleResetDates,scope:this,correctScope:true});
B.enable();}return[D,o];};h.application.SearchPage.prototype.toggleResetDates=function(j,i,l){var k=i[1];b.preventDefault(k);h.util.UserAction.click(k.currentTarget);};h.application.SearchPage.prototype.decorateRoomsWidget=function(){var j=this;
if(!d.get("roomsCount")){return;}this.app.groups.put("search","roomsCount",new h.ext.DropDown("roomsCount"));for(var k=0;k<d.get("roomsCount").value;k++){$A(selector.query("select","room"+k)).foreach(function(i){this.app.groups.put("search",i.id,new h.ext.DropDown(i.id));
},this);$A(selector.query("select","child"+k)).foreach(function(i){this.app.groups.put("search",i.id,new h.ext.DropDown(i.id,new h.ext.SimpleValidationHook(i.id,{required:true,errorNode:"age-errors",translations:{invalidMessage:this.config.search.rooms.invalidMessage},singleError:true})));
},this);}if(d.get("search-content")){if(selector.query(".child").length==0){d.setStyle("label-childs-show","display","none");}}b.on("roomsCount","change",this.roomsCountChangeHandler);
b.on(selector.query("select.select-children-count","rooms-and-guests"),"change",this.onChildrenCountChange);};h.application.SearchPage.prototype.onChildrenCountChange=function(q){var s=d.get("rooms-and-guests");
var m=$A(selector.query("div",s)).filter(function(i){return d.hasClass(i,"room");});if(d.get("search-content")){d.setStyle("label-childs-show","display","block");}var r=b.getTarget(q);
var p=parseInt(r.value,10);var k=/rooms(\d+)\.childrenCount/.exec(r.id);var l=(k.length>0)?k[1]:null;var u=d.get("child"+l);if(p==0){if(u){$A(selector.query("select",u)).foreach(function(i){a.app.groups.remove("search",i.id);
},this);d.remove(u,u.parentElement);}a.updateMoreOptionsTabListener();return;}var t=document.getElementById("room"+l);if(!u){u=a.createChildBlock(parseInt(l,10),p);t.parentNode.appendChild(u);
$A(selector.query("select",u)).foreach(function(i){a.app.groups.put("search",i.id,new h.ext.DropDown(i.id,new h.ext.SimpleValidationHook(i.id,{required:true,singleError:true,errorNode:"age-errors",translations:{invalidMessage:a.app.config.search.rooms.invalidMessage}})));
},a.app);}var j=d.get("child"+l+".ages");var v=$A(selector.query("select",u)).filter(function(i){return d.hasClass(i,"select-age");});if(p>v.length){for(var o=v.length;o<p;o++){var n="rooms"+l+".children"+o+".age";
j.appendChild(a.createAgesSelect({"id":n,"name":"rooms["+l+"].children["+o+"].age","className":"select-age select"}).get("element"));a.app.groups.put("search",n,new h.ext.DropDown(n,new h.ext.SimpleValidationHook(n,{required:true,singleError:true,errorNode:"age-errors",translations:{invalidMessage:a.app.config.search.rooms.invalidMessage}})));
}}else{for(var o=p;o<v.length;o++){a.app.groups.remove("search",v[o].id);d.remove(v[o].parentNode,j);}}a.updateMoreOptionsTabListener();if(!q.simulated){b.stopEvent(q);}};h.application.SearchPage.assignTabListener=function(j){};
h.application.SearchPage.prototype.roomsCountChangeHandler=function(q){var k=d.get("rooms-and-guests");var m=$A(selector.query("div",k)).filter(function(i){return d.hasClass(i,"room");
});var p=b.getTarget(q).value;if(p=="maxcount"){return;}var r=Number(p);if(r>appConfig.maxRoomsCount){r=appConfig.maxRoomsCount;}if(r>m.length){var n=d.get("room0");for(var o=m.length;
o<r;o++){var j=a.createRoomBlock(o,n);$A(selector.query(".child",j)).foreach(function(u,t){d.remove(u,j);});$A(selector.query("select",j)).foreach(function(i){a.app.groups.put("search",i.id,new h.ext.DropDown(i.id));
});var s=new Element(document.createElement("div"));(new Element(k)).appendChild(s);s.appendChild(j);b.on(selector.query("select.select-children-count",j),"change",a.onChildrenCountChange);
}}else{for(var o=r;o<m.length;o++){$A(selector.query("select",m[o])).foreach(function(i){a.app.groups.remove("search",i.id);},a.app);var l=d.get("child"+o);if(l){$A(selector.query("select",l)).foreach(function(i){a.app.groups.remove("search",i.id);
},a.app);}d.remove(m[o].parentNode,k);}}a.updateMoreOptionsTabListener();if(!q.simulated){b.stopEvent(q);}};h.application.SearchPage.prototype.createRoomBlock=function(i,l){var m=l.cloneNode(true);
m.innerHTML=l.innerHTML;m.id="room"+i;var j=selector.query(".room-label-value",m);if(j.length>0){j=j[0];j.innerHTML=j.innerHTML.replace(/\d+/,i+1);}var k=selector.query(".room-adults-count select",m);
if(k.length>0){k=k[0];k.id=k.id.replace(/\d+/,i);k.name=k.name.replace(/\d+/,i);k.value=2;}var n=selector.query(".room-children-count select",m);if(n.length>0){n=n[0];n.id=n.id.replace(/\d+/,i);
n.name=n.name.replace(/\d+/,i);n.value=0;}return m;};h.application.SearchPage.prototype.createChildBlock=function(j,n){var q=new Element(document.createElement("div"),{"id":"child"+j,"className":"child"});
var l=new Element(document.createElement("fieldset"),{"className":"room-details"});var o=new Element(document.createElement("fieldset"),{"className":"room-children-age"});o.appendChild(new Element(document.createElement("label"),{"innerHTML":this.config.search.rooms.age}));
var p=new Element(document.createElement("fieldset"),{"id":"child"+j+".ages"});o.appendChild(p);for(var m=0;m<n;m++){var k="rooms"+j+".children"+m+".age";p.appendChild(this.createAgesSelect({"id":k,"name":"rooms["+j+"].children["+m+"].age","className":"select-age select"}));
}l.appendChild(o);q.appendChild(l);return q.get("element");};h.application.SearchPage.prototype.createAgesSelect=function(l){var k=new Element(document.createElement("div"),{"className":"select child-age"});
var o=new Element(document.createElement("select"),l);var j=d.get("max-child-age");if(j){j=parseInt(j.value,10);o.appendChild(new Element(document.createElement("option"),{"selected":"selected","value":"","innerText":"?","innerHTML":"?"}));
for(var m=0;m<=j;m++){var p=(m==0)?"<1":m;var n=new Element(document.createElement("option"),{"value":m,"innerText":p,"innerHTML":p});o.appendChild(n);}}k.appendChild(o);return k;};
h.application.SearchPage.prototype.decorateMoreOptions=function(){var k="link-more-options";var l=d.get(k);if(l){b.on(k,"click",this.toggleMoreOptions,this,true);}var i=d.get("filter.breakfastIncluded");
if(i){var j=new h.util.KeyListener(i,{keys:13},{fn:this.toggleBreakfastIncluded,scope:this,correctScope:true});j.enable();}},h.application.SearchPage.prototype.toggleBreakfastIncluded=function(k,j,m){var l=j[1];
b.preventDefault(l);var i=d.get("filter.breakfastIncluded");if(i){i.checked=!i.checked;}},h.application.SearchPage.prototype.toggleMoreOptions=function(){var i="link-more-options";var j=d.get(i);
if(d.hasClass(i,"hide-more-options")){d.removeClass(i,"hide-more-options");j.innerHTML=this.config.moreOptions.showMoreOptions;d.setStyle("more-options-container","width","230px");d.setStyle("more-options-container","height","24px");
}else{d.addClass(i,"hide-more-options");j.innerHTML=this.config.moreOptions.hideMoreOptions;d.setStyle("more-options-container","width","369px");d.setStyle("more-options-container","height","142px");
}},h.application.SearchPage.prototype.showMoreOptions=function(){var i="link-more-options";var j=d.get(i);if(!d.hasClass(i,"hide-more-options")){d.addClass(i,"hide-more-options");j.innerHTML=a.config.moreOptions.hideMoreOptions;
d.setStyle("more-options-container","width","369px");d.setStyle("more-options-container","height","142px");}},h.application.SearchPage.prototype.getSearchPageFilterData=function(m){if(m.targetId.indexOf("hotels")==-1){var l=d.get("filter.hotelName");
if(l&&l.selectedIndex!=0){m["filter.hotelName"]=(l)[l.selectedIndex].text;}var n=d.get("filter.starRates");if(n&&n.value!=0){var p=n.value;var o=[];for(var k=p;k<=5;k++){o.push(k);}m["filter.starRates"]=o;
}var i=d.get("filter.breakfastIncluded");if(i&&i.checked){m["filter.breakfastIncluded"]=i.checked;}var j=d.get("filter.amenities");if(j&&j.selectedIndex!=0){m["filter.amenities"]=j.value;
}}},h.application.SearchPage.prototype.updateMoreOptionsTabListener=function(){var j=d.get("roomsCount").value;if(j="maxcount"){return;}var l=d.get("rooms"+(j-1)+".childrenCount");var k=l.value;
var i=l;if(k>0){i=d.get("rooms"+(j-1)+".children"+(k-1)+".age");}if(f){f.disable();}f=new h.util.KeyListener(i,{keys:9},{fn:a.showMoreOptions,scope:this,correctScope:true});f.enable();
},h.application.pages["landing"]=new h.application.SearchPage();})(YAHOO);
