var winIE6=($j.browser.version.substr(0,3)=="6.0"&&$j.browser.msie)?true:false;var uci=new UserContextInfo();var uciL=uci.getLastLocale();var uciC=uci.getLastCountry();var prevResultSelected="";var LeadTime;var utcDateObj;var tzRegionCode;var tCountryCode;var requireHoverPop=$j("div").hasClass("flightSpecialsConditionsPop");function overWriteBBCookie(d){var f="";var e=$j("span.selected","div#optionsDepCity").html();if(d!=null&&d.length>15&&d!="null"){f="|"+d.substring(15)}d="depCityName="+e+f;document.cookie=bb_cookieName+"="+d}function updateBBFilterSelections(){var d="";var f=[];var e=[];$j("input:checked","#filterTypes").each(function(a){f.push($j(this).attr("id"));e.push($j(this).attr("title"))});d+="depCityName="+$j("span.selected","div#optionsDepCity").html();d+="|sortState="+$j("a.active","#optionsSort").attr("class").split(" active")[0];d+="|sliderState="+$j("div#slideDynValue").html();d+="|sliderPos="+$j("div#slideDynValue").css("left");d+="|saleTypeSelected="+f;d+="|saleTitleSelected="+e;d+="|sliderMinPrice="+$j("span#dynMinValue").html();d+="|sliderMaxPrice="+$j("span#dynMaxValue").html();d+="|filterState="+(($j("#optionsFilters").hasClass("hidden"))?"hidden":"");d+="|activeArrCityCode="+(($j("div").hasClass("showForm"))?$j("#selectDestinationCity").val():"");document.cookie=bb_cookieName+"="+d}function getBBFilterSelections(j){var h=getCookieValue(bb_cookieName);if(h==null){return""}var f=h.split("|");for(var g=0;g<f.length;g++){var k=f[g].split("=");if(k[0]==j){return k[1];break}}}function isRedeMail(){var c=""+window.location;var d=false;if(c.indexOf("saleTypeCode")>0){d=true}return d}function isRss(){var c=""+window.location;var d=false;if(c.indexOf(":rss:")>0){d=true}return d}function isRedrawAllowed(){var f=getCookieValue(bb_cookieName);var g=false;if(f!="null"&&f!=null&&f.length>15){if($j("span.selected","div#optionsDepCity").html()==getBBFilterSelections("depCityName")){g=true}if(g&&($j("span#dynMinValue").html()==getBBFilterSelections("sliderMinPrice"))){g=true}else{g=false}if(g&&($j("span#dynMaxValue").html()==getBBFilterSelections("sliderMaxPrice"))){g=true}else{g=false}if(g&&uciL=="en"){var h=getBBFilterSelections("saleTitleSelected").split(",");for(var e=0;e<h.length;e++){if(h[e]!="Show all"){if(!doesArrayContains(spotSaleText,h[e])){g=false;break}else{g=true}}else{g=true}}}}if(!g){overWriteBBCookie("")}return g}function doesArrayContains(e,f){var h=false;for(var g=0;g<e.length;g++){if(e[g]==f){h=true;break}}return h}function sortBy(f){var d=$j("div.result");var e=$j("#optionsSort");$j("a",e).removeClass("active");switch(f){case"price":d.tsort("span.dynPrice");$j("a.price",e).addClass("active");break;case"city":d.tsort("h3");$j("a.city",e).addClass("active");break;default:d.tsort("span.dynPrice");$j("a.price",e).addClass("active")}redrawRows()}function toggleCheckbox(){if($j(this).attr("id")=="showAll"){if($j("#showAll").attr("checked")){$j("#showAll").attr("checked",true);$j("#typeSale1").removeAttr("checked");$j("#typeSale2").removeAttr("checked");$j("#typeSale3").removeAttr("checked");$j("#typeSale4").removeAttr("checked")}else{$j("#showAll").removeAttr("checked");$j("#typeSale1").attr("checked",true);$j("#typeSale2").attr("checked",true);$j("#typeSale3").attr("checked",true);$j("#typeSale4").attr("checked",true)}}else{if($j("#typeSale1").attr("checked")||$j("#typeSale2").attr("checked")||$j("#typeSale3").attr("checked")||$j("#typeSale4").attr("checked")){$j("#showAll").removeAttr("checked")}else{$j("#showAll").attr("checked",true)}}checkIt();updateBBFilterSelections()}function checkIt(){var b=$j("div.result");$j("div.result").removeClass("typeOK");$j("#filterTypes").find("input:checked").each(function(a){var d=$j(this).attr("id");if($j(this).attr("id")=="showAll"){$j("div.result").addClass("typeOK")}else{$j("div.result").each(function(){if($j(this).find("div").hasClass(d)){$j(this).addClass("typeOK")}})}});redrawRows()}function toggleFilters(f){var d=$j("#optionsFilters");var e=(parseInt($j("#optionsFilter").attr("class"))>154)?parseInt($j("#optionsFilter").attr("class")):156;if(d.hasClass("hidden")||f=="show"){d.removeClass("hidden");$j("#optionsFilter a").removeClass("add").addClass("minus").css("top",e+8)}else{d.addClass("hidden");$j("#optionsFilter a").removeClass("minus").addClass("add").css("top",8)}updateBBFilterSelections()}function slideIt(){var b=parseInt($j("#slideDynValue").html());$j("div.result").each(function(){(b>=parseInt($j(this).find("span.dynPrice").html()))?$j(this).addClass("priceOK"):$j(this).removeClass("priceOK")});redrawRows();updateBBFilterSelections()}function redrawRows(){var b=$j("div.result");b.removeClass("alt").removeClass("OK").hide();b.each(function(){if($j(this).hasClass("priceOK")&&$j(this).hasClass("typeOK")){$j(this).addClass("OK").show()}});$j("div.OK:even").addClass("alt")}function revealPage(){if(window.location.href.indexOf("arrivalAirportCode=")>-1||useCookieCity){toggleBook()}$j("#pageLoader").fadeOut("normal")}function getPrice(g){var h=$sVar.flightPrices.substring(1).split("+");var e=parseInt(h[0]);for(i=0;i<h.length;i++){var f=parseInt(h[i]);if(g=="min"&&f<e){e=f}if(g=="max"&&f>e){e=f}}return e}function toggleBook(){if(prevResultSelected!=""){$j(prevResultSelected).children("div.resultWrap").bind("click",toggleBook)}var j=$j(this).hasClass("resultWrap");if(j){$j("#selectDestinationCity").val($j("span.desCode_string",$j(this)).html())}var k=$j("#selectDestinationCity").val();var m=$j("#result_"+k);var g=$j("span.graphParams",m).html().split(",");if(!m.hasClass("showForm")||k.length>2&&!$j(this).hasClass("detailClose")){prevResultSelected="#result_"+k;if($j("div.dateGraph div",m).html().length<=0){loadGraph(g[0],g[1],g[2],g[3],g[4],g[5],g[6],g[7],g[8],g[9])}var l=$j("span.desName_string",m).html();var h=$j("span.desCountryCode_string",m).html();$j("div.boxOStuff").addClass("hidden");$j("div.result").removeClass("showForm");$j("div.boxOStuff",m).removeClass("hidden");setCalendarObject(h);if(uciL=="en"){setCalendarByDealType(k)}$j("#destinationCity_value").html(l);m.addClass("showForm").children("div.resultWrap").unbind("click").find("div.bookForm").append($j("#resultForm"));if(!j){window.scrollTo(0,m.offset().top-25)}if(requireHoverPop&&j){$j("#flightSpecialsConditionsPop").css("top",$j(this).offset().top-((winIE6)?170:167))}}else{prevResultSelected="";$j("div.boxOStuff").addClass("hidden");$j("div.result").removeClass("showForm");m.children("div.resultWrap").bind("click",toggleBook)}updateBBFilterSelections();return false}$j(document).ready(function(){var y=(isRedeMail()&&saleTypeCode!=null&&saleTypeCode!=""&&saleTypeCode!="undefined");if(useCookieCity&&!(window.location.href.indexOf("arrivalAirportCode=")>-1)){$j("#selectDestinationCity").val(getBBFilterSelections("activeArrCityCode"))}var r=getPrice("min"),n=getPrice("max");$j("#dynMinValue").html(r);$j("#dynMaxValue").html(n);(!y&&isRedrawAllowed())?$j("#slideDynValue").html(getBBFilterSelections("sliderState")):$j("#slideDynValue").html(n);$j("#sliderBar").slider({handle:"#sliderHandle",minValue:r,maxValue:n,stop:slideIt,slide:function(a,b){$j("#slideDynValue").css("left",b.handle.css("left")).html(Math.round(b.value))}});if($j("div").hasClass("customQDropdown")){var s=$j("div.listQDropdown");var w=$j("p.dropDownSelected");var o=$j("div.customQDropdown");o.click(function(){var a=$j(this);s.addClass("hidden");w.removeClass("active");a.children("p").addClass("active");a.children("div").removeClass("hidden")}).hover(function(){$j(document).unbind("click")},function(){$j(document).bind("click",function(){s.addClass("hidden");w.removeClass("active")})})}var v="";var x=42;var t=[$j("div").hasClass("typeSale1"),$j("div").hasClass("typeSale2"),$j("div").hasClass("typeSale3"),$j("div").hasClass("typeSale4"),$j("div").hasClass("typeSale5"),$j("div").hasClass("typeSale6")];t.each(function(d,b){if(d){var a=b+1;var c=$j("div.typeSale"+a+":eq(0)").children("a");v+='<div class="typeSale clearit"><div class="saleImg"><span class="saleLeft">'+c.parent().parent().next().children("div.saleLeft").html()+'</span><a href="'+c.attr("href")+"\" onclick=\"window.open(this.href,'NewWin','width=640,height=490,status=yes,scrollbars=yes,resizable=yes');return false;\"><img src=\""+c.children("img").attr("src")+'" alt="'+c.children("img").attr("alt")+'" /></a></div><label for="typeSale'+a+'"><input type="checkbox" class="chk" title="'+c.children("img").attr("alt")+'" id="typeSale'+a+'" /><strong>'+c.children("img").attr("alt")+"</strong></label></div>";x+=28}});if(v!=""){if(x>154){$j("#filterByPrice").height(x);$j("#filterByType").height(x)}$j("#typeNoSales").hide();$j("#filterShowAll").show().after(v)}$j("input","#filterTypes").click(toggleCheckbox).removeAttr("checked");$j("#showAll").attr("checked",true);$j("#optionsFilter a").click(toggleFilters).parent().addClass(""+x);$j("#optionsSort a").click(function(){sortBy($j(this).attr("class"));updateBBFilterSelections();return false});$j("#retDay").change(updateBookingFormSelection);$j("#depDay").change(updateBookingFormSelection);$j("#retMonthYear").change(updateBookingFormSelection);$j("#depMonthYear").change(updateBookingFormSelection);$j("#depPopupCalendarIcon").click(function(){$j("#depCalendarPage").find("th.month").each(function(a){$j(this).click(function(){$j("#depCalendarPage").find("td.date").each(function(b){$j(this).click(updateBookingFormSelection)})})});$j("#depCalendarPage").find("td.date").each(function(a){$j(this).click(updateBookingFormSelection)})});$j("#retPopupCalendarIcon").click(function(){$j("#retCalendarPage").find("th.month").each(function(a){$j(this).click(function(){$j("#retCalendarPage").find("td.date").each(function(b){$j(this).click(updateBookingFormSelection)})})});$j("#retCalendarPage").find("td.date").each(function(a){$j(this).click(updateBookingFormSelection)})});$j("div.resultWrap").click(toggleBook).hover(function(){if(requireHoverPop){$j("#flightSpecialsConditionsPop").show().css("top",$j(this).offset().top-((winIE6)?170:167))}$j(this).addClass("hover")},function(){if(requireHoverPop){$j("#flightSpecialsConditionsPop").hide()}$j(this).removeClass("hover")});$j("div.detailClose").click(toggleBook);if(y){var p=saleTypeCode.split(",");$j("#showAll").removeAttr("checked");$j("div.result").removeClass("checkOk");$j(p).each(function(b,a){$j("#typeSale"+a).attr("checked",true)});toggleFilters("show")}else{if(isRedrawAllowed()){var u=getBBFilterSelections("sliderPos");var q=getBBFilterSelections("saleTypeSelected");if(getBBFilterSelections("filterState")!="hidden"){toggleFilters("show")}sortBy(getBBFilterSelections("sortState"));$j("#sliderHandle").css("left",u);$j("#slideDynValue").css("left",u);if(q!=null&&q!="undefined"&&q!=""){$j("#showAll").removeAttr("checked");$j.each(q.split(","),function(b,a){$j("#"+a).attr("checked",true)})}}else{sortBy()}}checkIt();slideIt();redrawRows();revealPage();updateBBFilterSelections();if(!$j("#tripTypeR").attr("checked")&&!$j("#tripTypeO").attr("checked")){$j("#tripTypeR").attr("checked",true)}});function loadGraph(travelStartDates,travelEndDates,prices,rangeEndDate,today,currencyCode,currencySymbol,cityName,dealType,targetEl){var travelStartDateArray=travelStartDates.substring(1).split("+");var travelEndDateArray=travelEndDates.substring(1).split("+");var priceArray=prices.substring(1).split("+");var size=priceArray.length;var minPrice=priceArray[0];var maxPrice=priceArray[0];for(var i=0;i<size;i++){if(eval(minPrice)>eval(priceArray[i])){minPrice=priceArray[i]}if(eval(maxPrice)<eval(priceArray[i])){maxPrice=priceArray[i]}}var sortTravelStartDateArray=sortDate(travelStartDateArray);var result1='<?xml version="1.0" encoding="UTF-8"?>';result1=result1+'<range rangeStartDate="'+today+'" rangeEndDate="'+rangeEndDate+'" rangeCurrencyCode="'+currencyCode+'" rangeCurrencySymbol="'+currencySymbol+'" rangeMinPrice="'+minPrice+'" rangeMaxPrice="'+maxPrice+'" rangeCityName="';var result2='" rangeDealType="'+dealType+'" >';var travelStartDateCounter=sortDateByTravelDate(travelStartDateArray);for(var i=0;i<size;i++){var counter=travelStartDateCounter[i];result2=result2+'<deal price="'+priceArray[counter]+'" travelStartDate="'+travelStartDateArray[counter]+'" travelEndDate="'+travelEndDateArray[counter]+'"/>'}result2=result2+"</range>";result1=escape(result1);result2=escape(result2);dealXMLStr="dealXML="+result1+cityName+result2;var flashPath=(uciL=="zh")?"zh_"+uciC:"en";drawGraph("/flash/utils/graphs/dealPrices/graph_"+flashPath+".swf",500,200,"Graph","",targetEl,"",dealXMLStr)}function drawGraph(n,o,l,k,p,m,j,q){detectFlash();if(hasRightVersion&&m){$j("#"+m).html(assemblePortletFlash(n,o,l,"","","",p,j,q))}else{$j("#"+m).html('<div class="flashAlt">'+$sVar.noFlash+"</div>")}}function sortDateByTravelDate(m){var k=new Array(m.length);var j=sortDate(m);for(var g=0;g<j.length;g++){var l=j[g];for(var h=0;h<m.length;h++){if(l==m[h]){k[g]=h;break}}}return k}function sortDate(g){var e=new Array(g.length);for(var h=0;h<g.length;h++){var f=g[h].substring(6,8)+g[h].substring(3,5)+g[h].substring(0,2);e[h]=f}e=e.sort();for(var h=0;h<g.length;h++){var f=e[h].substring(4,6)+"/"+e[h].substring(2,4)+"/"+e[h].substring(0,2);e[h]=f}return e}function sendData(d,f,e){LeadTime=d;utcDateObj=f;tzRegionCode=e}function isTransTasman(c,d){if(c!=null&&d!=null&&((c.toLowerCase()=="au"&&d.toLowerCase()=="nz")||(c.toLowerCase()=="nz"&&d.toLowerCase()=="au"))){return true}return false}function calcOffset(g){var h=new AirportTZDataContainer();var e;if(g!=null&&g!=""){var f=getObjectFromArrayByCode(g,h.getTimeZoneOffsetCodes());if(f!=null){e=(f.timeZoneOffset).substring(0,3);tCountryCode=f.countryCode}}if(e==null){e=10}return e}function setCalendarByDealType(n){var j=document.getElementById("dealsName").value;if(document.getElementById("from")!=null){var o=document.getElementById("from").value}else{var o=null}if(n!=null&&j!=null&&j=="reddealsTo"){var q=calcOffset(n);var k=2;var l=new Date(utcDateObj.getTime()+(3600000*q)+(k*3600000)+3600000);var p=new Date(serverDate.getTime()+(353*24*60*60*1000));p.setHours(23,59,59);var m=[new DateRange(l,p)];departCalendar.setDateRange(m);returnCalendar.setDateRange(m);departCalendar.setDefaultHour(0);returnCalendar.setDefaultHour(0);departCalendar.update(l);returnCalendar.update(l)}else{if(o!=null&&j!=null&&j=="reddealsFrom"){var q=calcOffset(o);var k=LeadTime.LEAD_TIME_DOM;if(k==null){k=0}var l=new Date(utcDateObj.getTime()+(3600000*q)+(k*3600000)+3600000);var p=new Date(serverDate.getTime()+(353*24*60*60*1000));p.setHours(23,59,59);var m=[new DateRange(l,p)];departCalendar.setDateRange(m);returnCalendar.setDateRange(m);departCalendar.setDefaultHour(0);returnCalendar.setDefaultHour(0);departCalendar.update(l);returnCalendar.update(l)}}}function setCalendarObject(H){var I=document.getElementById("fromCountry");var L=document.getElementById("from");if(I&&I!=null){var E=I.value;var D=isTransTasman(E,H);var O=document.getElementsByName("transTasman");var F=document.getElementsByName("intTransTasman");if(D){leadTimeCal=displayLeadTimeTrans;helpURL=tmpHelpURLTrans;if(O&&O!=null){O[0].value=true;F[0].value=true}}else{leadTimeCal=displayLeadTime;helpURL=tmpHelpURL;if(O&&O!=null){O[0].value=false;F[0].value=false}}if(uciL!="en"){var A=document.getElementById("departDateBookingError");var R=document.getElementById("returnDateBookingError")}var S=calcOffset(L.value);var B="LEAD_TIME_"+tzRegionCode+"_"+tCountryCode;var C=LeadTime[B];if(C==null||C==""){C=LeadTime["LEAD_TIME_"+tzRegionCode];if(C==null||C==""){C=0}}if(tCountryCode=="AU"||(tCountryCode=="NZ"&&D)){var Q=new Date(utcDateObj.getTime()+(3600000*S)+leadTimeCal+3600000)}else{var Q=new Date(utcDateObj.getTime()+(3600000*S)+(C*3600000)+3600000)}var y=new Date(serverDate.getTime()+(353*24*60*60*1000));y.setHours(23,59,59);var P=[new DateRange(Q,y)];departCalendar.setDateRange(P);returnCalendar.setDateRange(P);departCalendar.setDefaultHour(0);returnCalendar.setDefaultHour(0);if((document.cookie.indexOf("selectionsGlobal"+tzRegionCode+"="))!=-1){var z=getCookieValue("selectionsGlobal"+tzRegionCode);var x=z.indexOf("DATES:");var G=z.indexOf("TO:");var M=z.substring(x+6,G-1);var J=M.split(",");var K=J[0];var N=J[1];departCalendar.deserialize(K);returnCalendar.deserialize(N)}else{departCalendar.update(Q);returnCalendar.update(Q)}}}var useCookieCity=(getBBFilterSelections("activeArrCityCode")!="undefined"&&getBBFilterSelections("activeArrCityCode")!=""&&getBBFilterSelections("activeArrCityCode")!=null);
