Namespace.Manager.Register("AAI11L.Tourico.Globals");Namespace.Manager.Register("AAI11L.Tourico.UI");var ATU=AAI11L.Tourico.UI;AAI11L.Tourico.config={autoSuggest:{asUrl:"http://asop.touricoholidays.com/AutoSuggestsLanding.ashx",asUrlQsConst:"&SubscrID=HotelSuggestDestination&ct=2&rt=1&uec=0&cond=2359364&of=2",locale:"en-GB"},domainName:{hotels:"aahotelsuk.touricoholidays.com",cars:"aacarsuk.touricoholidays.com",transfers:"aatransfersuk.touricoholidays.com",cruises:"aacruiseuk.touricoholidays.com",activities:"aaactivitiesuk.touricoholidays.com"},affID:{hotels:[361,362,363,364,365,366],cars:[535,536,537,538,539,540],activities:[709,710,711,712,713,714],transfers:[883,884,885,886,887,888],cruises:[1057,1058,1059,1060,1061,1062]},sourceModule:0};var dlp=document.location.pathname;try{if(com.aa.i11l.app.acg.resources.lang.text.country=="GB"){if(dlp.indexOf("bookOnline/bookOnline")>-1){AAI11L.Tourico.config.sourceModule=1}}else{if((dlp.indexOf("bookOnline")>-1)||(dlp.indexOf("onlineBuchung")>-1)||(dlp.indexOf("reserverEnLigne")>-1)||(dlp.indexOf("prenotateInLinea")>-1)||(dlp.indexOf("reservarOnline")>-1)){AAI11L.Tourico.config.sourceModule=1}}}catch(err){}AAI11L.Tourico.autoSuggest=function(){var a={};a.request=function(c,e){if((this.prevQu!==e)||(this.prevSenderId!==this.senderId)){var d=c+"?qu="+e+"&lang="+AAI11L.Tourico.config.autoSuggest.locale+AAI11L.Tourico.config.autoSuggest.asUrlQsConst;jQuery.ajax({url:d,success:b,dataType:"script",contentType:"text/plain",type:"get"});this.prevQu=e;this.prevSenderId=this.senderId}};function b(h,c,p){if(typeof GetResultObject!=="function"){return}try{com.aa.i11l.bookingmodule.removeErrorMsg()}catch(l){}jQuery("#errorDiv").hide();if(jQuery("#errorMsg").length==0){jQuery("#errorDiv").append('<span id="errorMsg"></span>')}jQuery("#errorMsg").html("");var g=GetResultObject();var m="";var d="";var n=a.senderId;var k=document.getElementById("autosuggest_out");if(g.Rows.length>0){k.innerHTML="";for(var f=0;f<g.Rows.length;f++){m=g.Rows[f].Cells[1];d=g.Rows[f].Cells[0];if((typeof m=="undefined")||(typeof d=="undefined")){}else{k.innerHTML+='<div class="resultLink" tabindex="-1" rel="'+n+";"+d+";"+m+'">'+g.Rows[f].Cells[1]+"</div>"}}var o=jQuery("#autosuggest_out_cont"),j=document.getElementById(n);jQuery(o).show();k.className="container";jQuery(o).position({my:"left top",at:"left bottom",of:j});jQuery("div.resultLink").bind("mouseover",function(){jQuery(this).addClass("highLight")}).bind("mouseout",function(){jQuery(this).removeClass("highLight")}).click(function(){var e=jQuery(this).attr("rel").split(";");AAI11L.Tourico.Globals.updateSelected(e[0],e[1],e[2])}).blur(function(){AAI11L.Tourico.Globals.hideAutoSuggest()}).keypress(function(i){if((i.keyCode==27)||(i.keyCode==13)){AAI11L.Tourico.Globals.hideAutoSuggest();s}})}else{AAI11L.Tourico.Globals.hideAutoSuggest()}}return a};AAI11L.Tourico.Globals.asInstance=AAI11L.Tourico.autoSuggest();AAI11L.Tourico.Globals.asDoRequest=function(b,a){if(b.length>0){AAI11L.Tourico.Globals.asInstance.senderId=a;AAI11L.Tourico.Globals.asInstance.request(AAI11L.Tourico.config.autoSuggest.asUrl,b)}};AAI11L.Tourico.Globals.updateSelected=function(b,a,c){var d=b+"_hidden";document.getElementById(b).value=c;document.getElementById(d).value=a;AAI11L.Tourico.Globals.asInstance.prevQu=c;AAI11L.Tourico.Globals.asInstance.prevSenderId=b;AAI11L.Tourico.Globals.hideAutoSuggest()};AAI11L.Tourico.Globals.hideAutoSuggest=function(){if(jQuery("div.resultLink:visible").length>0){var a=document.getElementById("autosuggest_out");setTimeout(function(){a.innerHTML="";a=null;jQuery("#autosuggest_out_cont").hide()},100)}};AAI11L.Tourico.UI.one_day=1000*60*60*24;AAI11L.Tourico.UI.initUI=function(){jQuery("#ageDivOuter, .ageDiv, .roomRow").hide();jQuery(".roomLabel").addClass("invisible");jQuery(".roomRow").first().show();jQuery("#hotels").data("oldHeight",jQuery("#hotels").css("height"));jQuery("#aa-hp-module-booking").data("oldHeight",jQuery("#aa-hp-module-booking").css("height"));jQuery("#aa-booking-module").data("oldHeight",jQuery("#aa-booking-module").css("height"));jQuery("#buttons").bind("tabsshow",function(b,a){if(a.panel.id!="hotels"){ATU.setHotelHeight(true);return}else{jQuery("div.advancedOptions").hide();ATU.adjustHotelButton();ATU.setHotelHeight(false);jQuery("#nrOfRooms").val(1).change();jQuery("span.numberOfAdultsHotel select").first().val(1).change();jQuery("span.numberOfChildrenHotel select").first().val(0).change()}})};AAI11L.Tourico.UI.autoSuggestInit=function(){var b=jQuery("#autosuggest_out_cont");if(b.length!=1){return}else{var a=jQuery("input.autoSuggest");a.each(function(g,e){var f=jQuery(e),d=f.attr("rel"),c=e.id,h=c+"_hidden";f.parent().append('<input type="hidden" name="'+d+'" value="" id="'+h+'">');if(AAI11L.registerImeHandler){AAI11L.registerImeHandler(c,function(){var i=document.getElementById(c).value;if(i.length==0){AAI11L.Tourico.Globals.asInstance.senderId=null;AAI11L.Tourico.Globals.asInstance.prevQu=null;AAI11L.Tourico.Globals.hideAutoSuggest()}else{AAI11L.Tourico.Globals.asDoRequest(i,c)}})}});if(AAI11L.registerImeHandler){}else{a.keyup(function(c){if(c.keyCode==27){AAI11L.Tourico.Globals.hideAutoSuggest()}else{if(this.value.length>2){AAI11L.Tourico.Globals.asDoRequest(this.value,this.id)}else{AAI11L.Tourico.Globals.asInstance.senderId=null;AAI11L.Tourico.Globals.asInstance.prevQu=null;AAI11L.Tourico.Globals.hideAutoSuggest()}}})}jQuery(document).click(function(c){if(jQuery(c.originalTarget).hasClass("resultLink")==false){AAI11L.Tourico.Globals.hideAutoSuggest()}});b.css("z-index","9999");jQuery("body").append(b)}};AAI11L.Tourico.UI.setHotelHeight=function(a){if(jQuery.browser.msie&&(parseInt(jQuery.browser.version,10)>=7)){jQuery("#hotels").css("height","1%").css("overflow","auto");jQuery("#aa-booking-module").css("height","1%").css("overflow","auto");jQuery("#aa-hp-module-booking").css("height","1%").css("overflow","auto");jQuery("#hotels").css("height","auto").css("overflow","visible");jQuery("#aa-booking-module").css("height","auto").css("overflow","visible");jQuery("#aa-hp-module-booking").css("height","auto").css("overflow","visible")}return false};AAI11L.Tourico.UI.handleDates=function(){jQuery("#date1Local_hotel, #date2Local_hotel").change(function(){var e=ATU.getDate("date2Local_hotel"),d=null,c=ATU.getDate("date1Local_hotel"),b=ATU.one_day;if((c==0)||(e==0)){return false}jQuery("#nrnights").val("");if(c<e){d=Math.ceil((e.getTime()-c.getTime())/(b));jQuery("#nrnights").val(d)}});var a=function(){var g=jQuery("#nrnights"),d=g.val().trim(),f=/\d/gi,e=parseInt(((d.match(f)||[]).join("").trim()),10),c=ATU.getDate("date1Local_hotel"),b=ATU.one_day;if((c==0)||(e==0)||(isNaN(e))){return false}g.val(e);var h=new Date(c.getTime()+(b*e));jQuery("#date2Local_hotel").datepicker("setDate",h).removeClass("placeholder")};jQuery("#nrnights").change(a);jQuery("#date1Local_hotel").change(a);jQuery("div.guestsDiv").not("#r1guests").hide()};AAI11L.Tourico.UI.setRoomLabelGap=function(){var a=jQuery("span.numberOfAdultsHotel");a.width(jQuery("#numberOfAdultsHotelLabel").width());var b=a.width()-jQuery("select",a[0]).width();jQuery("#numberOfAdultsHotelLabelSpace").width(b);jQuery("span.roomLabel").width(b).css("overflow","hidden")};AAI11L.Tourico.UI.handleRooms=function(){jQuery("#nrOfRooms").change(function(){var e=jQuery("#nrOfRooms").val(),d=jQuery("span.roomLabel").addClass("invisible"),a=jQuery("div.roomRow").hide();for(var b=0;b<a.length;b++){if(b<e){jQuery(d[b]).removeClass("invisible");jQuery(a[b]).show()}else{jQuery(d[b]).addClass("invisible");jQuery(a[b]).hide()}}if(e==1){jQuery(d).addClass("invisible")}jQuery(d).css("width","auto");jQuery(d).css("overflow","auto");jQuery("span.numberOfAdultsHotel").width(jQuery("#numberOfAdultsHotelLabel").width());jQuery("#numberOfAdultsHotelLabelSpace").width(jQuery(d).width());var c=jQuery("div.roomRow:hidden");jQuery("select",c).each(function(f,g){var h=jQuery(g);if(h.val()>0){h.val(0).change()}});ATU.setHotelHeight((e<2)&&(jQuery("span.numberOfChildrenHotel select").first().val()==0));ATU.adjustHotelButton()});jQuery("span.numberOfChildrenHotel select").change(function(){var a=jQuery(this),e=a.val(),g=(this.name.match(/r(\d)c/)[1])-1,d=jQuery(jQuery("div.ageDiv")[g]),f=jQuery("div.ageOfChildren",d).addClass("invisible"),c=jQuery("div.ageRoomLabel",d);if(e>0){c.removeClass("invisible");for(var b=0;b<e;b++){jQuery(f[b]).removeClass("invisible")}d.show();jQuery("#ageDivOuter").show()}else{c.addClass("invisible");d.hide()}jQuery("select:hidden",d).val(0);if(jQuery("div.ageDiv:visible").length==0){jQuery("#ageDivOuter").hide()}ATU.setHotelHeight(((jQuery("#nrOfRooms").val()<2)&&(e<1)));ATU.adjustHotelButton()})};AAI11L.Tourico.UI.adjustHotelButton=function(){var g=jQuery("#srcBtnHotelOuter"),a=(jQuery("div.advancedOptions:visible").length>0),f=jQuery("#roomsOuter").parent().height(),b=1,d=93,c=36,e=12;if(jQuery.browser.msie){if(parseInt(jQuery.browser.version,10)>7){d=90;e=12}else{if(parseInt(jQuery.browser.version,10)==7){d=97}}if(parseInt(jQuery.browser.version,10)<7){d=93}}if(a){ATU.setHotelHeight(false);if(jQuery.browser.msie){if(parseInt(jQuery.browser.version,10)>7){e=9}else{if(parseInt(jQuery.browser.version,10)<8){e=10}}}b=1}else{b=d;if(f>c){b=d-(f-c)}if(b<1){b=1}}g.css("padding-top",b+"px").css("top",e+"px")};AAI11L.Tourico.UI.findHotels=function(){jQuery("#srcBtnHotel").click(function(){var j=jQuery("#hotelForm"),d=j[0],g=d.elements.dst.value,a=d.elements.hn.value,f=d.elements.brnd.value,h=d.elements.str.value,k=ATU.getDate("date1Local_hotel"),i=ATU.getDate("date2Local_hotel"),c,e;if(k==0){c="01/01/0001"}else{c=(k.getMonth()+1)+"/"+k.getDate()+"/"+k.getFullYear()}if(i==0){e="01/01/0001"}else{e=(i.getMonth()+1)+"/"+i.getDate()+"/"+i.getFullYear()}if(d.elements.dst.value==""){g=encodeURIComponent(d.elements.dst_display.value)}var b="http://"+AAI11L.Tourico.config.domainName.hotels+"/PageAffiliateLanding.aspx?st=2&afId="+AAI11L.Tourico.config.affID.hotels[AAI11L.Tourico.config.sourceModule]+"&mod=2&dst="+g+"&hn="+a+"&brnd="+f+"&str="+h+"&cin="+c+"&cout="+e;jQuery("div.roomRow:visible select").each(function(){if(this.value>0){b+="&"+this.name+"="+this.value;if(this.name.indexOf("c")>-1){var l=[];jQuery(d.elements[this.name+"a"]).each(function(){if(jQuery(this).parent().hasClass("invisible")===false){l.push(this.value)}});b+="&"+this.name+"a="+l.join(",")}}});ATU.validateParams(b,AAI11L.Tourico.config.domainName.hotels);return false})};AAI11L.Tourico.UI.findCars=function(){jQuery("#srcBtnCars").click(function(){var i=jQuery("#carsForm"),c=i[0],h=(c.elements.carsFromId.value),f=(c.elements.carsToId.value),k=(c.elements.carsFromTime.value),j=(c.elements.carsToTime.value),d=(c.elements.ltype.value),l=ATU.getDate("date1Local_cars"),g=ATU.getDate("date2Local_cars"),b,e;if(l==0){b="01/01/0001"}else{b=(l.getMonth()+1)+"/"+l.getDate()+"/"+l.getFullYear()}if(g==0){e="01/01/0001"}else{e=(g.getMonth()+1)+"/"+g.getDate()+"/"+g.getFullYear()}if(c.elements.carsFromId.value==""){h=encodeURIComponent(c.elements.carsFrom.value)}if(c.elements.carsToId.value==""){f=h}var a="http://"+AAI11L.Tourico.config.domainName.cars+"/PageAffiliateLanding.aspx?st=3&afId="+AAI11L.Tourico.config.affID.cars[AAI11L.Tourico.config.sourceModule]+"&mod=2&frm="+h+"&afto="+f+"&dept="+k+"&rett="+j+"&dep="+b+"&ret="+e+"&ltype="+d;ATU.validateParams(a,AAI11L.Tourico.config.domainName.cars);return false})};AAI11L.Tourico.UI.findActivities=function(){jQuery("#srcBtnActivities").click(function(){var e=jQuery("#activitiesForm"),f=e[0],h=(f.elements.activitiesFromId.value),b=ATU.getDate("date1Local_act"),g=ATU.getDate("date2Local_act"),a,d;if(b==0){a="01/01/0001"}else{a=(b.getMonth()+1)+"/"+b.getDate()+"/"+b.getFullYear()}if(g==0){d="01/01/0001"}else{d=(g.getMonth()+1)+"/"+g.getDate()+"/"+g.getFullYear()}if(f.elements.activitiesFromId.value==""){h=encodeURIComponent(f.elements.activitiesFrom.value)}var c="http://"+AAI11L.Tourico.config.domainName.activities+"/PageAffiliateLanding.aspx?st=10&mod=10&afId="+AAI11L.Tourico.config.affID.activities[AAI11L.Tourico.config.sourceModule]+"&dst="+h+"&cin="+a+"&cout="+d;if(jQuery("#allActivities")[0].checked){c+="&cat=0"}else{c+="&cat=";jQuery("#activityType input").each(function(){if((this.checked)&&(this.value!=0)){c+=";"+this.value}});c=c.replace(/cat=;/,"cat=")}ATU.validateParams(c,AAI11L.Tourico.config.domainName.activities);return false})};AAI11L.Tourico.UI.findCruises=function(){jQuery("#srcBtnCruises").click(function(){var j=jQuery("#cruisesForm"),c=j[0],h=(c.elements.dst.value),i=c.elements.dep.value,e=(c.elements.len.value),b=(c.elements.crl.value),g=(c.elements.prt.value),d=(c.elements.shpid.value),f=(c.elements.strr.value),a="http://"+AAI11L.Tourico.config.domainName.cruises+"/PageAffiliateLanding.aspx?st=4&mod=2&afId="+AAI11L.Tourico.config.affID.cruises[AAI11L.Tourico.config.sourceModule]+"&dst="+h+"&dep="+i+"&len="+e+"&crl="+b+"&prt="+g+"&strr="+f+"&shpid="+d+"&scf=1&ipr=0&rpr=0&usst=0&spr=0&mpr=0&mrkt=US";ATU.validateParams(a,AAI11L.Tourico.config.domainName.cruises);return false})};AAI11L.Tourico.UI.validateParams=function(b,d){var c=b.replace(/http(.*)aspx/,"http://"+d+"/Handlers/SearchParamsInitHandler.ashx");function a(j,g,r){var k=[],p=[];try{com.aa.i11l.bookingmodule.removeErrorMsg()}catch(n){}var t=GetJSON();if(typeof t=="object"){if(t.Result.ValidationResults.IsValid){window.location=b;return false}else{var l="",o=t.Result.ValidationResults.Errors,q=o.length,h=0,f=0,m=0;for(h=0;h<q;h++){if(o[h].ErrorType=="Dest_MoreThanOne"){f++}else{m++;if(typeof o[h].ErrorContent!="string"){o[h].ErrorContent="Invalid input"}k.push(o[h].Anchor);p.push(o[h].Anchor+": "+o[h].ErrorContent)}}if(f===q){window.location=b;return false}if(p.length>0){try{com.aa.i11l.bookingmodule.apiErrOut(p,k,"ancillary")}catch(n){}return false}}}}jQuery.ajax({url:c,dataType:"script",success:a,contentType:"text/plain",type:"get"})};AAI11L.Tourico.UI.allActivities=function(){jQuery("#activityType input:checkbox").click(function(){if(this.id=="allActivities"){var a=this.checked;jQuery("#activityType input:checkbox").attr("checked",a)}else{if(this.checked===false){document.getElementById("allActivities").checked=false}}})};AAI11L.Tourico.UI.cruiseDates=function(g){if(jQuery("#cruiseDepartures").length==0){return}var a=new Date(),c=a.getMonth(),d=a.getFullYear(),k=a.getTime(),m=0,b=0,f=jQuery("#cruiseDepartures").children(),l="",j="",h=0;if(typeof g=="undefined"){var g="en-GB"}for(var e=0;e<24;e++){l="",j="";m=c+e;b=d;if(m/12>=1){h=parseInt(m/12,10);m=m-(h*12);b=d+h}l=jQuery.datepicker.regional[g].monthNames[m];j=((m<9)?"0":"")+(m+1);f[e+1].text=l+" "+b;f[e+1].value=j+"/"+b}};AAI11L.Tourico.UI.getDate=function(a){if(jQuery("#"+a).val()==jQuery("#"+a).data("placeholderValue")){return 0}else{return jQuery("#"+a).datepicker("getDate")}};AAI11L.Tourico.UI.toggleAdv=function(){var a=jQuery("#toggleAdv"),b=jQuery("div.advancedOptions");b.toggle();ATU.adjustHotelButton();ATU.setHotelHeight(false);return false};AAI11L.Tourico.UI.initHotel=function(){ATU.handleRooms();ATU.findHotels();jQuery("#toggleAdv").click(ATU.toggleAdv);try{com.aa.i11l.bookingmodule.activateWithEnter("#toggleAdv")}catch(a){}jQuery("#nrOfRooms").val(1).change();jQuery("span.numberOfAdultsHotel select").first().val(1).change();jQuery("span.numberOfChildrenHotel select").first().val(0).change();ATU.setHotelHeight(false);if(jQuery.browser.safari){jQuery("#modifyTooltipBtn").css("width","auto");jQuery("#srcBtnHotel").css("width","auto");jQuery("#guestDropdowns").css("width","250px")}};jQuery(document).ready(function(){ATU.initUI();ATU.autoSuggestInit();ATU.handleDates();ATU.initHotel();ATU.findCars();ATU.allActivities();if((language=="hu")||(language=="fi")||(language=="nl")||((language=="fr")&&(country=="be"))){localeStr="en-GB"}else{localeStr=langRes.text.datepicker}ATU.cruiseDates(localeStr);ATU.findActivities();ATU.findCruises();if(jQuery.browser.msie){jQuery("div.advancedOptions").hide();ATU.adjustHotelButton();ATU.setHotelHeight(false)}});
