(function(){"use strict";function n(n,t,i){function u(n){i.get("customer/GetUpcomingBookings",n)}function f(n){i.get("customer/GetTravellerBlogs",n)}function e(n,t,r,u){var f={BookingNumber:n,DepartureDate:ct.utls.getFormattedDate(t),IsSeasonRequired:r};i.post("customer/LinkExistingBooking",u,f)}var r={};return r.GetUpcomingBookings=u,r.GetTravellerBlogs=f,r.LinkBooking=e,r}angular.module("ct.customerPortal").factory("dashboardService",n);n.$inject=["$http","$rootScope","webApiRequest"]})(),function(){"use strict";function n(n,t,i,r,u,f,e){function l(){u.GetUpcomingBookings(function(n){n.UserMessage.IsSuccess&&n.DataList.length>0?t.bookings=n.DataList:n.UserMessage.IsSuccess&&n.DataList.length==0?t.showNoBookingsMsg=!0:ct.utls.showMessage(n.UserMessage);ct.customer.clientStore.setItem(ct.customer.storageKeys.LinkedBookings,JSON.stringify(t.bookings));ct.utls.hideLoading();t.isBookingsLoading=!1})}function v(){u.GetTravellerBlogs(function(n){t.travellerBlogs=n;t.isTravellerBlogsLoading=!1;e(function(){$(".title-ellipsis").dotdotdot({fallbackToLetter:!0,watch:!0,height:60})},100)})}function y(){ct.utls.clearValidations()}function p(){ct.utls.clearValidations();h()}function w(){$("body").addClass("remove-body-scroll")}function h(){$("body").removeClass("remove-body-scroll")}var o;angular.extend(t,{bookings:[],travellerBlogs:[],hasPastBookings:!1,isBookingsLoading:!0,isTravellerBlogsLoading:!0,bookingNumber:"",isDisabled:!1,errorOrSuccessMsg:"",showNoBookingsMsg:!1,isSeasonRequired:!1});this.dashboard=dashboard;this.linkBookingResources=linkBookingResources;o=$("#termsWindow");$("#termsWindow").hide();var c=$("#makeNewBookingWindow"),s=$("#linkExistingBookingWindow"),a=$("#linkForm").kendoValidator({rules:{bookingNumber:function(n){return n.is("[id=bookingNumber]")&&n.val()!==""?n.val().match(/^[ _]*[0-9]+[ _]*$/)!=null?!0:!1:!0}}}).data("kendoValidator");(function(){console.log("init dashboardController");n.activeMenu=f.customerPortalMenuItems.Dashboard;l();v()})();t.makeNewBooking=function(){ct.customer.utls.initializeKendoWindow(c,dashboard.newBookingTitle,"90%",!0);c.data("kendoWindow").center().open()};t.isPaymentEnabled=function(t){var i=n.currentUser.market;return i!=ct.utls.regions.AU&&i!=ct.utls.regions.NZ||t?!1:!0};t.linkExistingBooking=function(){t.isSeasonRequired=!1;t.bookingNumber="";t.errorMsg="";t.successMsg="";t.departureDate="";ct.customer.utls.initializeKendoWindow(s,dashboard.existingBookingTitle,"","",!1,y);s.data("kendoWindow").center().open()};t.linkBooking=function(){t.isDisabled=!0;$("#btnLinkBooking").addClass("btn-loader");t.errorMsg="";t.successMsg="";u.LinkBooking(t.bookingNumber,t.departureDate,t.isSeasonRequired,function(n){n.UserMessage.IsSuccess?(s.data("kendoWindow").close(),ct.utls.clearValidations(),ct.customer.utls.showCustomerClientSideMessage(n.UserMessage.Message),l()):n.Data.IsSeasonRequired?(t.isSeasonRequired=!0,t.errorMsg=n.UserMessage.Message):t.errorMsg=n.UserMessage.Message;t.isDisabled=!1;$("#btnLinkBooking").removeClass("btn-loader")})};t.showTermsAndConditions=function(){a.validate()&&(ct.customer.utls.initializeKendoWindow(o,linkBookingResources.showTermsAndConditions,"","",!1,p),o.data("kendoWindow").center().open());w()};t.acceptTerms=function(){o.data("kendoWindow").close();ct.utls.clearValidations();t.linkBooking();h()};t.rejectTerms=function(){o.data("kendoWindow").close();ct.utls.clearValidations();t.errorMsg="";h()}}angular.module("ct.customerPortal").controller("dashboardController",n);n.$inject=["$rootScope","$scope","$http","$location","dashboardService","globalConstants","$timeout"]}()