qbtb.prototype.settings={qbtbNum:1,qbtbMarket:"UK",dateFormat:"dd-mmm-yyyy",lang:{ajaxError:"Sorry, the server encountered an error when trying to bring back a response. Please try again.",ajaxTimeout:"Sorry, the server took too long to bring back a response. Please try again."},urls:{flight_departureAirports:"/searchbook/airportlist.view?mid=UKIN&lang=en",flight_arrivalAirports:"/searchbook/airportlist.view?mid=UKIN&lang=en",flight_worldAirportCountries:"/searchbook/dispatcher?mid=UKIN&lang=en&prodsel=fs_flights_int",flight_worldAirportList:"/searchbook/airportlist.view?mid=UKIN&lang=en",hotel_worldCityList:"/searchbook/citylist.view?mid=UKIN&lang=en"},autoComplete:{minQueryLength:3,maxResultsDisplayed:100,useShadow:true,useIFrame:true,forceSelection:true,typeAhead:false,allowBrowserAutocomplete:false,queryMatchContains:true},dataSource:{maxCacheEntries:50},openjaw:function(a){$(a+" .world_airport_select").css({visibility:"hidden"});$(a+" h3").addClass("loading");$.ajax({type:"GET",url:qbtb.prototype.settings.urls.flight_worldAirportCountries,dataType:"xml",timeout:qbtb.prototype.airportList.ajaxTimeout,error:function(b,d,c){qbtb.prototype.airportList.ajaxError(b,d,c,a)},success:function(b){var c=$(a+" select");c.empty();$(b).find("item").each(function(){var e=$(this).text();var d=$(this).attr("value");c.append('<option value="'+d+'">'+e+"</option>")});$("#flight_openjaw_list").change(function(){$(a+" h3").addClass("loading");$(a+" .content").empty();var d=this.value;$.ajax({type:"GET",url:qbtb.prototype.settings.urls.flight_worldAirportList+"&code="+encodeURIComponent(d),dataType:"xml",timeout:qbtb.prototype.airportList.ajaxTimeout,error:function(e,g,f){qbtb.prototype.airportList.ajaxError(e,g,f,a)},success:function(e){$(a+" .content").empty();$(e).find("xhtml").each(function(){var f=$(this).text();f=f.replace(/tranAp\(/gi,"return qbtb.prototype.airportList.populate('"+a+"',");$(a+" .content").append(f)});$(a+" h3").removeClass("loading")}})});$(a+" .world_airport_select").css({visibility:"visible"});$(a+" h3").removeClass("loading")}})}};var qbtbUK=new qbtb(".qbtb","#qbtb_flights");qbtbUK.hotelRoomOptions=function(a,b){$(a).change(function(){var d=this.parentNode.parentNode;var c=$(d).children().children(".room_type");c.empty();switch(this.value){case"2":c.append('<option value="A">Any</option>');c.append('<option value="D">Double</option>');c.append('<option value="M">Dorm</option>');c.append('<option value="T">Twin</option>');break;case"3":c.append('<option value="A">Any</option>');c.append('<option value="R">Triple</option>');c.append('<option value="M">Dorm</option>');break;case"4":c.append('<option value="A">Any</option>');c.append('<option value="Q">Quad</option>');c.append('<option value="M">Dorm</option>');break;case"5":c.append('<option value="M">Dorm</option>');break;case"6":c.append('<option value="M">Dorm</option>');break;case"7":c.append('<option value="M">Dorm</option>');break;case"8":c.append('<option value="M">Dorm</option>');break;case"9":c.append('<option value="M">Dorm</option>');break;default:c.append('<option value="A">Any</option>');c.append('<option value="S">Single</option>');c.append('<option value="M">Dorm</option>')}})};qbtbUK.validateFlights=function(){var c=new Array();if(jQuery.trim($("#flight_depart_location").val())==""){c.push("- Enter a departure airport")}if(jQuery.trim($("#flight_arrive_location").val())==""){c.push("- Enter an arrival airport")}if($("#flight_depart_date").val().toLowerCase()==qbtbUK.settings.dateFormat){c.push("- Enter a departure date")}if($("#flight_return_date").val().toLowerCase()==qbtbUK.settings.dateFormat&&$("#flight_one_way:checked").length==0){c.push("- Enter a return date")}if(c.length>0){var b=c.join("\n");var a="Please correct the following:";a=a+"\n\n"+b;return a}else{return true}};qbtbUK.convertFlights=function(e){var c=Date.fromString($(e+" #flight_depart_date").val());var a=Date.fromString($(e+" #flight_return_date").val());var b=$(e+" #flight_num_travellers").val();var g={DDEP_D:$(e+" #flight_depart_location").val(),DDEP:$(e+" #flight_depart_code").val(),DARR_D:$(e+" #flight_arrive_location").val(),DARR:$(e+" #flight_arrive_code").val(),ADEP_D:$(e+" #flight_arrive_location").val(),ADEP:$(e+" #flight_arrive_code").val(),AARR_D:$(e+" #flight_depart_location").val(),AARR:$(e+" #flight_depart_code").val(),DDT:c.asString(),PXNUM:$(e+" #flight_num_travellers").val()};if($(e+" #flight_return_date").is(":disabled")==false){g.RTN="RTN";g.ADT=a.asString()}else{g.RTN=""}for(i=0;i<b;i++){var d=false;var f=false;if($(e+" #flight_traveller_"+(i+1)+"_student:checked").length==1){var d=true}if($(e+" #flight_traveller_"+(i+1)+"_26:checked").length==1){var f=true}switch(i+1){case 1:if(d){g.PX1TP="SD"}else{if(f){g.PX1TP="ZZ"}else{g.PX1TP="AL"}}break;case 2:if(d){g.PX2TP="SD"}else{if(f){g.PX2TP="ZZ"}else{g.PX2TP="AL"}}break;case 3:if(d){g.PX3TP="SD"}else{if(f){g.PX3TP="ZZ"}else{g.PX3TP="AL"}}break;case 4:if(d){g.PX4TP="SD"}else{if(f){g.PX4TP="ZZ"}else{g.PX4TP="AL"}}break}}qbtbUK.createSubmitFields(e,g);$(e).submit()};qbtbUK.validateHotels=function(){var c=new Array();if(jQuery.trim($("#hotel_city").val())==""){c.push("- Enter a city for your hotel")}if($("#hotel_checkin").val().toLowerCase()==qbtbUK.settings.dateFormat){c.push("- Enter a check-in date")}if(c.length>0){var b=c.join("\n");var a="Please correct the following:";a=a+"\n\n"+b;return a}else{return true}};qbtbUK.convertHotels=function(d){var a=$(d+" #hotel_num_rooms").val();var c=Date.fromString($(d+" #hotel_checkin").val());Date.format="dd-mmm-yyyy";c=c.asString();var e={LNKTP:"ACC",prod:"fc_acc",DDT:c,DUR:$(d+" #hotel_num_nights").val(),CTY1:$(d+" #hotel_country").val(),CTY3:$(d+" #hotel_city").val(),ROOMS:a};var b=0;switch(a){case"4":e.OCC4=$(d+" #hotel_num_occupants_4").val();e.RMTP4=$(d+" #hotel_room_type_4").val();b=b+parseInt(e.OCC4);case"3":e.OCC3=$(d+" #hotel_num_occupants_3").val();e.RMTP3=$(d+" #hotel_room_type_3").val();b=b+parseInt(e.OCC3);case"2":e.OCC2=$(d+" #hotel_num_occupants_2").val();e.RMTP2=$(d+" #hotel_room_type_2").val();b=b+parseInt(e.OCC2);case"1":e.OCC1=$(d+" #hotel_num_occupants_1").val();e.RMTP1=$(d+" #hotel_room_type_1").val();b=b+parseInt(e.OCC1)}e.PAX=b;qbtbUK.createSubmitFields(d,e);$(d).submit()};flight_departureAirports=qbtbUK.dataSource.create(qbtbUK.settings.urls.flight_departureAirports);flight_arrivalAirports=qbtbUK.dataSource.create(qbtbUK.settings.urls.flight_arrivalAirports);qbtbUK.autoComplete.create("flight_depart_location","flight_depart_code","flight_depart_suggest",flight_departureAirports);qbtbUK.autoComplete.create("flight_arrive_location","flight_arrive_code","flight_arrive_suggest",flight_arrivalAirports);qbtbUK.floatingWindow("#flight_local_airports","#flight_depart_button",qbtbUK.settings.openjaw,"#flight_depart_location","#flight_depart_code");qbtbUK.floatingWindow("#flight_world_airports","#flight_arrive_button",qbtbUK.airportList.world,"#flight_arrive_location","#flight_arrive_code");qbtbUK.datePicker.link("flight_depart_date","flight_return_date");qbtbUK.datePicker.setStartFromToday("#flight_depart_date",3);qbtbUK.datePicker.setEndFromToday("#flight_depart_date",329);qbtbUK.datePicker.setEndFromToday("#flight_return_date",330);qbtbUK.toggle("#flight_one_way","#flight_return_date");qbtbUK.selectWithOptions("#flight_num_travellers",".qbtb fieldset.travellers div");qbtbUK.validate("#qbtb_flights form","img.search",qbtbUK.validateFlights,qbtbUK.convertFlights);hotel_cityList=qbtbUK.dataSource.create(qbtbUK.settings.urls.hotel_cityList);qbtbUK.datePicker.calcFutureDate("#hotel_checkin","#hotel_num_nights","#hotel_checkout");qbtbUK.datePicker.setStartFromToday("#hotel_checkin",5);qbtbUK.datePicker.setEndFromToday("#hotel_checkin",455);qbtbUK.selectWithOptions("#hotel_num_rooms",".qbtb #qbtb_hotels fieldset.rooms tr.room");qbtbUK.linkSelects("hotel_country","hotel_city",qbtbUK.settings.urls.hotel_worldCityList,"code");qbtbUK.hotelRoomOptions(".qbtb #qbtb_hotels fieldset.rooms select.occupants");qbtbUK.validate("#qbtb_hotels form","img.search",qbtbUK.validateHotels,qbtbUK.convertHotels);

