function GetMonthName(n){return["January","February","March","April","May","June","July","August","September","October","November","December"][n-1]}function isYearsEqual(n,t){return n==t}function openSectionByVoyageId(n){if(n){var t=$(".cruise-accordion").find('[data-voyage-id="'+n+'"]')[0];$(t).click();setTimeout(function(){$("html, body").animate({scrollTop:$("#"+n).offset().top-$("#trd-header").height()-$("#cruise-hdr").height()-15},1e3)},1e3)}}var DnPData=new function(){var n=this;n.cruisetcm=null;n.cruisename=null;n.getDatesofTravelCallback=null;n.getSailingDataCompleteCallback=null;n.getDatesofTravel=function(t,i,r,u){n.cruisetcm=t;n.cruisename=i;n.getDatesofTravelCallback=u;DnPCore.dnpDebug("Get Data - Start");SendAjax(workerRootPath+"/Core/DnPCruiseFullInfo",n.getDatesofTravelComplete,n.getDatesofTravelComplete,null,'{ "cruiseId": "'+t+'", "parameters": "'+location.search+'", "offerCode": "'+r+'" }')};n.getDatesofTravelComplete=function(t){if(DnPCore.dnpDebug("Get Data - Complete"),DnPCore.dnpDebug("Process Data - Start"),t!=null){if(t.logList!=null&&t.logList.length>0)for(i=0;i<t.logList.length;i++)console.log("DnPDebug: "+t.logList[i]);n.getDatesofTravelCallback!=null&&n.getDatesofTravelCallback.call(this,t,t.cruiseSoldOutFlag,t.cruiseErrorFlag)}DnPCore.dnpDebug("Process Data - Complete")};n.getSailingData=function(t,i,r,u){n.getSailingDataCompleteCallback=u;DnPCore.dnpDebug("Get Sailing Data - Start");var f={};f.cruiseId=n.cruisetcm;f.cruiseName=n.cruisename;f.sailingKey=t;f.itineraryTcm=r;f.offerCode=i;f.parameters=location.search;SendAjax(workerRootPath+"/Core/DnPSailingDetails",n.getSailingDataComplete,n.getSailingDataComplete,null,JSON.stringify(f))};n.getSailingDataComplete=function(t){if(DnPCore.dnpDebug("Get Sailing Data - Complete"),DnPCore.dnpDebug("Process Sailing Data - Start"),t!=null){if(t.logList!=null&&t.logList.length>0)for(i=0;i<t.logList.length;i++)console.log("DnPDebug: "+t.logList[i]);t.sailingData!=null&&n.getSailingDataCompleteCallback!=null&&n.getSailingDataCompleteCallback.call(this,t.sailingKey,t.sailingData)}DnPCore.dnpDebug("Process Sailing Data - Complete")}},DnPCore;$(document).ready(function(){$("#pricing-page-content .switch-to-classic").click(function(n){typeof n=="undefined"||n===null});$(document).on("click",".table.river-cruises-table > tbody > tr a.tooltip-trigger",function(n){n.stopPropagation()});$("body").on("click",function(){DnPCore.viewModel.showFilterTooltip(!1)});$(window).on("scroll",function(){var n=$(window).scrollTop()+$(window).height(),t=$("#default-results").offset().top+$("#default-results").outerHeight(!0);n>t&&DnPCore.viewModel.loadMoreCruises()})});ko.bindingHandlers.fadeVisible={init:function(n,t){var i=t();$(n).css("visibility","hidden").one(animationEnd,function(){$(n).css({height:0,overflow:"hidden"})})},update:function(n,t){var i=t();if(ko.unwrap(i))$(n).css({visibility:"",height:""}).removeClass("fadeOut").addClass("fadeIn animated").one(animationEnd,function(){$(n).removeClass("fadeIn")});else $(n).addClass("fadeOut").one(animationEnd,function(){$(n).css("height",0)})}};ko.bindingHandlers.tooltip={init:function(n,t){var r=ko.utils.unwrapObservable(t()),i={};ko.utils.extend(i,ko.bindingHandlers.tooltip.options);ko.utils.extend(i,r);$(n).tooltip(i);ko.utils.domNodeDisposal.addDisposeCallback(n,function(){$(n).tooltip("destroy")})},options:{placement:"auto",trigger:"hover focus",html:"true"}};DnPCore=new function(){var n=this;n.viewModel=null;n.isInitializationComplete=!1;n.modalOpenEvent=null;n.waitModalDisplayedFlag=!1;n.dnpDebugBase=Date.now();n.dnpDebug=function(t){var i=(Date.now()-n.dnpDebugBase)/1e3;console.log("DnPDebug: "+i.toFixed(3)+" - "+t)};n.toggleFlag=function(n){n(!n())};n.enableFilter=function(n){n.disabled(!1)};n.disableFilter=function(t,i){i.active(!1);n.updateSelectionArray(t,i);i.disabled(!0)};n.voyageIdFromUrl=getParameter("voyageId");n.updateSelectionArray=function(n,t){t.active()?n.push(t):n.remove(t)};n.clearFilters=function(t){t().forEach(function(n){n.active(!1)});t([]);n.updateLiveAriaBlock(null,null,"All applied filters have been removed.")};n.loadSailingData=function(t,i){t.cruiseSuites().length<1?(n.displayWaitModal(1e3),DnPData.getSailingData(t.sailingKey,t.TacticalCode,t.itineraryTcm,function(r,u){n.GetSailingExpandedDataComplete(t,u);i()})):i()};n.sortCruisesByPriority=function(n){return n.sort(function(n,t){return t.featuredCruisePriority-n.featuredCruisePriority})};n.limitCruises=function(n,t){return n.filter(function(n,i){return i<t})};n.sortCruisesByDate=function(n){return n.sort(function(n,t){return n.cruiseMonthNumber<t.cruiseMonthNumber?-1:n.cruiseMonthNumber===t.cruiseMonthNumber?n.cruiseDayNumber<t.cruiseDayNumber?-1:n.cruiseDayNumber===t.cruiseDayNumber?0:1:1})};n.filterByCruisePriority=function(t,i){var r=n.sortCruisesByPriority(t),u=n.limitCruises(r,i);return n.sortCruisesByDate(u)};n.filterByCruisePriorityPerYear=function(t,i,r){var u=[];return i.forEach(function(i){var f=n.filterByYear(t,i.year);u=u.concat(n.filterByCruisePriority(f,r))}),u};n.filterByMonths=function(n,t){return n.filter(function(n){for(var i=0;i<t.length;i++)if(t[i].monthNumber===n.cruiseMonthNumber&&t[i].year===n.year)return!0;return!1})};n.filterBySuiteTypes=function(n,t){var i=t.map(function(n){return n.value});return n.filter(function(n){for(var t=0;t<n.availableSuiteTypes.length;t++)if(i.indexOf(n.availableSuiteTypes[t])!==-1)return!0;return!1})};n.filterByYear=function(n,t){return n.filter(function(n){return n.year===t})};n.pricesAndDatesViewModel=function(){var t=this;t.cruiseTcm="";t.cruiseName="";t.phoneNumber=ko.observable("");t.cityGateways=[];t.cruises=[];t.yearsWithCruises=[];t.lazyLoadCruises=!0;t.offerCode="EBS";t.cruiseLimitStepSize=10;t.cruiseLimitInitSize=10;t.featuredCruiseLimit=10;t.hasFeaturedCruises=!1;t.featuredYear="";t.hasPreselectDates=!1;t.preselectDefaultYear="";t.defaultYearTab={};t.currentYearTab=ko.observable({});t.filters={calendar:{},suiteTypes:[],featuredCruises:ko.observable(!1),selectedMonths:ko.observableArray([]),selectedSuites:ko.observableArray([]),hideSoldOut:ko.observable(!1)};t.promoCode=ko.observable("_STANDARD");t.showFilterTooltip=ko.observable(!1);t.filteredCruises=ko.observableArray([]);t.cruiseLimit=ko.observable(t.cruiseLimitInitSize);t.selectedCruises=ko.observableArray([]);t.hasSelectedCruise=ko.computed(function(){return t.selectedCruises().length>0});t.hasSelectedFilter=ko.computed(function(){return t.filters.selectedMonths().length||t.filters.selectedSuites().length});t.airEnabledFlag=ko.observable(!1);t.legalYear=ko.observable(0);t.promoLegalDefaultYear=0;t.hasUnloadedCruises=ko.computed(function(){return t.cruiseLimit()<t.filteredCruises().length});t.enableResultsView=ko.observable(!1);t.displayFinePrint=ko.computed(function(){return t.enableResultsView()});t.renderedCruises=ko.computed(function(){var i,r;return t.lazyLoadCruises?(i=t.filteredCruises().filter(function(i,r){return r<t.cruiseLimit()&&i.PackageCode!==n.voyageIdFromUrl}),n.voyageIdFromUrl&&(r=t.cruises.filter(function(t){return t.PackageCode===n.voyageIdFromUrl}),r.length>0&&(i[i.length-1]=r[0])),n.sortCruisesByDate(i)):t.cruises});t.getCalendarYears=function(){return t.filters.calendar.years};t.getCalendarYear=function(n){return t.getCalendarYears().filter(function(t){return t.year===n})[0]};t.hasCruisesInFeaturedYear=function(){return t.yearsWithCruises.indexOf(t.featuredYear)!==-1};t.hasCruisesInPreselectDefaultYear=function(){return t.yearsWithCruises.indexOf(t.preselectDefaultYear)!==-1};t.isYearHighlighted=function(n){for(var t=0;t<n.months.length;t++)if(n.months[t].active())return!0;return!1};t.isYearActive=function(n){for(var i=0;i<n.months.length;i++)if(!n.months[i].active()&&!n.months[i].disabled())return!1;return!t.isYearDisabled(n)};t.isYearDisabled=function(n){for(var t=0;t<n.months.length;t++)if(!n.months[t].disabled())return!1;return!0};t.isYearHeaderVisible=function(i){var r=t.lazyLoadCruises?n.filterByYear(t.renderedCruises(),i):n.filterByYear(t.filteredCruises(),i);return r.length>0};t.forceAirGatewayDefaultMessage=function(n){return n==2019?t.cruises[0].cruiseType.toLowerCase()=="river":!1};t.getCruisesInYear=function(i){var r=t.renderedCruises();return n.filterByYear(r,i)};t.initLoadedCruises=function(){t.cruiseLimit(t.cruiseLimitInitSize)};t.loadMoreCruises=function(){t.lazyLoadCruises&&t.hasUnloadedCruises()&&t.cruiseLimit(t.cruiseLimit()+t.cruiseLimitStepSize)};t.clearMonthFilters=function(){n.clearFilters(t.filters.selectedMonths)};t.clearSuiteFilters=function(){n.clearFilters(t.filters.selectedSuites)};t.clearAllFilters=function(){t.filters.hideSoldOut(!1);t.clearMonthFilters();t.clearSuiteFilters();t.afterFilterChanged()};t.applyYearTab=function(i){return t.filters.selectedMonths().length===0?n.filterByYear(i,t.currentYearTab().year):i};t.applyFeaturedFlag=function(i){return t.filters.featuredCruises()?t.filters.selectedMonths().length===0&&t.filters.selectedSuites().length===0&&t.hasCruisesInFeaturedYear()?n.filterByCruisePriority(i,t.featuredCruiseLimit):n.filterByCruisePriorityPerYear(i,t.getCalendarYears(),t.featuredCruiseLimit):i};t.applyHideSoldOutFlag=function(n){return t.filters.hideSoldOut()==!0?n.filter(function(n){return!n.soldOut}):n};t.filterByMonthFilters=function(i){return t.filters.selectedMonths().length?n.filterByMonths(i,t.filters.selectedMonths()):i};t.filterBySuiteFilters=function(i){return t.filters.selectedSuites().length?n.filterBySuiteTypes(i,t.filters.selectedSuites()):i};t.applyAllFilters=function(){t.updateMonthFilters();t.updateSuiteFilters();var n=t.cruises;n=t.filterByMonthFilters(n);n=t.filterBySuiteFilters(n);n=t.applyYearTab(n);n=t.applyHideSoldOutFlag(n);n=t.applyFeaturedFlag(n);t.lazyLoadCruises&&t.initLoadedCruises();t.lazyLoadCruises||(t.cruises.forEach(function(n){n.visible(!1)}),n.forEach(function(n){n.visible(!0)}));t.filteredCruises(n)};t.updatePromoCode=function(){var n=t.filteredCruises(),i=n.reduce(function(n,t){return t.TacticalComparePrice<n.TacticalComparePrice?t.IsTacticalPrice?t:{TacticalComparePrice:t.TacticalComparePrice,TacticalCode:"_STANDARD"}:n},n[0]).TacticalCode;t.promoCode(i)};t.updateMonthFilters=function(){var i=t.cruises;i=t.filterBySuiteFilters(i);t.getCalendarYears().forEach(function(r){r.months.forEach(function(r){var u=n.filterByMonths(i,[r]);u.length?n.enableFilter(r):n.disableFilter(t.filters.selectedMonths,r)})})};t.updateSuiteFilters=function(){var i=t.cruises;i=t.filterByMonthFilters(i);t.filters.suiteTypes.forEach(function(r){var u=n.filterBySuiteTypes(i,[r]);u.length?n.enableFilter(r):n.disableFilter(t.filters.selectedSuites,r)})};t.afterFilterChanged=function(){t.applyAllFilters()};t.updateYearTabs=function(n){$('.nav-tabs a[href="#monthFilter'+n+'"]').tab("show");$('.nav-tabs a[href="#monthFilterMobile'+n+'"]').tab("show")};t.featuredCruisesClicked=function(i){t.filters.featuredCruises(i);t.filters.featuredCruises()?(t.currentYearTab(t.currentYearTab()),t.updateYearTabs(t.currentYearTab().year),n.updateLiveAriaBlock("Selected Sailings",!0)):t.filters.featuredCruises()==!1&&n.updateLiveAriaBlock("All Sailings",!0);t.selectedCruises().map(function(n){return n.active(!1)});t.afterFilterChanged()};t.yearTabClicked=function(i){t.currentYearTab(i);n.filterYearTracked(i);t.updateYearTabs(t.currentYearTab().year);t.afterFilterChanged()};t.activateMonthFilter=function(i){n.toggleFlag(i.active);n.updateSelectionArray(t.filters.selectedMonths,i);n.filterMonthTracked(i);var r=GetMonthName(i.monthNumber);n.updateLiveAriaBlock(r+" "+i.year,i.active())};t.monthFilterClicked=function(n){t.activateMonthFilter(n);t.afterFilterChanged()};t.suiteFilterClicked=function(i){n.toggleFlag(i.active);n.updateSelectionArray(t.filters.selectedSuites,i);t.afterFilterChanged();n.stateroomAvailabilityTracked(i);n.updateLiveAriaBlock(i.value+" room type",i.active())};t.hideSoldOutDatesClicked=function(){return t.afterFilterChanged(),n.updateLiveAriaBlock(null,null,"Hide Sold Out has been "+(t.filters.hideSoldOut()?"checked":"unchecked")+" and results present on the page have been filtered."),!0};t.cruiseClicked=function(i,r){if(r.active()){if(r.active(!1),n.updateSelectionArray(t.selectedCruises,r),i.currentTarget!=null){var u=$(i.currentTarget).find(".cruise-cta a"),f=$("#"+r.PackageCode);u.length>0&&(u.attr("aria-label","More Information."),u.attr("aria-expanded",!1),f.attr("aria-hidden",!0))}}else{try{tealium.fireVoyageViewEvent(r)}catch(e){}n.loadSailingData(r,function(){if(r.active(!0),n.updateSelectionArray(t.selectedCruises,r),i.currentTarget!=null){var u=$(i.currentTarget).find(".cruise-cta a"),f=$("#"+r.PackageCode);u.length>0&&(u.attr("aria-label","Close"),u.attr("aria-expanded",!0),f.attr("aria-hidden",!1));vcDisableBookNowButtons&&disableOnlineBooking()}})}}};n.isMonthPreset=function(t,i){for(var u,r=0;r<n.presetFilters.months.length;r++)if(u=n.presetFilters.months[r],u.year===i&&u.month===t)return!0;return!1};n.setupCalendarFilters=function(t){t.years.forEach(function(t){t.months.forEach(function(i){i.active=ko.observable(!1);i.highlighted=ko.observable(!1);i.disabled=ko.observable(!1);n.isMonthPreset(i.monthNumber.toString(),t.year)&&n.viewModel.activateMonthFilter(i)})});n.viewModel.filters.calendar=t};n.setupSuiteTypeFilters=function(t){n.viewModel.filters.suiteTypes=t.map(function(n){return{label:n,value:n,active:ko.observable(!1),highlighted:ko.observable(!1),disabled:ko.observable(!1)}})};n.setupCruises=function(t){t.forEach(function(n){n.active=ko.observable(!1);n.visible=ko.observable(!0);n.cruiseShip=ko.observable(null);n.cruiseSuites=ko.observableArray([]);n.featuredCruiseFixed=n.featuredCruise});n.viewModel.cruises=t};n.setupYearTab=function(t){n.viewModel.defaultYearTab=n.viewModel.hasPreselectDates&&n.viewModel.hasCruisesInPreselectDefaultYear()?n.viewModel.getCalendarYear(n.viewModel.preselectDefaultYear):n.viewModel.hasCruisesInFeaturedYear()?n.viewModel.getCalendarYear(t.featuredYear.toString()):t.years[0];n.viewModel.currentYearTab(n.viewModel.defaultYearTab)};n.containsFeaturedCruise=function(n){for(var t=0;t<n.length;t++)if(n[t].featuredCruise)return!0;return!1};n.getYearsWithCruises=function(n){return n.reduce(function(n,t){return n.indexOf(t.year)===-1?n.concat([t.year]):n},[])};n.getPresetMonthFilters=function(t){var i=decodeURIComponent(t);return minimumYear=1e7,containsFeaturedYear=!1,n.viewModel.hasPreselectDates=!0,n.viewModel.preselectDefaultYear="",i.split("|").map(function(t){var i=t.split("-");return i.length!==2?null:(containsFeaturedYear||(n.viewModel.hasPreselectDates=!0,i[0]==n.viewModel.featuredYear?(containsFeaturedYear=!0,n.viewModel.preselectDefaultYear=n.viewModel.featuredYear):i[0]>0&&i[0]<minimumYear&&(minimumYear=i[0],n.viewModel.preselectDefaultYear=i[0])),{month:i[1],year:i[0]})}).filter(function(n){return n!==null})};n.getPresetFilters=function(){var t={months:[]},i;return setHashSegments(),hashSegments.search&&hashSegments.search.length>0&&(i=hashSegments.search.split("&"),i.forEach(function(i){var r=i.split("="),u,f;r.length===2&&(u=r[0],f=r[1],u==="sfym"&&(t.months=n.getPresetMonthFilters(f)))})),t};n.initViewModel=function(t){n.viewModel.featuredYear=t.calendar.featuredYear.toString();n.presetFilters=n.getPresetFilters();n.viewModel.cityGateways=t.cityGateways;n.viewModel.hasFeaturedCruises=n.containsFeaturedCruise(t.cruises);n.viewModel.filters.featuredCruises(n.viewModel.hasFeaturedCruises);n.viewModel.filters.hideSoldOut(!0);n.viewModel.yearsWithCruises=n.getYearsWithCruises(t.cruises);n.setupCalendarFilters(t.calendar);n.setupSuiteTypeFilters(t.suiteTypes);n.setupCruises(t.cruises);n.setupYearTab(t.calendar);n.viewModel.applyAllFilters()};n.yearsTablist;n.yearsTabs;n.yearsPanels;n.sailingsTablist;n.sailingsTabs;n.keys={end:35,home:36,left:37,up:38,right:39,down:40,enter:13,space:32};n.direction={37:-1,38:-1,39:1,40:1};n.addYearsTabsListeners=function(t){n.yearsTabs[t].addEventListener("click",n.clickYearTabEventListener);n.yearsTabs[t].addEventListener("keydown",n.keydownEventListener);n.yearsTabs[t].addEventListener("keyup",n.keyupEventListener);n.yearsTabs[t].index=t};n.generateYearsTabsArrays=function(){n.yearsTabs=document.querySelectorAll('#cruises-calendar-filter [role="tab"], #cruises-calendar-filter-mobile [role="tab"]');n.yearsPanels=document.querySelectorAll('#cruises-calendar-filter [role="tabpanel"], #cruises-calendar-filter-mobile [role="tabpanel"]')};n.clickYearTabEventListener=function(t){var i=t.target;n.activateTab(i,!1)};n.keydownEventListener=function(t){var i=t.keyCode;switch(i){case n.keys.end:t.preventDefault();n.focusLastTab();break;case n.keys.home:t.preventDefault();n.focusFirstTab();break;case n.keys.up:case n.keys.down:n.determineOrientation(t)}};n.keyupEventListener=function(t){var i=t.keyCode;switch(i){case n.keys.left:case n.keys.right:n.determineOrientation(t);break;case n.keys.enter:case n.keys.space:n.activateTab(t.target)}};n.determineOrientation=function(t){var i=t.keyCode,u=n.yearsTablist.getAttribute("aria-orientation")=="vertical",r=!1;u?(i===n.keys.up||i===n.keys.down)&&(t.preventDefault(),r=!0):(i===n.keys.left||i===n.keys.right)&&(r=!0);r&&n.switchTabOnArrowPress(t)};n.switchTabOnArrowPress=function(t){var i=t.keyCode,r;n.direction[i]&&(r=t.target,r.index!==undefined&&(n.yearsTabs[r.index+n.direction[i]]?n.yearsTabs[r.index+n.direction[i]].focus():i===n.keys.left||i===n.keys.up?n.focusLastTab():(i===n.keys.right||i==n.keys.down)&&n.focusFirstTab()))};n.activateTab=function(t,i){i=i||!0;n.deactivateTabs();t.removeAttribute("tabindex");t.setAttribute("aria-selected","true");var r=t.getAttribute("aria-controls");document.getElementById(r).removeAttribute("hidden");i&&t.focus()};n.deactivateTabs=function(){for(t=0;t<n.yearsTabs.length;t++)n.yearsTabs[t].setAttribute("tabindex","0"),n.yearsTabs[t].setAttribute("aria-selected","false");for(p=0;p<n.yearsPanels.length;p++)n.yearsPanels[p].setAttribute("hidden","hidden")};n.focusFirstTab=function(){n.yearsTabs[0].focus()};n.focusLastTab=function(){n.yearsTabs[n.yearsTabs.length-1].focus()};n.generateSailingsTabsArrays=function(){n.sailingsTabs=document.querySelectorAll('.featured-cruise-filter-col [role="tab"]')};n.addSailingsTabsListeners=function(t){n.sailingsTabs[t].addEventListener("click",n.clickSailingTabEventListener);n.sailingsTabs[t].addEventListener("keydown",n.keydownSailingEventListener);n.sailingsTabs[t].addEventListener("keyup",n.keyupSailingEventListener);n.sailingsTabs[t].index=t};n.clickSailingTabEventListener=function(t){var i=t.target;n.activateSailingTab(i,!0)};n.keydownSailingEventListener=function(t){var i=t.keyCode;switch(i){case n.keys.end:t.preventDefault();n.focusSailingLastTab();break;case n.keys.home:t.preventDefault();n.focusSailingFirstTab();break;case n.keys.up:case n.keys.down:n.determineSailingOrientation(t)}};n.focusSailingFirstTab=function(){n.sailingsTabs[0].focus()};n.focusSailingLastTab=function(){n.sailingsTabs[n.sailingsTabs.length-1].focus()};n.keyupSailingEventListener=function(t){var i=t.keyCode;switch(i){case n.keys.left:case n.keys.right:n.determineSailingOrientation(t);break;case n.keys.enter:case n.keys.space:t.preventDefault();n.activateSailingTab(t.target);DnPCore.viewModel.featuredCruisesClicked(t.target.index===0)}};n.determineSailingOrientation=function(t){var i=t.keyCode,u=n.sailingsTablist.getAttribute("aria-orientation")=="vertical",r=!1;u?(i===n.keys.up||i===n.keys.down)&&(t.preventDefault(),r=!0):(i===n.keys.left||i===n.keys.right)&&(r=!0);r&&n.switchSailingTabOnArrowPress(t)};n.switchSailingTabOnArrowPress=function(t){var i=t.keyCode,r;n.direction[i]&&(r=t.target,r.index!==undefined&&(n.sailingsTabs[r.index+n.direction[i]]?n.sailingsTabs[r.index+n.direction[i]].focus():i===n.keys.left||i===n.keys.up?n.focusSailingLastTab():(i===n.keys.right||i==n.keys.down)&&n.focusSailingFirstTab()))};n.activateSailingTab=function(t,i){i=i||!0;n.deactivateSailingTabs();t.removeAttribute("tabindex");t.setAttribute("aria-selected","true");var r=t.getAttribute("aria-controls");i&&t.focus()};n.deactivateSailingTabs=function(){for(t=0;t<n.sailingsTabs.length;t++)n.sailingsTabs[t].setAttribute("tabindex","0"),n.sailingsTabs[t].setAttribute("aria-selected","false")};n.focusSailingFirstTab=function(){n.sailingsTabs[0].focus()};n.focusSailingLastTab=function(){n.sailingsTabs[n.sailingsTabs.length-1].focus()};n.updateLiveAriaBlock=function(n,t,i){typeof i!="undefined"&&i!==null?$('.filter-content [aria-live="polite"]').html(i):t===!0?$('.filter-content [aria-live="polite"]').html(n+" is selected and results present on the page have been filtered."):$('.filter-content [aria-live="polite"]').html("Applied filter has been removed.")};n.InitDataLoadComplete=function(t,r,u){for(r?$("#pricing-sold-out").css("display","block"):u?$("#pricing-unavailable").css("display","block"):t!=null&&t.cruises!=null&&t.cruises.length?(n.initViewModel(t),ko.applyBindings(n.viewModel,document.getElementById("cruise-main-content")),$("#pricing-page-content").css("visibility","visible")):$("#pricing-unavailable").css("display","block"),vcDisableBookNowButtons&&disableOnlineBooking(),n.yearsTablist=document.querySelectorAll('.nav-tabs[role="tablist"]')[0],n.generateYearsTabsArrays(),i=0;i<n.yearsTabs.length;++i)n.addYearsTabsListeners(i);for(n.sailingsTablist=document.querySelectorAll('.featured-cruise-filter-col [role="tablist"]')[0],n.generateSailingsTabsArrays(),i=0;i<n.sailingsTabs.length;++i)n.addSailingsTabsListeners(i);n.isInitializationComplete=!0;n.viewModel.enableResultsView(!0);n.clearWaitModal();n.viewModel.showFilterTooltip(!0);n.voyageIdFromUrl&&n.viewModel.cruises.filter(function(t){return t.PackageCode===n.voyageIdFromUrl}).length>0&&openSectionByVoyageId(n.voyageIdFromUrl)};n.InitLoad=function(t,i,r,u,f){t.length>0&&(n.viewModel.cruiseTcm=t,n.viewModel.cruiseName=f,n.viewModel.phoneNumber(i),n.viewModel.lazyLoadCruises=r.lazyLoad,n.viewModel.offerCode=u,n.displayWaitModal(),DnPData.getDatesofTravel(n.viewModel.cruiseTcm,n.viewModel.cruiseName,n.viewModel.offerCode,n.InitDataLoadComplete))};n.GetSailingExpandedDataComplete=function(t,i){t.cruiseShip(i.cruiseShip);t.cruiseSuites(i.cruiseSuites);n.clearWaitModal()};n.displayWaitModal=function(t){n.waitModalDisplayedFlag||(t>0?n.modalOpenEvent==null&&(n.modalOpenEvent=setTimeout(n.waitModalCallback,t)):n.waitModalCallback())};n.clearWaitModal=function(){n.isInitializationComplete&&(n.modalOpenEvent!=null&&(clearTimeout(n.modalOpenEvent),n.modalOpenEvent=null),n.waitModalDisplayedFlag&&($.colorbox.close(),n.waitModalDisplayedFlag=!1))};n.waitModalCallback=function(){$.colorbox({closeButton:!1,escKey:!0,scrolling:!1,innerWidth:"300px",innerHeight:"100px",overlayClose:!0,transition:"none",opacity:.65,html:'<div class="modal-ecommerce modal-processing"><img alt="" src="/content/images/busy.gif"/><div class="modal-processing__text">Please wait...<\/div><\/div>',onClosed:n.overlayProcessOnClosed,onOpen:n.overlayProcessOnOpen});n.modalOpenEvent!=null&&(clearTimeout(n.modalOpenEvent),n.modalOpenEvent=null);n.waitModalDisplayedFlag=!0};n.overlayProcessOnOpen=function(){$("#colorbox").addClass("processModal")};n.overlayProcessOnClosed=function(){$("#colorbox").removeClass("processModal")};n.RaQTracked=function(t,i,r){n.launchSubPage(r,i)};n.getBaseTrackingData=function(){return{}};n.bookNowYearTracked=function(){var t=n.getBaseTrackingData();t.event_name="cta_olb_start";t.link_type="link";t.cta_name="price_and_build";tealium.fireLinkEvent(t)};n.raqYearTracked=function(t,i){var r=n.getBaseTrackingData();r.event_name="cta_button_click";r.link_type="button";r.cta_name="request_a_quote";tealium.fireLinkEvent(r);n.launchSubPage(t,i)};n.bookNowTracked=function(t){var i=n.getBaseTrackingData();i.event_name="cta_olb_start";i.link_type="price_and_build";i.itinerary_id=tealium.getItemId(t.itineraryTcm);i.itinerary_name=tealium.codify(t.itineraryName);tealium.fireLinkEvent(i)};n.raqTracked=function(t,i){var r=n.getBaseTrackingData();r.event_name="cta_button_click";r.link_type="button";r.itinerary_id=tealium.getItemId(i.itineraryTcm);r.itinerary_name=tealium.codify(i.itineraryName);tealium.fireLinkEvent(r);n.launchSubPage(t,i)};n.shipDeckPlanTracked=function(n){var t={event_name:"deck_plan_view",voyage_id:tealium.codify(n.PackageCode),voyage_name:tealium.codify(n.CruiseName),itinerary_id:tealium.getItemId(n.itineraryTcm),itinerary_name:tealium.codify(n.itineraryName),cruise_direction:tealium.codify(n.cruiseDirection),ship_name:tealium.codify(n.cruiseShip().name)};tealium.fireLinkEvent(t)};n.stateroomAvailabilityTracked=function(n){if(n.active()!=!1){var t={event_name:"dp_filter",fac_type:"fac_page",fac_category:"stateroom_availability",availability_filter:n.label};tealium.fireLinkEvent(t)}};n.filterYearTracked=function(n){var t={event_name:"dp_filter",fac_type:"fac_page",fac_category:"departure_year",departure_year_filter:n.year};tealium.fireLinkEvent(t)};n.filterMonthTracked=function(n){if(n.active()!=!1){var t={event_name:"dp_filter",fac_type:"fac_page",fac_category:"departure_dates",departure_date_filter:n.monthNumber.toString()+-+n.year};tealium.fireLinkEvent(t)}};n.launchSubPage=function(n){var t=$(n),i=t.attr("href")||t.attr("data-href");SubPageManager.clearModalLoader();SubPageManager.showLoading();vFrmBeaconMgr.init(i,t,SubPageBootstrapModalCallBack,!1)};n.phoneClicked=function(n,t){var i={event_name:"call_us",voyage_id:tealium.codify(t.PackageCode),voyage_name:tealium.codify(t.CruiseName),itinerary_id:tealium.getItemId(t.itineraryTcm),itinerary_name:tealium.codify(t.itineraryName),cruise_direction:tealium.codify(t.cruiseDirection),ship_name:tealium.codify(t.cruiseShip().name)};return tealium.fireLinkEvent(i),!0};n.itineraryModalClicked=function(n,t){var i={event_name:"itinerary_modal_view",voyage_id:tealium.codify(t.PackageCode),voyage_name:tealium.codify(t.CruiseName),itinerary_id:tealium.getItemId(t.itineraryTcm),itinerary_name:tealium.codify(t.itineraryName),cruise_direction:tealium.codify(t.cruiseDirection),ship_name:tealium.codify(t.cruiseShip().name)};tealium.fireLinkEvent(i)};n.exploreShipClicked=function(){return!0};n.launchDeckPlanPage=function(t,i){n.shipDeckPlanTracked(i,t);var r=$(t),u=r.attr("href")||r.attr("data-href");SubPageManager.clearModalLoader();SubPageManager.showLoading();vFrmBeaconMgr.init(u,r,SubPageBootstrapModalCallBack,!1,!0);n.exploreShipClicked(t,i)};n.launcStateroomModal=function(n,t,i){var r=$(n),f=r.attr("href")||r.attr("data-href"),u;SubPageManager.clearModalLoader();SubPageManager.showLoading();vFrmBeaconMgr.init(f,r,SubPageBootstrapModalCallBack,!1,!0);(t!=null||i!=null)&&(u={event_name:"modal_view",modal_type:"stateroom_view",modal_name:tealium.codify(i.suiteName),link_type:"text",itinerary_id:tealium.getItemId(t.itineraryTcm),itinerary_name:tealium.codify(t.itineraryName),voyage_id:tealium.codify(t.PackageCode),voyage_name:tealium.codify(t.CruiseName),cruise_start:tealium.codify(t.DepartureDateString),cruise_end:tealium.codify(t.ReturnDateString),cruise_direction:tealium.codify(t.cruiseDirection),cruise_from_price:tealium.codify(t.priceRange),air_from_price:tealium.codify(t.airPriceRange),cruise_fare:tealium.codify(i.discountedPrice),air_fare:tealium.codify(i.discountedAirPrice),stateroom_offer:tealium.codify(i.stateroomDeal),stateroom_availability:tealium.codify(i.availLabel)},tealium.fireLinkEvent(u))};n.SafeTCM=function(n){return typeof n=="undefined"||n==null?"":n.replace("tcm:","").replace(" ","").replace("-","")}};DnPCore.isInitializationComplete=!1;DnPCore.viewModel=new DnPCore.pricesAndDatesViewModel