ta.util.Toggle={};ta.util.Toggle.siblings=function(c,b){c.preventDefault();var a=true;if(b.hasClass("closed")){a=false}b.toggleClass("closed");b.getParent().getChildren().each(function(d){if(d!=b){d.setStyle("display",a?"none":"block")}})};ta.util.Toggle.parentClass=function(c,a){c.preventDefault();var b=a.getParent(".toggle");b.toggleClass("off")};ta.util.Toggle.toggleTarget=function(d,b,c){d.preventDefault();var a=true;if($(b).hasClass("closed")){a=false}$(b).toggleClass("closed");$(c).setStyle("display",a?"none":"block")};ta.util.Toggle.toggleForm=function(b,d,c){var a=$(b).getParent(".formToggle");if(/sel_(\w+)/.test(a.className)){var e=RegExp.$1;a.removeClass("sel_"+e);a.getElement(".form_"+e).hide();var f=a.getElement(".header_"+e);if(f){f.hide()}}a.addClass("sel_"+d);var f=a.getElement(".header_"+d);if(f){f.show()}a.getElement(".form_"+d).show();return false};ta.util.Toggle.toggleLI=function(e,d,a){var c=e.getNext();for(var b=0;b<1000&&c&&c.id!=d.id;b++){if(a){c.show()}else{c.hide()}c=c.getNext()}if(a){e.hide()}else{e.show()}if(a){d.show()}else{d.hide()}};ta.util.element={};ta.util.element.replaceContent=function(f,e,c){var d=f;var b=e;if(!b.getElement(".progresstab")){var a=c+(c.indexOf("?")==-1?"?":"&")+"xhr=true";var g=new Element("div",{"class":"progresstab"});(new Asset.image(CDNHOST+"/img2/generic/site/loop.gif")).injectInside(g);g.injectInside(b);new Ajax(a,{onComplete:function(h,i){b.empty();b.innerHTML=h;if(window.behavior){window.behavior.apply(b)}b.fireEvent("onContentReplaced",[d,b])},evalScripts:true}).request()}};ta.util.element.spinner=function(b,a){$(a).getParent(".spinnerReplaceable").getChildren().each(function(c){if(c.hasClass("spinner")){c.show()}else{c.hide()}})};ta.util.element.clearDefault=function(b,a){if(a.value==a.defaultValue){a.value=""}};ta.util.LocationHash=Hash.extend({VERSION:"02",load:function(){hash=window.location.hash.replace(/^#/,"");this.parse(hash);this._loaded=true;if(!this.empty()){this.fireEvent("onLoad",this)}return this},save:function(){window.location.hash="#"+this.asString();return this},empty:function(){return this.length==0},parse:function(a){if(a.length<1){return this}ops=a.split(",");version=(/^0\d+$/.test(ops[0]))?parseInt(ops.shift()):false;time=(/^\d+$/.test(ops[0]))?ops.shift():false;if(time&&!version){return this}ops.each(function(b){kv=b.split(":");if(kv.length!=2){return}t=kv[1].charAt(0);v=unescape(kv[1].substring(1));switch(t){case"B":v=(v=="t");break;case"A":v=v.split("|");break;case"S":v=v.replace(/\|/g,",");break;default:break}this.set(kv[0],v)},this);return this},asString:function(){str=this.collect(function(b,a){ret=a+":";switch($type(b)){case"string":ret+="S"+b.replace(/,/g,"|");break;case"array":ret+="A"+b.join("|");break;case"boolean":ret+="B"+(b?"t":"f");break;default:ret+="-"+b;break}return ret}).join(",");return[this.VERSION,new Date().getTime().toString(),str].join(",")},loaded:function(){return this._loaded}});ta.util.LocationHash.implement(new Events);ta._locationHash=new ta.util.LocationHash();ta.queueForLoad(ta._locationHash.load.bind(ta._locationHash),1);ta.util.Saveable=new Class({registerForLocationHash:function(){ta._locationHash.addEvent("onLoad",this.restoreOptions.bind(this,ta._locationHash));if(ta._locationHash.loaded()&&!ta._locationHash.empty()){this.restoreOptions(ta._locationHash)}},saveOptions:function(){ta._locationHash.save()},setOption:function(a,b){ta._locationHash.set(a,b)},removeOption:function(a){ta._locationHash.remove(a)}});ta.widgets.ProgressBar=new Class({options:{overload:20,delay:100,distance:1,speed:1500,text:".text b",bar:".bar .pcnt",limit:100},initialize:function(b,a){this.setOptions(a);this.ctnr=b;this.text=this.ctnr.getElement(this.options.text);this.bar=this.ctnr.getElement(this.options.bar);this.options.limit=this.options.limit*1;this.overload=this.options.overload/100*this.options.limit},start:function(){this.ctnr.show();if(!this.width){this.bar.setStyle("width","auto");this.width=this.bar.getSize().size.x;this.bar.setStyle("width",0)}this.current=0;this.max=this.overload;this.timer=this.tick.periodical(this.options.delay,this);return this},stop:function(){$clear(this.timer);this.ctnr.hide();return this},update:function(a){this.max=Math.min(this.options.limit,a+this.overload);return this},tick:function(){var b=(this.max-this.current)*this.options.distance;this.current+=(b/this.options.speed)*this.options.delay;var a=this.current/this.options.limit;this.text.setContent(Math.round(a*100));this.bar.setStyle("width",Math.round(this.width*a));return this}});ta.widgets.ProgressBar.implement(new Events,new Options);ta.servlet.HACSearch={mapMorphed:function(a,c){var e=$(ta.retrieve("maps.container"));if(a==0){if(!c.thumbnailClickHandler){c.thumbnailClickHandler=c.morph.bind(c,1)}e.onclick=c.thumbnailClickHandler;ta.servlet.HACSearch.hideMapSponsor();ta.store("maps.returnTo",{center:c.mapCenter(),zoom:c.getZoom()});$("RESULT_COUNT").setStyle("display","block");$("RESET_MAP").setStyle("display","none");c._reset();$("MPZM_ERR").hide();ta.store("maps.moved",false)}else{if(a==1){if(!ta.has("maps.suppressHACActionRecord")){ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"open")}ta.util.pending.lock("maps.nearbyStarted",function(){new Ajax(getHACFormURL(),{data:getHACFormData(false).include({nearbyHac:true})}).request()});$("RESULT_COUNT").setStyle("display","none");ta.servlet.HACSearch.showMapSponsor();e.onclick=null;if(ta.has("maps.returnTo")){ta.store("maps.moved",true);var b=ta.remove("maps.returnTo");c._move(b.center.lat(),b.center.lng(),b.zoom);$("RESET_MAP").setStyle("display","block")}var d=$$("#LEFTNAV .toggle");if(d&&d[0]){d[0].addClass("off")}}}},hideMapSponsor:function(){var b=$("MAP_SPONSOR");if(b){var a=b.getElement("input[type=checkbox]");if(a&&a.checked){a.click()}b.hide()}},showMapSponsor:function(){var a=$("MAP_SPONSOR");if(a){a.show()}},showMoreMapSponsor:function(f,d){var b=/sponsor_(\w+)/.exec(d.className)[1];var e=$("SPR_HTLS_RHS");var c=$("SPR_HTL_MORE_"+b);var a=$("SPR_HTL_LESS_"+b);if(e){new Ajax("/ActionRecord?action=sponsor_see_more").request();e.getElements(".list_"+b).each(function(g){g.removeClass("hide")})}if(c&&a){c.hide();a.show()}},showLessMapSponsor:function(f,d){var b=/sponsor_(\w+)/.exec(d.className)[1];var e=$("SPR_HTLS_RHS");var c=$("SPR_HTL_MORE_"+b);var a=$("SPR_HTL_LESS_"+b);if(e){e.getElements(".list_"+b).each(function(g){g.addClass("hide")})}if(c&&a){c.show();a.hide()}},getLoggingName:function(){var a=ta.retrieve("maps.overrideLoggingName");if(a){return a}return"HACMap_"},morphBig:function(c,a){if(c){c.stop()}var b=ta.retrieve("maps.map");if(b){b.morph(1)}},mapMoved:function(a,b){var c=ta.retrieve("maps.map").options.minZoom;if(b<c){return}ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"move");ta.store("filter.map",true);$("RESET_MAP").setStyle("display","block");$("RESET_MAP").setStyle("border-left","1px solid #656565");ta.util.pending.lock("maps.firstMove",function(){var d=$$("#HOTEL_FILTERS fieldset.nearbyCities");if(d){d.show()}});ta.servlet.HACSearch.filtersChanged();ta.servlet.HACSearch.showNearbyCities()},showNearbyCities:function(){var a=$("SIDEBAR");if(a){var b=a.getElement("#nearbyCities");if(b){if(b.hasClass("hidden")){b.removeClass("hidden");ta.maps.Sidebar.openNearbyCities(null,b.getElement("#toggle_nearby_cities"))}}}},isNearbyCitiesHidden:function(){var b=$("SIDEBAR");if(b){var c=b.getElement(".nearbyCities");if(c){if(!c.hasClass("hidden")){return false}}}var a=$("includeNearby");if(a&&a.checked){return false}return true},mapReset:function(){$("RESET_MAP").setStyle("display","none");var b=ta.retrieve("nearbycities.container");$$(b+" fieldset.nearbyCities input[type=checkbox]").each(function(c){if(c.checked){ta.servlet.HACSearch.setCheckSetChecked(c,false);checked=true}});var a=$("unear");if(a){a.value=""}ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"reset");ta.servlet.HACSearch.filtersChanged()},mapZoomed:function(e,a){var f=ta.retrieve("maps.map").options.minZoom;if(a<f){var c=$("MPZM_ERR");if(!c.hasClass("rdy")){$(document.body).adopt(c.addClass("rdy"))}c.setStyles({left:-9999,top:-9999}).show();var d=$(ta.retrieve("maps.container")).getCoordinates();var b=c.getCoordinates();c.setStyles({left:d.left+(d.width-b.width)/2,top:d.top+(d.height-b.height)/2})}else{$("MPZM_ERR").hide()}},filtersChanged:function(b,a){filtersChanged(b,a)},filtersChangedPreventDefault:function(b,a){b.preventDefault();filtersChanged(b,a)},nameFilterChanged:function(a){a.preventDefault();filtersChanged(null,true)},nameFilterReset:function(a){a.preventDefault();var b=$("nameContains");if(b&&b.value&&b.value.length>0){b.value="";filtersChanged(null,true)}},toggleFilter:function(m,a){var f=true;var b=true;if(a.getParent("fieldset.nearbyCities")){var d=$("unear");var g=$("snear");var e=d.value.length>0?d.value.split(","):[];var h=g.value.length>0?g.value.split(","):[];if(a.checked){e.remove(a.id);h.include(a.id)}else{e.include(a.id);h.remove(a.id)}d.value=e.join(",");g.value=h.join(",");ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"nearby");if(a.hasClass("default")){ta.remove("sel.nearby")}else{var c=ta.retrieve("sel.nearby")||[];if(a.checked){c.push(a.id)}else{c.remove(a.id)}ta.store("sel.nearby",c)}b=false}else{var l=a.getParent("fieldset");if(a.hasClass("default")){l.getElements("input[type=checkbox]").each(function(n){if(!n.hasClass("default")){ta.servlet.HACSearch.setCheckSetChecked(n,false)}})}else{var k=l.getElements("input.default");if(k){if(a.checked){k.each(function(n){ta.servlet.HACSearch.setCheckSetChecked(n,false)})}else{if(!l.getElements("input[type=checkbox]").some(function(n){return n.checked})){k.each(function(n){ta.servlet.HACSearch.setCheckSetChecked(n,true)})}}}}if(l.hasClass("neibrhd")){if(a.hasClass("default")){ta.store("sel.neighborhood",[a.id])}else{var i=ta.retrieve("sel.neighborhood")||[];if(a.checked){i.push(a.id)}else{i.remove(a.id)}ta.store("sel.neighborhood",i)}if(window.pageServlet=="LocalMapsRedesign"){ta.remove("maps.keep_filters")}}if(l.hasClass("lockout")){f=false;ta.store("filter.lockout",true)}}if(a.getParent("fieldset.hotelBrand")){var j=brandDup(a);if(j){j.checked=a.checked}}ta.servlet.HACSearch.adjustTopValueState();if(f){ta.util.pending.waitForMore("filters",ta.servlet.HACSearch.filtersChanged,1000,[null,b])}else{ta.servlet.HACSearch.filtersChanged(null,b)}},toggleAllAvailability:function(e,b,d){$("HOTEL_FILTERS").availability.value=b.value;ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"avail");var a=$("minStay");if(a!==null&&a.selectedIndex!==undefined){a.selectedIndex=d}ta.servlet.HACSearch.filtersChanged();$$("input.avail_"+b.value).each(function(f){f.checked=true});var c=b.value=="1"?"0":"1";$$("input.avail_"+c).each(function(f){f.checked=false})},toggleAvailability:function(c,b){$("HOTEL_FILTERS").availability.value=b.value;ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"avail");ta.servlet.HACSearch.filtersChanged();if(/.*_(\d)$/.test(b.id)){var a=$("map_avail_"+RegExp.$1);if(a){a.checked=b.checked}}},toggleAvailabilityAlt:function(b,a){if(/.*_(\d)$/.test(a.id)){$("availability_"+RegExp.$1).click()}},toggleListPhotoView:function(h,c){var g=$("js_LIST_VIEW");var b=$("js_PHOTO_VIEW");var a=g.getProperty("checked");var e=b.getProperty("checked");var d=g.hasClass("current");var f=b.hasClass("current");if((d&&e)||(f&&a)){g.removeClass("current");b.removeClass("current");$(c).addClass("current");filtersChanged()}},updateData:function(){if(ta.has("maps.nearby")){var h=ta.remove("maps.nearby");var c=ta.retrieve("nearbycities.container");$$(c+" fieldset.nearbyCities input[type=checkbox]").each(function(r){var s=h.contains(r.id);ta.servlet.HACSearch.setCheckSetChecked(r,s);updateFilterStyle(r,s)})}var p=$("map_pager");var e=$("pager_top2");if(p){if(e){p=p.getElement("div.pgLinks");if(p){p.innerHTML=e.innerHTML;behavior.apply(p)}}else{p.innerHTML='<div class="pgLinks"></div>'}}var j=$("mapSG");var n=$("BEST_VALUE_FORM");if(j&&n){j.checked=n.sortGroup.checked;j.disabled=n.sortGroup.disabled;j.getParent().getElement("span").innerHTML=n.getElement("label.bv span").innerHTML;if(j.disabled){j.getParent().addClass("disabled")}else{j.getParent().removeClass("disabled")}}var k=$("SORT_FORM");var a=$("mapSortForm");if(k&&a){a.setHTML(k.innerHTML)}var i=$("mapRedesignSG");if(i&&n){var d=i.sortGroup;d.checked=n.sortGroup.checked;d.disabled=n.sortGroup.disabled;var l=i.getElement("span");l.innerHTML=n.getElement("label.bv span").innerHTML;if(i.sortGroup.disabled){l.addClass("disabled")}else{l.removeClass("disabled")}}var b=$("resultsDateBar");var q=$("mapDateBar");if(b&&q){b.getChildren("radio").each(function(s){var r=q.getElement(".avail_"+s.value);if(r){r.checked=s.checked}})}var o=$("LARGE_MAP");if(o){var g=o.getElement(".showing");if(g){var f=$("ACCOM_OVERVIEW");var m=g.getElement("span");if(f){f=f.getElement(".pagination .pgCount");if(f){m.innerHTML=f.innerHTML}else{m.innerHTML="0"}}else{m.innerHTML="0"}}}},updateSponsorAds:function(b,a){new Ajax("/MapAdAjax?fromServlet="+window.pageServlet+"&t="+b+"&sponsor="+a,{method:"get",evalScripts:true,onComplete:function(c,d){var f;if(b=="leader"){var e=$("BODYCON").getElements(".iab_leaBoa");f=e[0];if(!f){f=new Element("div",{"class":"ad iab_leaBoa"});f.injectTop($("BODYCON"))}f.empty()}else{f=$("MAP_SPONSOR")}f.setHTML(c);injectAdsTargeted(f)}}).request()},staticSponsorAd:function(a,c,e,b){var d=[{from:e},{Action:a},{g:window.modelGeoId},{sponsors:b}];new Ajax("/GMapsLocationController",{data:d,update:$(c)}).request()},toggleTypeByValue:function(c,a){if(!["checkbox","radio"].contains(a.type)){return}if(!ta.has("maps.map")){return}var b=ta.retrieve("maps.map");b.showOrHideType(a.checked,a.value)},toggleSponsor:function(f,b){ta.servlet.HACSearch.toggleTypeByValue(f,b);var e=b&&b.getTag()=="input";var a=$("addSponsorshipToggle");if(e){var d=$(b.id.replace("sidebar","thumb"));if(b.checked){ta.store("addSponsorship",1);ta.store("addSponsorshipToggle","turnOn "+b.value);ta.store("addSponsorshipValue",b.value);if(d){d.checked=true}}else{ta.store("addSponsorship",0);ta.store("addSponsorshipToggle","turnOff "+b.value);ta.store("addSponsorshipValue",null);if(d){d.checked=false;$("STMAP_OVERLAYS").empty()}}}ta.servlet.HACSearch.filtersChanged();if(b.checked){ta.servlet.HACSearch.updateSponsorAds("leader",b.value);ta.servlet.HACSearch.staticSponsorAd("hacmapBanner","HACMAP_AD_PARENT","HACSearch",b.value);if(window.pageServlet=="LocalMapsRedesign"){ta.servlet.HACSearch.updateSponsorAds("bottom",b.value)}ta.store("sponsor.active",b.value)}else{var c=$("SPR_HTLS_RHS");if(c){c.empty()}}},toggleThumbSponsor:function(d,a){var c=a&&a.getTag()=="input";if(c){var b=$(a.id.replace("thumb","sidebar"));if(a.checked){ta.servlet.HACSearch.staticSponsorAd("staticmapBanner","STATMAP_AD_PARENT","HACSearch",a.value);b.click()}else{b.click();$("STMAP_OVERLAYS").empty()}}},toggleTopValue:function(b,a){$("BEST_VALUE_FORM").sortGroup.click()},handleIncludeNearbyOnClick:function(b,c){var a=c.getParent("fieldset");var d=a.getElement("select");a.getElements("input[type=checkbox]").extend(a.getElements("select")).each(function(e){if(e!=c){e.disabled=!c.checked}});$("includeNearbyModified").value=true;ta.servlet.HACSearch.toggleFilter(b,c)},handleDistanceOnChange:function(a,b){var c=$("distance");if(c){c.value=b.options[b.selectedIndex].value}ta.servlet.HACSearch.toggleFilter(a,b)},updateCheckedIndices:function(e){if(isNaN(e.value)){return}var a=e.getParent("fieldset").getElement("input.checkedIndices");var d=e.getParent("fieldset").getElement("input.uncheckedIndices");var b=e.checked?d:a;if(b){b.value=b.value.split(",").remove(e.value).remove("").join(",")}var c=e.checked?a:d;if(c){c.value=c.value.split(",").include(e.value).remove("").join(",")}},setCheckSetChecked:function(b,a){if(b){b.checked=a;ta.servlet.HACSearch.updateCheckedIndices(b)}},handleCheckSetOnClick:function(a,b){ta.servlet.HACSearch.updateCheckedIndices(b);ta.servlet.HACSearch.toggleFilter(a,b)},handleCheckSetClickOnCount:function(d,c,e){new Event(d).stop();var a=$(e).getParent("fieldset").getElements("div.chkSet input");for(var b=0;b<a.length;++b){ta.servlet.HACSearch.setCheckSetChecked($(a[b]),$(a[b]).id==e)}ta.servlet.HACSearch.toggleFilter(d,$(e))},doDateSearch:function(c,a){if(ta.servlet.HACSearch.areDateFieldsSet()){$("searchAll").value="false";ta.servlet.HACSearch.filter.update()}ta.servlet.HACSearch.adjustTopValueState();ta.remove("maps.keep_filters");updateResults(true);var b=$("findFlights");if(b&&b.checked){if(ta.popups.FlightSearch){try{ta.popups.FlightSearch.popFlightSearch()}catch(d){}}}},areDateFieldsSet:function(){var a=$("HAC_FORM");var b=false;if(a){a.getElements(".cal input[type=text]").each(function(c){if(c.value==JS_DateFormat){b|=true}})}return !b},showLargeMap:function(b,a){if(b){b.preventDefault()}if(ta.has("sponsor.active")&&(a.getTag()=="a"||a.getTag()=="span"||a.getTag()=="img")){ta.store("sponsor.record_map_open")}$$(".hacMapAdPixelHolder").each(function(c){ta.servlet.HACSearch._downloadTrackPixel(c)});ta.servlet.HACSearch.loadOrShowLargeMap(true);if(typeof autoCloseWindowShade!="undefined"){autoCloseWindowShade()}},_isMapLoaded:function(){return ta.has("maps.map")||ta.has("maps.create_called")},loadOrShowLargeMap:function(d){window.windowShade=false;ta.store("maps.is_open",true);if(ta.retrieve("moveResultSummary")){var a=$("HAC_SMRY");var c=$("LARGE_MAP");if(a&&c){a.injectBefore(c)}}if(d){ta.servlet.HACSearch.filter.update()}if($("SMALL_MAP")){$("SMALL_MAP").setStyle("display","none")}if($("SPR_HTLS_RHS")){$("SPR_HTLS_RHS").setStyle("display","block")}$$(".sponsorTrkHolder").each(function(e){ta.servlet.HACSearch._downloadTrackPixel(e)});var b=$("LARGE_MAP");if(ta.retrieve("maps.is_open")){showTitlePins()}if(!ta.servlet.HACSearch._isMapLoaded()){ta.store("maps.create_called",true);ta.store("maps.landmarks",[]);if(ta.has("sponsor.record_map_open")){ta.remove("sponsor.record_map_open");new Ajax("/ActionRecord?action=sponsor_hacmap_open").request()}if(!ta.has("maps.suppressHACActionRecord")){ta.store("lma",ta.servlet.HACSearch.getLoggingName()+"open")}ta.util.load.LocalSearch();ta.util.pending.waitForFile("createmap","ta-maps.js",function(){ta.store("maps.callback","ta.servlet.HACSearch.createMapCaller");ta.util.load.GMaps();b.setStyle("display","block");ta.servlet.HACSearch.showMapSponsor()})}else{b.setStyle("display","block");ta.servlet.HACSearch.showMapSponsor()}},createMapCaller:function(){ta.store("maps.postcreate",function(f){var c=ta._locationHash;if(c.hasKey("mc")&&c.hasKey("mz")){var e=c.get("mc").split(",");f._move(parseFloat(e[0]),parseFloat(e[1]),parseInt(c.get("mz")));ta.store("maps.moved",true)}var d=ta.retrieve("maps.queuedSidebar");if(d){d.each(function(g){g()})}var b=ta.remove("maps.address_search_deferred");if(b){b()}if(ta.has("maps.actionrecord")){var a=ta.remove("maps.actionrecord");new Ajax(a).request()}});ta.util.pending.waitForFn("mapfactory","ta.maps.Factory.createMap");return},hideLargeMap:function(d,c){$("LARGE_MAP").setStyle("display","none");$("SMALL_MAP").setStyle("display","block");if($("SPR_HTLS_RHS")){$("SPR_HTLS_RHS").setStyle("display","none")}ta.servlet.HACSearch.hideMapSponsor();$$(".thumbPixelHolder").each(function(e){ta.servlet.HACSearch._downloadTrackPixel(e)});$$(".thumbAdPixelHolder").each(function(e){ta.servlet.HACSearch._downloadTrackPixel(e)});if(ta.retrieve("addSponsorship")==1){ta.servlet.HACSearch.staticSponsorAd("staticmapBanner","STATMAP_AD_PARENT","HACSearch",ta.retrieve("addSponsorshipValue"))}ta.remove("maps.is_open");ta.servlet.HACSearch.filter.update();hideTitlePins();if(ta.retrieve("moveResultSummary")){var a=$("HAC_SMRY");var b=$("HAC_RESULTS");if(a&&b){a.injectBefore(b)}}},clearDates:function(c,b){var a=$("searchAll").value;$("searchAll").value=true;if(a=="trueButShow"){ta.servlet.HACSearch.clearDateFields()}else{showUpdatingMessage();updateResults(true)}},clearDateFields:function(){var a=$("checkIn").form;if(a.calendar){a.calendar.clearFields()}ta.servlet.HACSearch.hideClearDates()},restoreDateFields:function(){var a=$("checkIn").form;if(!a.calendar){new ta.overlays.PairedCalendar(a)}a.calendar.updateFields();ta.servlet.HACSearch.showClearDates()},hideClearDates:function(){$$("#HAC_SMRY .smry .hvrIE6").each(function(a){a.setStyle("display","none")});$$("#HAC_DATES .smry .hvrIE6").each(function(a){a.setStyle("display","none")})},showClearDates:function(){$$("#HAC_SMRY .smry .hvrIE6").each(function(a){a.setStyle("display","inline")});$$("#HAC_DATES .smry .hvrIE6").each(function(a){a.setStyle("display","inline")})},showAllTopValue:function(b,a){b.preventDefault();if($("BEST_VALUE_FORM")){$("BEST_VALUE_FORM").sortGroup.checked=true;bestValueChanged()}$("HOTEL_FILTERS").sortOrder.value=$("SORT_FORM").sortOrder.value;ta.servlet.HACSearch.filtersChanged()},adjustTopValueState:function(){var a=ta.remove("topvalue.state");if($defined(a)){if($("BEST_VALUE_FORM")){$("BEST_VALUE_FORM").sortGroup.checked=true;bestValueChanged()}$("HOTEL_FILTERS").sortOrder.value=$("SORT_FORM").sortOrder.value}},tabClicked:function(d,b){if(b.tagName!="H2"){b=b.getParent("H2")}if(b.className.match(/current/)){return}var a=b.className.match(/cat_(\d+)/);var c=b.hasClass("disabled");if(a){d.preventDefault();if(!c){ta.store("sel.category",a[0]);filtersChanged();$(b.getParent()).getElements(".tab").each(function(e){e.removeClass("current")});b.addClass("current")}}},changeOffset:function(b,a,c){new Event(b).preventDefault();ta.store("hacform.data",{o:"a"+c});filtersChanged()},getFilterWaitOverlay:function(){var a=ta.retrieve("filters.waitDialog");if(!a){a=new ta.overlays.CenteredOverlay({style:"mg s1 fatNotice",showCloseButton:false,autoShow:false});a.inner.setHTML("<b>"+JS_UpdatingYourResults+"</b>");ta.store("filters.waitDialog",a)}return a},_getMiniMapAddress:function(){if($("add_location_input_filter")){return $("add_location_input_filter").value}return $("SMALL_MAP_ADDRESS").getFirst().address.value},_setMiniMapAddress:function(a){if($("add_location_input_filter")){if(a!=map_findhotelnear){$("add_location_input_filter").value=a}}$("SMALL_MAP_ADDRESS").getFirst().address.value=a},onMiniMapAddressSubmit:function(e,b){new Event(e).stop();var d=$("SMALL_MAP_ADDRESS").getFirst();var c=d.action;var a=ta.servlet.HACSearch._getMiniMapAddress();if(a!=""&&a!=map_findhotelnear){c+=",bc_address:S"+a}document.location.href=c;return false},_doAddressSearch:function(){var a=ta.servlet.HACSearch._getMiniMapAddress();var b=$("add_location_input");if(b){b.value=a}var c=$("add_location_input_filter");if(c){c.value=a}ta.maps.Sidebar.addLocation();ta.servlet.HACSearch._setMiniMapAddress(map_findhotelnear)},onMiniMapAddressSearch:function(b,a){if(!ta.servlet.HACSearch._isMapLoaded()){ta.store("maps.address_search_deferred",ta.servlet.HACSearch._doAddressSearch)}else{ta.servlet.HACSearch._doAddressSearch()}ta.servlet.HACSearch.showLargeMap(b,a)},onLargeMapAddressFocus:function(d,b){var a=$("add_location_input");if(a){a.value="";a.removeClass("unfocused")}var c=$("add_location_input_filter");if(c){c.value="";c.removeClass("unfocused")}},onLargeMapAddressBlur:function(d,b){var a=$("add_location_input");if(a&&a.value.length==0){a.value=map_enteraddress;a.addClass("unfocused")}var c=$("add_location_input_filter");if(c&&a.value.length==0){c.value="";c.addClass("unfocused")}},_downloadTrackPixel:function(a){if(a){var c="http://"+a.getText().trim();var b=$(document.createElement("img")).injectInside(a.empty());b.src=c;a.className=""}}};ta.servlet.VRACSearch={homeVRGeoChanged:function(d,e){$("VRAC_FORM").geo.value=e.value;var a=$("vrAlternatives");if(!e.vrpresent){var f=[];f.push('<div class="sorry">');f.push(msg_no_vrs.replace("{0}",e.name));f.push("</div>");if(e.hasHotels){var b=e.hotelUrl;if(!b){b="/Hotels-g"+e.value}f.push('<div class="searchHotels">');f.push('<a href="'+b+'" rel="nofollow">');f.push(msg_search_hotels.replace("{0}",e.name));f.push("</a>");if(e.vralternatives.length==0){f.push("&nbsp;");f.push(msg_try_nearby)}f.push("</div>")}if(e.vralternatives.length>0){f.push('<div class="check">');f.push(msg_check_nearby);f.push("</div>");f.push('<ul class="locations">');var c=e.vralternatives.length;for(var g=0;g<c;g++){var h=e.vralternatives[g];f.push('<li><span class="fkLnk hvrIE6" onclick="ta.servlet.VRACSearch.chooseVracAlternative(\'');f.push(h.name);f.push("','");f.push(h.value);f.push("');\">");f.push(h.name);f.push("</span></li>")}f.push('</ul><ul class="distance">');for(var g=0;g<c;g++){var h=e.vralternatives[g];f.push("<li>");f.push((h.unit=="m"?msg_miles_away:msg_km_away).replace("{0}",h.dist));f.push("</li>")}f.push("</ul>")}var j=a.getElement(".content");j.innerHTML=f.join("");if(window.ie6){j.getElements(".hvrIE6").each(rules["span.hvrIE6"])}ta.servlet.VRACSearch.showVracAlternatives()}else{ta.servlet.VRACSearch.hideVracAlternatives()}},chooseVracAlternative:function(a,b){$("vracGeo").value=a;$("VRAC_FORM").geo.value=b;ta.servlet.VRACSearch.hideVracAlternatives()},showVracAlternatives:function(c,b){var a=$("vrMidForm");if(a){a.style.display="none"}$("vrAlternatives").style.display="block"},hideVracAlternatives:function(c,b){$("vrAlternatives").style.display="none";var a=$("vrMidForm");if(a){a.style.display="block"}},hideVracAlternativesAndClearBox:function(b,a){ta.servlet.VRACSearch.hideVracAlternatives();$("vracGeo").value=""}};ta.servlet.HotelFilter=new Class({initialize:function(){this.registerForLocationHash()},restoreOptions:function(p){var c=$("HOTEL_FILTERS");if(!c){return}var n=$$("fieldset.childGeos")[0];if(n){n.getElements("input[type=checkbox]").each(function(q){ta.servlet.HACSearch.setCheckSetChecked(q,false)})}var b=$("includeNearby");if(b){b.checked=false}if(p.hasKey("cb")){var l=$("DAODAO_LINKBAR");p.get("cb").each(function(x){cb=$(x);if($defined(l)){setSelected(l.getElement("span."+x))}if(!cb||x=="sortGroup"){return}if(cb.disabled){cb.disabled=false;document.getElementById(x+"_count").style.display="inline";$(x+"_lbl").removeClass("disabled")}var u=cb.id.replace(/_.*/,"");if(!cb.hasClass("default")){var r=$(u+"_toggle");if(r&&r.hasClass("closed")){r.toggleClass("closed");r.getParent().getChildren().each(function(y){if(y!=r){y.setStyle("display","block")}})}}if(cb.checked){return}ta.servlet.HACSearch.setCheckSetChecked(cb,true);if(!cb.hasClass("default")){var w=$(u+"_default");if(w){ta.servlet.HACSearch.setCheckSetChecked(w.getElement("input"),false)}if(u=="zfb"){var s=$("zfb_i_default");if(s){s.getElement("input").checked=false}var q=$("zfb_a_default");if(q){q.getElement("input").checked=false}}}})}var h=$("distanceSelect");if(b&&h){h.disabled=!b.checked}if(p.hasKey("nearbyGeosChecked")){p.get("nearbyGeosChecked").split(",").each(function(q){if(!isNaN(q)){ta.servlet.HACSearch.setCheckSetChecked($("nearbyGeos_"+q),true)}});c.nearbyGeosChecked.value=p.get("nearbyGeosChecked")}if(p.hasKey("nearbyGeosUnchecked")){p.get("nearbyGeosUnchecked").split(",").each(function(q){if(!isNaN(q)){ta.servlet.HACSearch.setCheckSetChecked($("nearbyGeos_"+q),false)}});c.nearbyGeosUnchecked.value=p.get("nearbyGeosUnchecked")}sliderMap={l1price:"priceSelect",l1rating:"ratingSelect",sleeps:"sleepsSelect",bedrooms:"bedroomsSelect",bathroomsAlt:"bathroomsAltSelect"};var l=$("DAODAO_LINKBAR");for(op in sliderMap){if(p.hasKey(op)&&p.get(op)!=$(op).value){if($defined(l)){var a=l.getElement("span."+op+p.get(op).replace(",","-").replace(".",""));if($defined(a)){setSelected(a)}else{if(op=="l1price"){setCustomPrice(p.get(op).split(","))}}}var d=$(sliderMap[op]);if(d.slider){d.slider.setKnobs(p.get(op))}if(op=="l1price"){var i=p.get(op).split(",");if(i.length==2){ta.store("hacform.slider.price.min",i[0]);ta.store("hacform.slider.price.max",i[1])}}}}if(p.hasKey("pricePeriod")){$("pricePeriod_"+p.get("pricePeriod")).checked=true}if(p.hasKey("availability")){var m=p.get("availability");var j=$("availability_"+m);if(j){j.checked=true}else{var g=$("mapDateBar");if(g){g.getElement(".avail_"+m).checked=true}var k=$("resultsDateBar");if(k){k.getElement(".avail_"+m).checked=true}}}if(p.hasKey("o")){ta.store("hac.filterOffset",parseInt(p.get("o")))}if(p.hasKey("nameContains")){$("nameContains").value=p.get("nameContains");if($defined(l)&&$("ddnameContains")!=null){$("ddnameContains").value=p.get("nameContains")}}if(p.hasKey("bathrooms")){$("bathrooms").selectedIndex=p.get("bathrooms")}if(p.hasKey("minStay")){$("minStay").selectedIndex=p.get("minStay")}if(p.hasKey("distance")){$("distance").value=p.get("distance")}if(p.hasKey("includeNearbyModified")){$("includeNearbyModified").value=p.get("includeNearbyModified")}["bathrooms","distanceSelect","minStay"].each(function(u){if(p.hasKey(u)){var s=p.get(u);var r=$(u);var q=r.getElement("option[value="+s+"]");$(u).selectedIndex=q.index}});if(subBrandSelected()){brandsFull()}if(ta.retrieve("redesignEnabled")&&p.hasKey("map")&&p.get("map")==1){ta.servlet.HACSearch.loadOrShowLargeMap(false)}if(p.hasKey("tv")){ta.store("topvalue.state",p.get("tv"))}if(p.hasKey("sa")){var f=$("searchAll");if(f&&f.type=="hidden"){if(p.get("sa")==1){f.value=true;ta.servlet.HACSearch.clearDateFields()}else{if(p.get("sa")==2){f.value="trueButShow";ta.servlet.HACSearch.restoreDateFields()}else{f.value=false}}}}if(p.hasKey("sponsor")&&p.get("sponsor")){var o=$("addSponsorship");if(o){o.checked=true}}if(p.hasKey("tab")){var e=$("VR_CURRENT_TAB");if(e){e.value=p.get("tab")}}filterInProgress=false;ta.servlet.HACSearch.filtersChanged()},update:function(){var a=$("HOTEL_FILTERS");var d=$("HAC_FILTER_CONTROLS");var s=[];var f=false;var j=[];if(a){j.push(a)}if(d){j.push(d)}j.each(function(o){o.getElements("input[type=checkbox]").each(function(z){var A=z.name.indexOf("nearbyGeos")!=-1;if(z.checked&&!z.hasClass("default")&&z.id!="cat_1"&&!A){s.push(z.id);if(z.name.indexOf("childGeos")==-1&&z.name.indexOf("sortGroup")==-1){f=true}}else{if(!z.checked&&(z.name.indexOf("childGeos")!=-1)){f=true}}})});var n=$("SIDEBAR");if(n){var b=n.getElement(".nearbyCities");if(b){b.getElements("input[type=checkbox]").each(function(o){if(o.checked&&!o.hasClass("default")){s.push(o.id);f=true}})}}if(s.length>0){this.setOption("cb",s)}else{this.removeOption("cb")}j.each(function(o){if(o.VR_CURRENT_TAB){this.setOption("tab",o.VR_CURRENT_TAB.value)}if(o.availability&&o.availability.value.length>0&&o.availability.value!="0"){this.setOption("availability",o.availability.value)}if(o.sortOrder&&o.sortOrder.value!="popularity"&&o.sortOrder.value!="popHigh"){this.setOption("sortOrder",o.sortOrder.value)}if(o.l1price&&o.l1price.value!="0,999999"){this.setOption("l1price",o.l1price.value)}if(o.l1rating&&o.l1rating.value!="1,5"&&o.l1rating.value!="0,999999"){this.setOption("l1rating",o.l1rating.value)}if(o.sleeps){this.setOption("sleeps",o.sleeps.value)}if(o.bedrooms){this.setOption("bedrooms",o.bedrooms.value)}if(o.bathrooms){this.setOption("bathrooms",o.bathrooms.value)}if(o.bathroomsAlt){this.setOption("bathroomsAlt",o.bathroomsAlt.value)}if(o.minStay){this.setOption("minStay",o.minStay.value)}if(o.nameContains){this.setOption("nameContains",escape(o.nameContains.value))}if(o.distance){this.setOption("distance",o.distance.value)}if(o.distanceSelect){this.setOption("distanceSelect",o.distanceSelect.value)}if(o.nearbyGeosChecked){this.setOption("nearbyGeosChecked",o.nearbyGeosChecked.value)}if(o.nearbyGeosUnchecked){this.setOption("nearbyGeosUnchecked",o.nearbyGeosUnchecked.value)}if(o.includeNearbyModified){this.setOption("includeNearbyModified",o.includeNearbyModified.value)}},this);var k=$("pricePeriod_d");if(k){this.setOption("pricePeriod",(k.checked?"d":"w"))}var w=d?d:a;if(!f){[["priceSelect","l1price",w],["ratingSelect","l1rating",a],["sleepsSelect","sleeps",a],["bedroomsSelect","bedrooms",a],["bathroomsAltSelect","bathroomsAlt",a]].each(function(o){var B=$(o[0]);if(!B){return}var z=o[1];var A=o[2];f=f||(A[z].value!="0,999999")})}var y=$("includeNearby");if(y){f=f||y.checked}var e=$("minStay");if(e){f=f||(e.value!=0)}var g=$("bathrooms");if(g){f=f||(g.value!=0)}var c=$("nameContains");if(c){f=f||(c.value&&c.value.length>0)}var i=$("RESULT_COUNT");if(i){var h=i.getElement(".hvrIE6");if(h){h.setStyle("display",f?"inline":"none")}}var q=$$("#LARGE_MAP span.clear");if(q){q.setStyle("display",f?"block":"none")}if(ta.has("redesignEnabled")){var u=$("mapClear");var r=$("hacResultClear");if(u&&r){u.setStyle("display",r.getStyle("display"));if(u.getStyle("display")=="none"){resetMap=$("RESET_MAP");if(resetMap){resetMap.setStyle("border-left","none")}}}}else{if($("VR_MAP2_CLEAR")){$("VR_MAP2_CLEAR").setStyle("display",$("hacResultClear").getStyle("display"))}}if(ta.has("hac.offset")){var p=parseInt(ta.remove("hac.offset"));if(p>0){this.setOption("o",p)}else{this.removeOption("o")}}var m=ta.retrieve("topvalue.state");if(m){this.setOption("tv",m)}else{this.removeOption("tv")}var x=$("searchAll");if(x&&x.type=="hidden"){if(x.value=="true"){this.setOption("sa",1)}else{if(x.value=="trueButShow"){this.setOption("sa",2)}else{this.removeOption("sa")}}}if(ta.retrieve("redesignEnabled")){if(ta.retrieve("maps.is_open")){this.setOption("map",1)}else{this.removeOption("map")}}var l=$("addSponsorship");if(l){this.setOption("sponsor",l.checked)}this.saveOptions()}});ta.servlet.HotelFilter.implement(new ta.util.Saveable);ta.servlet.HACSearch.filter=new ta.servlet.HotelFilter();