{"version":3,"sources":["../../../src/js/core.js","../../../src/js/config.js","../../../src/js/engine.js","../../../src/js/page.js","../../../src/js/account.js","../../../src/js/addToCart.js","../../../src/js/bootstrap.min.js","../../../src/js/carousels.js","../../../src/js/cart.js","../../../src/js/checkoutAvoidDuplicate.js","../../../src/js/checkoutComment.js","../../../src/js/checkoutCommentContinueBtnCheck.js","../../../src/js/clientAddForm.js","../../../src/js/clientAddressBook.js","../../../src/js/clientForm.js","../../../src/js/clientPopup.js","../../../src/js/clientReference.js","../../../src/js/clientViewEditForm.js","../../../src/js/dashboard.js","../../../src/js/dateInputValidator.js","../../../src/js/datePicker2.js","../../../src/js/datePicker2Validator.js","../../../src/js/deliveryCounter.js","../../../src/js/drawingTool.js","../../../src/js/dvaInformation.js","../../../src/js/fileUpload.js","../../../src/js/finalisePayment.js","../../../src/js/map.js","../../../src/js/mfaLogin.js","../../../src/js/myAccountSupplierInstaller.js","../../../src/js/newsEvents.js","../../../src/js/portalAccordion.js","../../../src/js/portalCheckout.js","../../../src/js/portalCheckoutClientSearch.js","../../../src/js/portalCheckoutClinicalJustification.js","../../../src/js/portalCheckoutHomeModification.js","../../../src/js/portalCheckoutPayment.js","../../../src/js/portalCheckoutShipping.js","../../../src/js/portalLogin.js","../../../src/js/portalPickupStore.js","../../../src/js/productCompare.js","../../../src/js/productDetail.js","../../../src/js/productListing.js","../../../src/js/selectValidator.js","../../../src/js/stockIntegration.js","../../../src/js/stores.js","../../../src/js/util.js"],"names":[],"mappings":"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G,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAA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","file":"core.scripts.js","sourcesContent":["(function(){\n var root = this;\n var Core = function(obj) {\n if (obj instanceof Core){\n return obj;\n }\n if (!(this instanceof Core)){\n return new Core(obj);\n }\n };\n\n root['Core'] = Core;\n\n}).call(this);\n\nCore.SetCache = function() {\n Core.Cache = {\n $window: $(window),\n $document: $(document),\n $body: $('body'),\n $html: $('html'),\n $loadingOverlay: $('#loading-overlay'),\n $lazyLoadingMessage: $('#lazy-loading-message'),\n $carousels: $('.carousel'),\n $backToTop: $('#btn-top'),\n $footer: $('.footer'),\n $miniCartTotal: $('a#toggle-cart span.amount'),\n $productListing: $('.product-list'),\n };\n};\n\nCore.Page = function(){\n Core.Page.init();\n};\n\nCore.IsMobile = function () {\n if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {\n var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\n if (width <= Core.Config.MobileWidth) {\n return true;\n }\n }\n return false;\n};\n\nCore.IsTablet = function() {\n if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {\n var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\n if (width <= Core.Config.TabletWidth) {\n return true;\n }\n }\n return false;\n};\n\nCore.HasKendoDropdowns = function(){\n if (/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {\n if (Core.Config.Forms.DropdownStylingTouchDevices) {\n return true;\n }\n }\n else if (Core.Config.Forms.DropdownStylingDesktop) {\n return true;\n }\n\n return false;\n};\n\nCore.RenderTemplate = function(templateName, data, $placeholder){\n var source = $(templateName).html();\n var template = Handlebars.compile(source);\n\n $placeholder.html(template(data));\n};\n\nCore.GetParameterByName = function(name){\n name = name.replace(/[\\[]/, \"\\\\[\").replace(/[\\]]/, \"\\\\]\");\n var regex = new RegExp(\"[\\\\?&]\" + name + \"=([^&#]*)\"),\n results = regex.exec(location.search);\n return results === null ? \"\" : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\n};\n\nCore.UpdateUrlParameter = function (uri, key, value) {\n // remove the hash part before operating on the uri\n var i = uri.indexOf('#');\n var hash = i === -1 ? '' : uri.substr(i);\n uri = i === -1 ? uri : uri.substr(0, i);\n\n var re = new RegExp(\"([?&])\" + key + \"=.*?(&|$)\", \"i\");\n var separator = uri.indexOf('?') !== -1 ? \"&\" : \"?\";\n if (uri.match(re)) {\n uri = uri.replace(re, '$1' + key + \"=\" + value + '$2');\n } else {\n uri = uri + separator + key + \"=\" + value;\n }\n return uri + hash; // finally append the hash as well\n};\n\nString.prototype.strim = function(needle) {\n var org = this;\n var modified = \"\";\n var first_pos = 0;\n var last_pos = org.length - 1;\n //find first non needle char position\n for (var i = 0; i < org.length; i++) {\n if (org.charAt(i) !== needle) {\n first_pos = (i === 0 ? 0 : i)\n\n break;\n }\n }\n // find first non needle char position\n for (var j = org.length - 1; j > 0; j--) {\n if (org.charAt(j) !== needle) {\n last_pos = (j === org.length ? org.length : j + 1);\n break;\n }\n }\n\n return org.substring(first_pos, last_pos);\n};\n\nCore.ShowLazyLoading = function () {\n Core.Cache.$lazyLoadingMessage.show();\n};\n\nCore.HideLazyLoading = function () {\n Core.Cache.$lazyLoadingMessage.hide();\n};\n\nCore.ShowPageLoading = function(){\n Core.Cache.$loadingOverlay.removeClass('hidden');\n Core.Cache.$loadingOverlay.show();\n};\n\nCore.ShowPageLoadingMessage = function(message){\n var msg = message || \"\";\n el = $('#loading-overlay');\n\n if(el.length === 0) {\n if(msg !== \"\")\n $('body').prepend('
' + msg + '
');\n else\n $('body').prepend('
'); \n }else{\n if(msg !== \"\")\n el\n .addClass('has-message')\n .removeClass('no-message')\n .append('' + msg + '')\n .show();\n else\n el\n .addClass('no-message')\n .removeClass('has-message')\n .html(\"\")\n .show()\n .end();\n }\n};\n\nCore.HidePageLoading = function(){\n Core.Cache.$loadingOverlay.hide();\n var $el = $('#loading-overlay');\n \n $el.hide()\n if(!$el.hasClass(\"js-dontclear\")) {\n $el.html(\"\")\n }\n \n $el.removeClass('no-message has-message');\n\n};\n\nCore.InitPopup = function($popup, title) {\n var _width = 660, //Core.Config.CartNotification.Width,\n _height = 350;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n var winEl = $popup.kendoWindow({\n title: title,\n width: _width,\n //height: _height,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap'\n });\n\n winEl.data(\"kendoWindow\").wrapper.addClass('portal-modal');\n var $closeBtn = $popup.find('.portal-modal__btn-close');\n\n if ($closeBtn) {\n $closeBtn.on('click', function() {\n Core.ShowPopup($popup, false);\n });\n }\n\n $popup.removeClass('hidden');\n};\n\nCore.ShowPopup = function($popup, doShow) {\n doShow = doShow === undefined || null ? true : doShow; //set default to true/show\n\n var popupWindow = $popup.data(\"kendoWindow\");\n\n if (doShow) {\n popupWindow.center().open();\n } else {\n popupWindow.close();\n } \n};\n\nCore.AppendErrorLabel = function($target, title) {\n var tmpl = \"\";\n $target.append(tmpl);\n};\n\nCore.ShowErrorMessage = function ($errorBox, config, doShow) {\n doShow = doShow === undefined || null ? true : doShow; //set default to true/show\n\n if($errorBox.length === 0) {\n console.warn('No div.portal-error exist. Returned early.');\n return;\n }\n\n $errorBox.html('');\n if(!doShow) {\n $errorBox.addClass('hidden');\n return;\n }\n\n var initCloseBtn = function() {\n $errorBox.find('.portal-error__close').on('click', function() {\n $errorBox.addClass('hidden');\n });\n };\n\n if(config) {\n //add icon close\n var closeBtn = '';\n $errorBox.append(closeBtn);\n\n if (config.title) {\n $errorBox.append('

' + config.title + '

');\n }\n \n if (Array.isArray(config.message)) {\n $.each(config.message, function (i, msg) {\n $errorBox.append('

' + msg + '

');\n });\n \n } else {\n $errorBox.append('

' + config.message + '

');\n }\n\n initCloseBtn();\n $errorBox.removeClass('hidden');\n Core.ScrollToView($errorBox.offset().top - 10);\n } \n}\n\nCore.ScrollToView = function(scrollTop) {\n $('html, body').animate({\n scrollTop: scrollTop\n }, 300);\n};\n\nCore.IsNumber = function (evt) {\n evt = (evt) ? evt : window.event;\n var charCode = (evt.which) ? evt.which : evt.keyCode;\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\n return false;\n }\n return true;\n};\nCore.IsValidText = function (evt) {\n evt = (evt) ? evt : window.event;\n var charCode = (evt.which) ? evt.which : evt.keyCode;\n \n var regex = /^[a-zA-Z0-9]{5}$/;\n var y = String.fromCharCode(charCode);\n var isValid = regex.test(String.fromCharCode(evt.charCode));\n return isValid;\n};\nCore.SetCache();\n\nCore.Cache.$document.ready(function () {\n Core.Engine.init();\n Core.Page({});\n});\n","Core.Config = {\n MobileWidth: 767, //set the max width of the mobile view port. options: integer\n TabletWidth: 1024, //set the max width for the tablet view port. optioins: integer\n Header: {\n SearchToggle: true, //turn the seach box toggle on or off. options: boolean (true / false)\n AutoScalingNavigation: false, //set navigation links to fill the space allowed by the parent container DESKTOP ONLY. options: boolean (true / false)\n\t\tMobileMenu: 'slideout', //set the type of mobile menu. options: string (slideOut / dropdown)\n\t\tMobileNavigationWidth: 767, //set the max width of the viewport which the mobile menu displays. options: integer\n MobileSubMenuToggle: true,\n MegaMenuDropdownDelay: 500 //navigation drop down delay (in ms)\n },\n Carousel: {\n DesktopSlideMargin: 10, //margin between slides on desktop. options: integer\n MobileSlideMargin: 18, //margin between slides on mobile. options: integer\n MobileSlideCount: 2, //slide count for mobile. options: integer\n\t\tPager: true, //show or hide paging control. options: boolean (true / false)\n\t\tAuto: false, //slides will automatically transition. options: boolean (true / false)\n Speed: 1000, //slide transition duration (in ms). options: integer\n\t\tPause: 4000, //the amount of time (in ms) between each auto transitions. options: integer\n InfiniteLoop: true, //if true, clicking \"Next\" while on the last slide will transition to the first slide and vice-versa. options: boolean (true / false)\n HideControlOnEnd: true, //\"Next\" control will be hidden on last slide and vice-versa (Only used when infiniteLoop: false). options: boolean (true / false)\n\t\tMoveSlides: 0, //number of slides to move on transition. This value must be >= minSlides, and <= maxSlides. If zero, the number of fully-visible slides will be used. options: integer\n PauseOnHover: true //pause when mouse hovers over carousel. options: boolean (true / false)\n },\n Slider: {\n Active: true, //turn the slider on or off. options: boolean (true / false)\n Speed: 1500, //slide transition duration (in ms). options: integer\n //Pause: 4000, //the amount of time (in ms) between each auto transitions. options: integer\n\t\tFx: 'scrollHorz' //set the type of transition effect. options: string (scrollHorz / fade / fadeout / none)\n },\n Forms: {\n InputStyling: true, //styling of radio buttons and checkboxes. options: boolean (true / false)\n DropdownStylingTouchDevices: true, //styling of select boxes for touch devices. options: boolean (true / false)\n DropdownStylingDesktop: true //styling of select boxes for non touch devices. options: boolean (true / false)\n },\n Accordions: {\n Active: true //turn the menu toggle on or off. options: boolean (true / false)\n },\n AccordionTabs: {\n Active: true //turn the accordion tabs on or off. options: boolean (true / false)\n },\n SearchAutoComplete: {\n\t\tMinCharacters: 3 //sets the minimum number of characters the user must type before a search is performed\n },\n StoreFinder: {\n MarkerIconPath: \"site.resource/images/location-pin.png\", //location of the google map icon marker. options: string\n MarkerIconPathNetwork: \"site.resource/images/location-pin-purple.png\", //location pin for Network Partner (purple)\n MapDetailZoomLevel: 15 //zoom level map appears on details page. options: integer\n },\n ProductDetail: {\n ZoomPopupWidth: 780, //width of zoom popup window. options: integer\n ZoomPopupHeight: 600, //height of zoom popup window. options: integer\n ZoomPanningSpeed: 400, //panning speed of zoom feature. options: integer\n Gallery: {\n SlideMargin: 12,\n SlideWidth: 90, //60,\n MinSlides: 2,\n MaxSlides: 5, //4,\n MoveSlides: 0,\n Auto: false,\n Speed: 1000,\n Pager: false,\n InfiniteLoop: false,\n HideControlOnEnd: true,\n UseCSS: false\n }\n },\n CartNotification: {\n PauseTime: 4000, //pause time of notication window before it closes. options: integer\n Width: 560, //width of notification window. options: integer\n Height: 270 //height of notification window. options: integer\n },\n ResponsiveTables: {\n Active: true //turn the responsive tables on or off. options: boolean (true / false)\n },\n FavouriteText: {\n Add: 'Add to favourites',\n Remove: 'Remove from favourites',\n ErrorTitle: 'Favourite button error'\n },\n POA: {\n Text: \"Enquire\"\n }\n};\n","Core.Engine = {\n _animWidth: 0,\n init: function () {\n var _config = Core.Config,\n toggleMenu = false,\n slideOutMenu = false;\n\n if (Core.Config.Header.MobileMenu == 'dropdown') {\n toggleMenu = true;\n }\n else {\n slideOutMenu = true;\n }\n\n $.vividCore({\n searchToggle: _config.Header.SearchToggle,\n navigationToggle: _config.Header.NavigationToggle,\n mobileToggleNavigation: toggleMenu,\n mobileSlideOutNavigation: slideOutMenu,\n navigationContainerSelector: \"#slide-navigation\",\n hasAutoScalingNavigation: _config.Header.AutoScalingNavigation,\n mobileNavigationMaxWidth: _config.Header.MobileNavigationWidth,\n mobileSubMenuToggle: _config.Header.MobileSubMenuToggle,\n cycleSlider: _config.Slider.Active,\n cycleSliderSlideSpeed: _config.Slider.Speed,\n cycleSliderTimeout: _config.Slider.Pause,\n cycleSliderEffect: _config.Slider.Fx,\n accordionTabs: _config.AccordionTabs.Active,\n accordions: _config.Accordions,\n formInputStyling: _config.Forms.InputStyling,\n dropdownStylingTouchDevices: _config.Forms.DropdownStylingTouchDevices,\n dropdownStylingDesktop: _config.Forms.DropdownStylingDesktop,\n responsiveTables: _config.ResponsiveTables.Active\n });\n\n $.featherlightGallery.prototype.afterContent = function() {\n var caption = this.$currentTarget.attr('title');\n this.$instance.find('.featherlight__caption, .featherlight-next, .featherlight-previous').remove();\n this.$instance.find('.featherlight-content').append(this.createNavigation('previous')).append(this.createNavigation('next'));\n $('
' + caption + '
').appendTo(this.$instance.find('.featherlight-content'));\n }\n\n this.updateAnimWidth();\n $(window).on('resize', this.updateAnimWidth);\n this.filtersToggle();\n this.productMenu();\n this.categoryMainMenu();\n this.searchFocus();\n this.autoCompleteSearch();\n this.addBlockClass();\n this.newsLetterSignup();\n this.globalToggles();\n this.backToTop();\n this.prefilter();\n this.navHasChildren();\n this.tabContentContainer();\n this.videoEmbedZindex();\n this.getCartSummary();\n this.cartQtyButtons();\n this.ctaBtns();\n this.disableFilters();\n this.printPage();\n this.oneImageSlider();\n this.oneImageBxSlider();\n this.categoryListing();\n this.contentAccordion();\n this.youtubeResize();\n this.youtubeMobile();\n this.quoteToggleHighlight();\n this.disableLinks();\n this.equalItemHeightFirstRun();\n $(window).on('resize', this.equalItemHeight);\n this.initResources();\n $(window).on('resize', this.reflowResources);\n this.menuSubHeight();\n this.storeListingClasses();\n this.megaMenuDelay();\n this.megaMenuTabletInit();\n this.swatchClick();\n this.swatchHover();\n this.filterSummaryInfo();\n this.getPdfResources();\n this.handleAlert();\n this.handleAddressAutocomplete();\n this.handleTopNavDropdown();\n\n //set defaults for form validation\n $.validator.setDefaults({ ignore: '' });\n $.validator.addMethod(\"validate-email\", function (value, element) {\n return this.optional(element) || /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$/i.test(value);\n }, \"Please enter a valid email address\");\n\n $.validator.addMethod(\"validate-password\", function (value, element) {\n return this.optional(element) || /^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,}$/.test(value);\n }, \"Passwords are at least 8 characters with uppercase letters, lowercase letters and at least one number\");\n\n $.validator.addMethod(\"greaterThan\", function (value, element, params) {\n if (!/Invalid|NaN/.test(new Date(value))) {\n return kendo.parseDate(value, \"dd/MM/yyyy\") > kendo.parseDate($(params).val(), \"dd/MM/yyyy\");\n }\n return isNaN(value) && isNaN($(params).val())\n || (Number(value) > Number($(params).val()));\n }, 'Must be greater than {0}');\n\n $.validator.addMethod(\"validate-date\", function (value, element) {\n var currentDate = new Date();\n var day = currentDate.getDate();\n var month = currentDate.getMonth() + 1;\n var year = currentDate.getFullYear();\n var todaysDate = kendo.parseDate((day + \"/\" + month + \"/\" + year), \"dd/MM/yyyy\");\n return this.optional(element) || (kendo.parseDate(value, \"dd/MM/yyyy\") !== null && kendo.parseDate(value, \"dd/MM/yyyy\") >= todaysDate);\n }, \"Please enter a valid date\");\n\n $.validator.addMethod('empty', function(value, element) {\n return (value === '');\n }, \"This field must remain empty.\");\n\n $.validator.addMethod('ukpostcode', function(value, element) {\n if (this.optional(element)) {\n return true;\n }\n\n return /^([A-Za-z][A-Ha-hJ-Yj-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2})$/.test(value);\n }, \"Please enter a valid post code\");\n\n /**\n * validate phone number according to australian format\n * Ref: https://ilikekillnerds.com/2014/08/regular-expression-for-validating-australian-phone-numbers-including-landline-and-mobile/\n * Ref: https://stackoverflow.com/questions/52127606/how-to-validate-input-field-phone-with-accurate-australian-format-using-jquery-v\n */\n jQuery.validator.addMethod(\"mobileau\", function(value, element) {\n var phoneExpression = /^(?=\\d{10}$)(04)\\d+/;\n\n if (!value) return true;\n\n if (value.match(phoneExpression)) {\n return true;\n }\n return false;\n }, jQuery.validator.messages.mobileau || \"Please specify a valid mobile number start with 04\");\n\n $.validator.classRuleSettings.className = { methodName: true };\n\n /**\n * @see addToCart.js\n */\n Core.AddToQuote.init();\n\n /**\n * @see carousels.js\n */\n new Core.Carousels();\n\n /**\n * @see productListing.js\n */\n Core.ProductListing.init();\n },\n updateAnimWidth: function() {\n Core.Engine._animWidth = $('.megaMenu__containers').actual('width') + 40;\n Core.Engine.categorySubResize(true);\n },\n homeToggle: function () {\n Core.Cache.$body.on('click', '.toggle-trigger', function () {\n $('.toggle-container').hide();\n $(this).next().show();\n });\n if (Core.IsMobile()) {\n Core.Cache.$body.on('click', '.toggle-trigger--mobile', function () {\n $('.toggle-container').hide();\n $(this).next().show();\n });\n }\n },\n filtersToggle: function () {\n Core.Cache.$body.on('click', '#filters-toggle', function () {\n $(this).parent().toggleClass('open');\n $(this).parent('.mobile-toggle-btn').siblings('.filters-toggle-wpr').toggle();\n });\n },\n productMenu: function () {\n var _$catListingBlock = $('.cataloguelistingblock'),\n _$catListItems = _$catListingBlock.find('ul.nav-panel__link-row');\n\n if (!Core.IsMobile()) {\n Core.Engine.categorySubResize();\n _$catListItems.first().children().children('a.slide-out').on('click', function (e) {\n e.preventDefault();\n var _$currentCat = $(this).parent().find('.category-sub');\n Core.Engine.categorySubResize();\n _$currentCat.show().addClass('active');\n _$currentCat.find('.cat-img').attr('src', _$currentCat.data('category-image'));\n\n _$currentCat.find('img').lazyload({\n event: \"lazyload\",\n effect: \"fadeIn\"\n })\n .trigger(\"lazyload\");\n\n _$catListingBlock.css('left', (Core.Engine._animWidth * -1) + 'px');\n });\n }\n\n var _$ctaContainer = _$catListingBlock.find('div.nav-panel__cta-row'),\n _$ctaListItems = _$catListingBlock.find(\"a.megaMenu__prod-cta[href='#']\"); // BACK buttons\n\n if (!Core.IsMobile()) {\n Core.Engine.categorySubResize();\n _$ctaListItems.on('click', function (e) { // BACK buttons on click\n e.preventDefault();\n var _$currentCat = $(this).parent().find('.category-sub');\n Core.Engine.categorySubResize();\n _$currentCat.show().addClass('active');\n _$currentCat.find('.cat-img').attr('src', _$currentCat.data('category-image'));\n\n _$currentCat.find('img').lazyload({\n event: \"lazyload\",\n effect: \"fadeIn\"\n })\n .trigger(\"lazyload\");\n\n _$catListingBlock.css('left', (Core.Engine._animWidth * -1) + 'px');\n });\n }\n\n _$catListingBlock.find('.back').on('click', function (e) {\n e.preventDefault();\n _$catListingBlock.css('left', 0);\n setTimeout(function () {\n $('.category-sub.active').removeClass('active').hide();\n }, 600);\n });\n },\n categoryMainMenu: function () {\n $('.slide-out').on('click', function(e) {\n if (Core.IsMobile()) {\n e.preventDefault();\n var url = $(this).data('url');\n if (url) {\n location.href = $(this).data('url');\n } else {\n $(this).find(\".toggle-icon\").trigger('click');\n }\n }\n });\n },\n categorySubResize: function(notransition) {\n notransition = notransition === true ? notransition : false;\n\n $('ul.nav-panel__link-row .category-sub').each(function() {\n if (notransition) {\n $(this).addClass('notransition');\n }\n $(this).width((Core.Engine._animWidth - 40) + 'px').css('left', (Core.Engine._animWidth - 10) + 'px');\n if (notransition) {\n $(this)[0].offsetHeight;\n $(this).removeClass('notransition');\n }\n });\n\n $('div.nav-panel__cta-row .category-sub').each(function() {\n if (notransition) {\n $(this).addClass('notransition');\n }\n $(this).width((Core.Engine._animWidth - 40) + 'px').css('left', (Core.Engine._animWidth * 0.350839) + 'px');\n if (notransition) {\n $(this)[0].offsetHeight;\n $(this).removeClass('notransition');\n }\n });\n\n if ($('.cataloguelistingblock').css('left') && parseInt($('.cataloguelistingblock').css('left')) !== 0) {\n if (notransition) {\n $('.cataloguelistingblock').addClass('notransition');\n }\n $('.cataloguelistingblock').css('left', (Core.Engine._animWidth * -1) + 'px');\n if (notransition) {\n $('.cataloguelistingblock').each(function() {\n $(this)[0].offsetHeight;\n })\n $('.cataloguelistingblock').removeClass('notransition');\n }\n }\n },\n logout: function () {\n $('#logout').on('click', function (e) {\n e.preventDefault();\n\n $.ajax({\n url: '/account/logout',\n type: 'GET',\n success: function (data) {\n if (data) {\n location.href = '/';\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n });\n },\n newsLetterSignup: function () {\n var _$newsletterEmailBtn = $('#newsletter-subscription-btn'),\n _$emailAddress = $(\"#newsletter-subscription\"),\n _$newsletterForm = $(\"#newsletter-subscription-form\"),\n _$newsletterResult = $(\"p.error\"),\n _$buttonKeys = { \"EnterKey\": 13 };\n\n _$newsletterEmailBtn.on('click', function (e) {\n e.preventDefault();\n _$newsletterResult.html(\"\");\n var _emailAddress = _$emailAddress.val();\n if (_emailAddress.length > 0) {\n $('#loading-overlay-nl').show();\n $.ajax({\n url: '/edm/newslettersignup',\n type: 'POST',\n dataType: \"json\",\n data: _$emailAddress.serialize(),\n success: function (data) {\n $('#loading-overlay-nl').hide();\n if (data.Result !== null) {\n if (data.Result.toLowerCase() === \"ok\") {\n _$emailAddress.val('');\n _$newsletterResult.html(data.SuccessMessage);\n } else {\n _$newsletterResult.html(data.ErrorMessage);\n }\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n $('#loading-overlay-nl').hide();\n }\n });\n } else {\n _$newsletterResult.html('Please enter an email address to signup to the newsletter');\n }\n });\n\n _$newsletterForm.on('keypress', function (e) {\n if (e.which == _$buttonKeys.EnterKey) {\n var defaultButtonId = $(this).attr(\"defaultbutton\");\n $(\"#\" + defaultButtonId).trigger('click');\n return false;\n }\n });\n },\n searchFocus: function () {\n //$(\"#search-site\").blur(function (e) {\n // if (e.relatedTarget == null || e.relatedTarget.id !== 'btn-search-site') {\n // $(\"#search-site\").val('');\n // }\n //});\n //$(\"#search-site\").focus(function (e) {\n // $(\"#search-site\").val('');\n //});\n },\n autoCompleteSearch: function () {\n var _$input = $(\"#search-site\"),\n _$form = $('#frm-site-search'),\n _$buttonKeys = { \"EnterKey\": 13 };\n\n if (_$input.length === 0 )\n return true;\n\n var dataSource = new kendo.data.DataSource({\n serverFiltering: true,\n transport: {\n read: function (request, response) {\n var _$loading = _$form.children('.loading');\n var _$autocomplete = $(\"#search-site\").data(\"kendoAutoComplete\");\n\n var _$filterInput = _$input.val().replace(/[|;$%@\"<>(),?+*:]/g, \"\");\n\n _$loading.show();\n\n // https://run.mocky.io/v3/df4afccf-71ad-4282-a1d9-37e25fd3f54c\n $.getJSON('/sitesearch/term/?searchterm=' + encodeURI(_$filterInput), function (json) {\n request.success(json.Results);\n _$loading.hide();\n if (_$filterInput == '') {\n _$autocomplete.list.hide();\n }\n });\n }\n }\n });\n\n var autocomplete = _$input.kendoAutoComplete({\n dataTextField: \"Name\",\n dataSource: dataSource,\n // minLength: Core.Config.SearchAutoComplete.MinCharacters,\n template: kendo.template($(\"#tpl-auto-search\").html()),\n change: function (e) {\n this.dataSource.read();\n if (_$input.is(\":focus\")) {\n var _$filterInput = _$input.val().replace(/[|;$%@\"<>(),?+*:]/g, \"\");\n if (_$filterInput !== '') {\n var _url = _$form.data('url') + '#?searchTerm=' + encodeURI(_$filterInput);\n window.location.href = _url;\n }\n }\n },\n filtering: function(e) {\n var filter = e.filter;\n var _$filterInput = filter.value.replace(/[|;$%@\"<>(),?+*:]/g, \"\");\n if (_$filterInput.length < Core.Config.SearchAutoComplete.MinCharacters) {\n //prevent filtering if the filter does not value\n // this.list.hide();\n e.preventDefault();\n }\n },\n // close: function(e, o, i) {\n // e.preventDefault(); // prevent close for debugging\n // },\n open: function (e) {\n },\n popup: {\n origin: \"bottom center\",\n position: \"top center\"\n }\n }).data(\"kendoAutoComplete\");\n\n if(autocomplete) {\n autocomplete.popup.element.addClass('k-popup-autocomplete');\n }\n\n $('#search-site-list').append('VIEW ALL RESULTS');\n\n $('#view-all-results, #btn-search-site').on('click', function (e) {\n e.preventDefault();\n var _$autocomplete = $(\"#search-site\").data(\"kendoAutoComplete\");\n var _$filterInput = _$input.val().replace(/[|;$%@\"<>(),?+*:]/g, \"\");\n\n if (_$filterInput !== '') {\n var _url = _$form.data('url') + '#?searchTerm=' + encodeURI(_$filterInput);\n window.location.href = _url;\n _$autocomplete.close();\n }\n });\n\n\n _$form.on('keypress', function (e) {\n if (e.which == _$buttonKeys.EnterKey) {\n var defaultButtonId = $(this).attr(\"defaultbutton\");\n $(\"#\" + defaultButtonId).trigger('click');\n return false;\n }\n });\n },\n addBlockClass: function () {\n $('.cta').parent('.block').addClass('no-padding');\n $('.business-units').parent('.block').addClass('no-padding');\n $('.no-padding').closest('.columns').addClass('no-padding');\n },\n globalToggles: function () {\n $('.toggle-trigger').on('click', function (e) {\n e.preventDefault();\n var _$this = $(this);\n _$this.toggleClass('filter-opened');\n _$this.siblings('.toggle-container').slideToggle(400);\n });\n if (Core.IsMobile()) {\n $('.toggle-trigger--mobile').on('click', function (e) {\n e.preventDefault();\n var _$this = $(this);\n _$this.toggleClass('filter-opened');\n _$this.siblings('.toggle-container').slideToggle(400);\n });\n }\n },\n backToTop: function () {\n function checkPosition() {\n if (Core.Cache.$window.scrollTop() > 200) {\n Core.Cache.$backToTop.fadeIn(500);\n } else {\n Core.Cache.$backToTop.fadeOut(300);\n }\n }\n\n // Show or hide the sticky footer button\n Core.Cache.$window.on('scroll', checkPosition);\n\n // Animate the scroll to top\n Core.Cache.$backToTop.on('click', function (e) {\n e.preventDefault();\n Core.Cache.$body.add(Core.Cache.$html).animate({ scrollTop: 0 }, 300);\n });\n\n checkPosition();\n },\n prefilter: function () {\n var _$prefilter = $('#prefilter');\n\n if (_$prefilter.length > 0) {\n if (!window.location.hash) {\n var _prefilterVal = _$prefilter.val();\n if (_prefilterVal !== '') {\n window.location.hash = _prefilterVal;\n }\n }\n }\n },\n navHasChildren: function () {\n $('.megaMenu__nav--link').has('.megaMenu__containers').addClass('has-children');\n },\n tabContentContainer: function () {\n $('.product-extras__container').wrapInner( \"
\" );\n },\n //fix z-index mega menu issue on IE8\n videoEmbedZindex: function () {\n $(\"iframe\").each(function(){\n var ifr_source = $(this).attr('src');\n if (ifr_source) {\n var wmode = \"wmode=transparent\";\n if (ifr_source.indexOf('?') != -1) $(this).attr('src', ifr_source + '&' + wmode);\n else $(this).attr('src', ifr_source + '?' + wmode);\n }\n });\n },\n getCartSummary: function (e) {\n Core.Cache.$miniCartTotal.hide();\n $.ajax({\n url: '/cart/getcounters',\n type: 'GET',\n dataType: \"json\",\n success: function (data) {\n if (data !== null) {\n if (data.cartItemsCount !== null && data.cartItemsCount != \"0\") {\n Core.Cache.$miniCartTotal.html(data.cartItemsCount);\n Core.Cache.$miniCartTotal.show();\n }\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n //alert(thrownError);\n }\n });\n },\n cartQtyButtons: function () {\n Core.Cache.$body.on('click', '.k-icon', function () {\n $(this).trigger('focus');\n });\n },\n ctaBtns: function () {\n $('.btn-cta .arrow-box').wrapInner( '' );\n },\n disableFilters: function () {\n setTimeout(function () {\n $('.checker.disabled').closest('label').addClass('disabled');\n }, 1000);\n },\n printPage: function () {\n $('.print').on('click', function (e) {\n e.preventDefault();\n window.print();\n });\n },\n oneImageSlider: function () {\n $('.slider').each(function() {\n if ($('.slide', this).length <= 1) {\n $('.slider-btn, .slider-paging').hide();\n }\n });\n },\n oneImageBxSlider: function () {\n setTimeout(function () {\n $('.carousel').each(function() {\n var slides = $(this).children('li:not(.bx-clone)').length;\n if(slides <= 4) {\n //need to add this to the CSS to override the important property\n $(this).parents('.bx-wrapper').children('.bx-controls').attr('style', 'display: none !important');\n }\n });\n }, 300);\n },\n categoryListing: function () {\n var _$categorylist = $('.category__list');\n _$categorylist.find('.category__image').lazyload({\n event: \"lazyload\",\n effect: \"fadeIn\"\n })\n .trigger(\"lazyload\");\n },\n contentAccordion: function () {\n var _$footerContent = $('.footer .generic-content');\n _$footerContent.find('h2').addClass('toggle-trigger').siblings().wrap('
');\n _$footerContent.find('h2').on('click', function (e) {\n e.preventDefault();\n var _$this = $(this);\n //_$this.toggleClass('filter-opened').siblings('.toggle-container').slideToggle(400);\n });\n },\n youtubeResize: function () {\n // Find all YouTube videos\n var $allVideos = $(\"iframe[src^='http://www.youtube.com']\"),\n\n // The element that is fluid width\n $fluidEl = $(\".fancybox-inner\");\n\n // Figure out and save aspect ratio for each video\n $allVideos.each(function() {\n\n $(this)\n .data('aspectRatio', this.height / this.width)\n\n // and remove the hard coded width/height\n .removeAttr('height')\n .removeAttr('width');\n\n });\n\n // When the window is resized\n // (You'll probably want to debounce this)\n $(window).on('resize', function() {\n\n var newWidth = $fluidEl.width();\n\n // Resize all videos according to their own aspect ratio\n $allVideos.each(function() {\n\n var $el = $(this);\n $el\n .width(newWidth)\n .height(newWidth * $el.data('aspectRatio'));\n\n });\n\n Core.Engine.youtubeMobile();\n\n // Kick off one resize to fix all videos on page load\n }).trigger('resize');\n },\n youtubeMobile: function () {\n if (Core.IsMobile()) {\n $('.product-details__gallery-actions .icon-play').removeClass('fancybox-media');\n } else {\n $('.product-details__gallery-actions .icon-play').addClass('fancybox-media');\n }\n },\n quoteToggleHighlight: function () {\n $(\".k-icon\").on('keypress', function() {\n $(this).closest('.k-master-row').toggleClass('active');\n });\n },\n //dynamic tab width\n countAccordionTabs: function() {\n var amount = $('.accordion-tabs > li').length;\n var tabWidth = 100 / parseFloat(amount);\n if (!Core.IsMobile()) {\n $('.product-extras__tab, .tab-block-container .accordion-tabs .tab, .tabsblock .accordion-tabs .tab').css('width', tabWidth + \"%\");\n if (amount == 1) {\n $('.product-extras__tab, .tab-block-container .accordion-tabs .tab, .tabsblock .accordion-tabs .tab').addClass('single-tab');\n }\n }\n },\n disableLinks: function () {\n $('.disabled').on('click', function (e) {\n e.preventDefault();\n });\n },\n equalItemHeightFirstRun: function() {\n if (!Core.IsMobile()) {\n $('.equal-height').imagesLoaded(Core.Engine.equalItemHeight);\n }\n },\n equalItemHeight: function() {\n if (!Core.IsMobile()) {\n $('.equal-height').removeClass('equal-height-initialised').height('auto');\n $('.equal-height').each(function() {\n if (!$(this).hasClass('.equal-height-initialised')) {\n var $siblings = $(this).add($(this).siblings('.equal-height'));\n var tallestHeight = $siblings.map(function (i, el) {\n return $(el).actual('height');\n }).get();\n $siblings.height(Math.max.apply(this, tallestHeight)).addClass('equal-height-initialised');\n }\n });\n }\n },\n menuSubHeight: function() {\n setTimeout(function () {\n var maxHeight = -1;\n var menuItem = $('#main-navigation .megaMenu .megaMenu__nav .megaMenu__nav--link:first-child');\n var menuCategoryMenu = $('#main-navigation .megaMenu .megaMenu__nav .megaMenu__nav--link:first-child .category-sub');\n\n //maxHeight = maxHeight > menuCategoryMenu.actual('height') ? maxHeight : menuCategoryMenu.actual('height');\n\n menuCategoryMenu.each(function() {\n maxHeight = maxHeight > $(this).actual('height') ? maxHeight : $(this).actual('height');\n });\n\n\n if (!Core.IsMobile()) {\n if (menuItem.children('.megaMenu__containers').height() < maxHeight) {\n menuItem.children('.megaMenu__containers').height(maxHeight);\n }\n };\n }, 300);\n },\n storeListingClasses: function () {\n setTimeout(function () {\n $('#store-results li:first-child, #store-results li:nth-child(4n+1)').addClass('no-margin');\n }, 1000);\n },\n megaMenuDelay: function () {\n if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {\n if (!Core.IsMobile() && !Core.IsTablet()) {\n var dropdownDelay = 250;\n if (Core.Config.Header.MegaMenuDropdownDelay) {\n dropdownDelay = Core.Config.Header.MegaMenuDropdownDelay;\n }\n var openDropdownTimeout;\n\n function megaMenuHoverOn(megaMenuId) {\n if ($(window).width() > Core.Config.Header.MobileNavigationWidth) {\n $(megaMenuId).children('.megaMenu__containers').show();\n }\n }\n\n function megaMenuOff(megaMenuId) {\n $(megaMenuId).children('.megaMenu__containers').hide();\n }\n\n $('.megaMenu__nav .megaMenu__nav--link').each(function () {\n var $this = $(this);\n var megaMenuId = $this\n if (megaMenuId != undefined) {\n $this.on('mouseenter', function () {\n openDropdownTimeout = setTimeout(function () {\n megaMenuHoverOn(megaMenuId);\n }, dropdownDelay);\n }).on('mouseleave', function () {\n if (openDropdownTimeout)\n clearTimeout(openDropdownTimeout);\n megaMenuOff(megaMenuId);\n });\n }\n });\n }\n }\n },\n megaMenuTabletInit: function() {\n if (!Core.IsMobile() && Core.IsTablet()) {\n $(document).on('touchend', '.megaMenu__nav--link.has-children > a', function(e) {\n var o = e.originalEvent;\n var isTouch = o instanceof TouchEvent && o.changedTouches.length === 1;\n if (isTouch) {\n if (!$(this).hasClass('hover')) {\n e.preventDefault();\n e.stopPropagation();\n $(this).addClass('hover');\n $(document).one('touchend', '*:not(\".megaMenu__nav--link.has-children\")', Core.Engine.closeMegaMenu);\n }\n }\n });\n $(document).on('blur', '.megaMenu__nav--link.has-children > a.hover', function(e) {\n $(this).removeClass('hover');\n });\n }\n },\n closeMegaMenu: function(e) {\n var o = e.originalEvent;\n var isTouch = o instanceof TouchEvent && o.changedTouches.length === 1;\n if (isTouch) {\n e.stopPropagation();\n $('.megaMenu__nav--link.has-children > a.hover').trigger('blur');\n }\n },\n swatchClick: function() {\n $('.swatch').on('click', function() {\n var $this = $(this);\n var $mainImageWrap = $('#main-img');\n var $mainImage = document.querySelector('img.main-image');\n var imageUrl = $this.data('image-url');\n\n // on image load, remove loading\n $mainImage.addEventListener('load', function() {\n $mainImageWrap.removeClass('is-loading');\n });\n\n if (imageUrl) {\n $mainImageWrap.addClass('is-loading');\n $mainImage.src = imageUrl;\n }\n })\n },\n swatchHover: function () {\n if (Core.IsMobile() || Core.IsTablet()) {\n $('.swatch').each(function() {\n var $this = $(this);\n var swatch = $this.children('img');\n var $swatchzoom = $('
');\n $this.append($swatchzoom);\n $this.on('click', function(ev) {\n ev.stopPropagation();\n // $(document).off('click');\n if ($swatchzoom.hasClass('show')) {\n $swatchzoom.removeClass('show');\n } else {\n $swatchzoom.addClass('show');\n $(document).one('click touchstart', $('*').not($this), function(e) {\n $swatchzoom.removeClass('show');\n });\n }\n });\n });\n } else {\n $('.swatch')\n .on('mouseenter', function() {\n var $this = $(this);\n var swatch = $this.children('img');\n $this.append('
');\n })\n .on('mouseleave', function() {\n var $this = $(this);\n $this.children('.swatch-zoom').remove();\n });\n }\n },\n filterSummaryInfo: function () {\n if (Core.IsMobile()) {\n Core.Cache.$body.on('click', '.mobile-toggle-btn', function () {\n //var filterSummary = $('#filter-summary-info').html();\n //$('#filters-summary-info').html(filterSummary);\n });\n }\n },\n /*galleryZoom: function () {\n if($('.main-image').data('zoom-image') != ''){\n $('.main-image').elevateZoom({\n zoomType : \"inner\",\n zoomWindowFadeIn: 300,\n zoomWindowFadeOut: 300\n });\n }\n },*/\n formDropdownStyling: function () {\n if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {\n if (Core.Config.Forms.DropdownStylingDesktop) {\n $(\"select:not(.kendo-ignore,.kendo-initialized)\").kendoDropDownList().addClass('kendo-initialized');\n }\n } else {\n if (Core.Config.Forms.DropdownStylingTouchDevices) {\n $(\"select:not(.kendo-ignore,.kendo-initialized)\").kendoDropDownList().addClass('kendo-initialized');\n }\n }\n },\n initResources: function() {\n $('.resource-items').each(function(i, el) {\n $(el).imagesLoaded(function initialiseResources () {\n Core.Engine.resourcesEqualHeight(el);\n Core.Engine.closestAccordionTabHeight(el);\n });\n });\n Core.Engine.accordionTabHeight();\n },\n reflowResources: function(context) {\n if (typeof context === \"undefined\" || typeof context.target !== \"undefined\" || $(context).length === 0) {\n context = $('body')[0];\n }\n $('.resource-items .grid-item', context).css('height', 'auto'); // first make sure they're in their natural height\n $('.resource-items', context).each(function reflowingResources(i, el) {\n Core.Engine.resourcesEqualHeight(el);\n Core.Engine.closestAccordionTabHeight(el);\n });\n Core.Engine.accordionTabHeight();\n },\n closestAccordionTabHeight: function(el) {\n if (!Core.IsMobile()) {\n $(el).closest('.accordion-tabs .tab > .container.open').each(function() {\n $(this).height($($(this).children('div')[0]).actual('height'));\n });\n $(el).closest('.accordion-tabs').each(function() {\n $(this).height($($(this).find('.tab.active > .container.open > div')[0]).actual('height') + 160);\n });\n }\n },\n accordionTabHeight: function(el) {\n if (!Core.IsMobile()) {\n // resize accordion tab height according to the content of the active one\n $('.accordion-tabs .tab > .container.open').each(function() {\n $(this).height($($(this).children('div')[0]).actual('height'));\n });\n $('.accordion-tabs').each(function() {\n $(this).height($($(this).find('.tab.active > .container.open > div')[0]).actual('height') + 160);\n });\n } else {\n $('.accordion-tabs .tab > .container.open, .accordion-tabs').css('height', 'auto');\n }\n },\n resourcesEqualHeight: function(el) {\n var maxHeight = -1;\n $('.grid-item', el).each(function() {\n if (maxHeight < $(this).height()) {\n maxHeight = $(this).height();\n }\n })\n $('.grid-item', el).height(maxHeight + 'px');\n },\n getPdfResources: function(e) {\n // this is so hacky and tricky cause we can't change the html from editor (category section)\n var $catSection = $('#category-section');\n\n var $el = $('.resource-search');\n var $input = $el.find('.resource-search-input');\n var $submitBtn = $el.find('.resource-search-submit-btn');\n var $clearBtn = $el.find('.resource-search-clear-btn');\n var $linkWrap = $('#category-section .generic-content').find('table');\n\n var mainCategories = $('.category-title').map((i, obj) => $(obj).text().replace(/\\s/g,'').toLowerCase());\n var categoriesResult = [];\n var noresult = [];\n\n\n // remove whitespaces; override table style\n var cleanup = function() {\n $linkWrap.css('height', 'auto');\n $linkWrap.find('tbody tr').css('height', 'auto');\n $linkWrap.find('tbody td').css({\n 'vertical-align': 'top',\n 'height': 'auto'\n });\n\n $linkWrap.find('tbody td p').map(function() {\n var $this = $(this);\n $this.find('br').remove();\n this.innerHTML = $this.html().replace(/ /g, '');\n if ($this.html().length === 0) $this.remove();\n });\n };\n\n var reset = function() {\n $('.resourcelistingblock').hide(); // hide all rows first\n $('.resourcelistingblock .resource-items .grid-item').hide(); // hide all items first\n // reset highlight\n $('.resourcelistingblock .resource-items .grid-item .doc h3').map(function(index, item) {\n var originalTitle = $(item).data('title');\n if (originalTitle) {\n $(item).html(originalTitle);\n }\n });\n\n $('.resource-search-no-results').remove();\n };\n\n // green links under the serach box\n var handleCategorySection = function(cat) {\n // get all names, make into array of string\n mainCategories.map(function(i, item) {\n var foundCat = cat.find(o => o.name.replace(/\\s/g,'').toLowerCase() === item);\n if (foundCat) {\n foundCat.subcategories.map(function(subcat) {\n categoriesResult.push(subcat.name.toLowerCase());\n });\n } else {\n noresult.push(item.replace(/\\s/g,'').toLowerCase());\n }\n });\n\n // map each links element\n // selector is a bit complex since the content doesn't have specific class\n $linkWrap.find('td p a').map(function(i, el) {\n var $link = $(el);\n // check if it's Categories title or not\n if ($link.closest('strong').length === 0) {\n // if (categoriesName.indexOf($link.text().toLowerCase()) >= 0) {\n // check if category contains string eg: bathroom in Bathroom User Documents\n if (categoriesResult.find(obj => obj.includes($link.text().toLowerCase()))) {\n $link.show();\n $link.next('br').show();\n } else {\n $link.hide();\n $link.next('br').hide();\n }\n } else {\n if (noresult.indexOf($link.text().replace(/\\s/g,'').toLowerCase()) >= 0) {\n $link.closest('td').append('
No results
');\n }\n }\n });\n };\n\n var handleItems = function(subcat) {\n // show/hide categories\n var subcatId = $('.resourcelistingblock .resources-container').find('h2#' + subcat.id);\n if (subcatId) {\n $(subcatId).closest('.resourcelistingblock').show();\n }\n\n // show/hide items\n subcat.Resources.map(function(item) {\n var itemId = $('.resourcelistingblock .resource-items').find('.grid-item#' + item.id);\n if (itemId) {\n // highlight keyword\n var $title = $(itemId).find('.doc h3');\n var text = $title.text();\n var keyword = $input.val();\n var index = text.toLowerCase().indexOf(keyword.toLowerCase());\n $title.data('title', text);\n if (index >= 0) {\n // var addSpace = text.substr(index + keyword.length + 1, 1) === ' '; // check if next character is space or not\n var innerHTML = text.substring(0, index) + \"\" + text.substring(index, index + keyword.length) + \"\" + text.substring(index + keyword.length);\n $title.html(innerHTML);\n }\n\n $(itemId).show();\n }\n });\n\n // show hide item sections (row)\n $('.category-title').map(function(i, obj) {\n var $title = $(obj);\n var foundCat = noresult.find(o => o === $title.text().replace(/\\s/g,'').toLowerCase());\n if (foundCat) {\n $title.hide();\n } else {\n $title.show();\n }\n });\n };\n\n var doSearch = function() {\n var keyword = $input.val();\n if (!keyword) return;\n\n $catSection.addClass('is-loading');\n categoriesResult = [];\n noresult = [];\n\n // /sitesearch/Resources/?searchTerm=BoardingPass\n // https://run.mocky.io/v3/cd51d9c0-ec76-4920-80f3-6be9ac2fb17f\n // no results: https://run.mocky.io/v3/43b67612-b46d-4255-9795-045937ad1d8c\n $.getJSON('/sitesearch/Resources/?searchterm=' + encodeURI(keyword), function (resp) {\n var categories = resp.categories;\n\n reset();\n handleCategorySection(categories);\n if (categories.length > 0) {\n categories.map(function(cat) {\n // check subcategories\n cat.subcategories.map(function(subcat) {\n handleItems(subcat);\n });\n });\n } else {\n $('.category-title').hide();\n }\n $catSection.removeClass('is-loading');\n });\n };\n\n $input.on('keyup', function(e) {\n var key = e.keyCode || e.which;\n // capture enter\n if (key == 13){\n doSearch();\n }\n\n // determine to show search/clear icon\n if ($input.val().length > 0) {\n $clearBtn.show();\n } else {\n $clearBtn.hide();\n }\n });\n\n $submitBtn.on('click', function() {\n doSearch();\n });\n\n $clearBtn.on('click', function() {\n $input.val('');\n $clearBtn.hide();\n $('.resource-search-no-results').remove();\n $('.generic-content').find('table tbody td p a').show(); // show all links section\n $('.resourcelistingblock .resource-items .grid-item').show(); // show as per page load\n $('.resourcelistingblock').show(); // show as per page load\n $('.category-title').show();\n });\n\n cleanup();\n $catSection.addClass('is-initialized');\n },\n\n handleAlert: function() {\n var LS_ALERT = 'aidacare.alertBlock.closed';\n var currentLsAlert = localStorage.getItem(LS_ALERT) || [];\n\n if (currentLsAlert.length > 0) {\n currentLsAlert = JSON.parse(currentLsAlert);\n }\n\n $('[data-dismiss=\"alert\"]').on('click', function() {\n var $this = $(this);\n var $parent = $this.closest('.alert');\n if ($parent?.length > 0) {\n var id = $parent.data('id');\n currentLsAlert.push(id);\n\n if (currentLsAlert.length > 0) {\n localStorage.setItem(LS_ALERT, JSON.stringify(currentLsAlert));\n }\n $parent.remove();\n }\n\n });\n\n // remove alert if the value is on localstorage, else show alert\n $('.alert.alert-dismissible').each(function(i, obj) {\n var $this = $(this);\n var id = $(obj).data('id');\n if (currentLsAlert.find(o => o === id)) {\n $this.remove();\n } else {\n $this.removeClass('d-none');\n }\n });\n },\n\n handleAddressAutocomplete: function() {\n var _$input = $('.addressAutocomplete-input');\n var fetchUrl = _$input.closest('.addressAutocomplete').data('fetch-api');\n\n if (_$input && _$input.length > 0 && !fetchUrl) {\n console.log('addressAutocomplete :: Please provide \"data-fetch-api\" attribute to addressAutocomplete element');\n return;\n }\n\n _$input.map(function(i, inp) {\n var $inp = $(inp);\n var selectedVal;\n var autocomplete = $inp.data('kendoAutoComplete');\n\n if (autocomplete) return;\n\n var dataSource = new kendo.data.DataSource({\n serverFiltering: true,\n transport: {\n read: function (request, response) {\n var url = `${fetchUrl}?query=${$inp.val()}`;\n\n $.getJSON(url, function (response) {\n if (response && Array.isArray(response) && response.length > 0) {\n response.map(function(item) {\n // add new prop to combine suburb, state, and postcode\n item.customText = `${item.locality}, ${item.state}, ${item.postcode}`;\n return item;\n })\n }\n request.success(response);\n });\n },\n },\n });\n\n autocomplete = $inp.kendoAutoComplete({\n dataTextField: \"customText\",\n dataSource: dataSource,\n minLength: Core.Config.SearchAutoComplete.MinCharacters,\n template: `\n
\n #:locality#, #:state#, #:postcode#\n
\n `,\n change: function (e) {\n var obj = e.sender;\n // compare current val with selected, if different, call api\n if (obj.value() !== $inp.val()) {\n this.dataSource.read();\n }\n },\n select: function(e) {\n var $el = $(e.sender.element);\n var $parent = $el.closest('.addressAutocomplete');\n var item = e.dataItem;\n selectedVal = item.customText;\n\n $parent.find('.addressAutocomplete-suburb').val(item.locality);\n $parent.find('.addressAutocomplete-state').val(item.state);\n $parent.find('.addressAutocomplete-postcode').val(item.postcode);\n },\n filtering: function(e) {\n var filter = e.filter;\n var _$filterInput = filter.value.replace(/[|;$%@\"<>(),?+*:]/g, \"\");\n if (_$filterInput.length < Core.Config.SearchAutoComplete.MinCharacters) {\n // prevent filtering if the filter does not have value\n e.preventDefault();\n }\n },\n }).data(\"kendoAutoComplete\");\n\n $inp.on('blur', function() {\n // force to select prev selection\n var curVal = $inp.val();\n if (curVal !== selectedVal) {\n $inp.val(selectedVal);\n }\n });\n\n if(autocomplete) {\n autocomplete.popup.element.addClass('k-popup-autocomplete addressAutocomplete-popup');\n }\n });\n },\n\n handleTopNavDropdown: function() {\n $(\".top-nav-dropdown\").kendoMenu();\n },\n};\n","Core.Page.SetCache = function() {\n this.Cache = {\n productDetail: document.querySelector('#product-detail'),\n productListing: document.querySelector('#product-listing'),\n compare: document.querySelector('#compare'),\n cart: document.querySelector('#cart'),\n dashboard: document.querySelector('#dashboard'),\n portalCheckout: document.querySelector('#portal-checkout'),\n portalPlayoutCart: document.querySelector('#cart-playout'),\n portalLogin: document.querySelector('#portal-login'),\n clientAddressBook: document.querySelector('#client-address-book'),\n newsEventDetails: document.querySelector('#news-event-details'),\n newsEventListing: document.querySelector('#news-event-listing'),\n storeFinder: document.querySelector('#store-finder'),\n storeDetails: document.querySelector('#store-details'),\n myAccount: document.querySelector('#my-account'),\n login: document.querySelector('#login'),\n register: document.querySelector('#register'),\n xform: document.querySelector('.xform'),\n editDetails: document.querySelector('#edit-details'),\n editPassword: document.querySelector('#edit-password'),\n editEmail: document.querySelector('#edit-email'),\n myQuotes: document.querySelector('#my-quote'),\n myRentals: document.querySelector('#my-rental'),\n myTrials: document.querySelector('#my-trial'),\n gallery: document.querySelector('.productgalleryblock'),\n finalisePayment: document.querySelector('.finalisePayment'),\n fileUploadList: document.querySelectorAll('.fileUpload'),\n deliveryCounter: document.querySelector('.deliveryCounter'),\n checkoutAvoidDuplicate: document.querySelector('.checkoutAvoidDuplicate'),\n mapList: document.querySelectorAll('.mapItem'),\n myAccountSupplierInstaller: document.querySelector('.myAccountSupplierInstaller'),\n mfaLogin: document.querySelector('.mfaLogin'),\n };\n};\n\nCore.Page.init = function(){\n Core.Util.addIEClasses($('body'));\n Core.Util.isOnMouse();\n\n this.SetCache();\n\n /**\n * @see productDetail.js\n */\n if (this.Cache.productDetail) {\n Core.ProductDetail.init();\n }\n\n /**\n * @see cart.js\n */\n if (this.Cache.cart) {\n Core.Cart.init();\n }\n\n /**\n * @see dashboard.js\n */\n if (this.Cache.dashboard) {\n Core.Dashboard.init();\n }\n\n /**\n * @see portalCheckout.js\n * @see portalCheckout.js\n */\n if (this.Cache.portalCheckout) {\n Core.PortalAccordion.init();\n Core.PortalCheckout.init();\n Core.PortalCheckoutCheckboxToggle.init();\n Core.PortalPickupStores.Locator.init();\n Core.PortalCheckoutClientSearch(document.querySelector('[data-client-search]'));\n }\n\n /**\n * @see portalCheckout.js\n */\n\n if (this.Cache.portalPlayoutCart) {\n Core.PortalPlayoutCart.init();\n Core.CartFlyout.init();\n }\n\n\n /**\n * @see portalLogin.js\n */\n if (this.Cache.portalLogin) {\n Core.PortalLogin.init();\n }\n\n /**\n * @see clientAddressBook.js\n */\n if (this.Cache.clientAddressBook) {\n Core.ClientAddressBook.init();\n }\n\n //image & 360 gallery\n if (this.Cache.gallery) {\n Core.Config.ProductDetail.Gallery.MaxSlides = 3;\n Core.ProductDetail.init();\n }\n\n /**\n * @see productCompare.js\n */\n if (this.Cache.compare) {\n Core.ProductCompare.init();\n }\n\n /**\n * @see newsEvents.js\n */\n if (this.Cache.newsEventListing) {\n Core.NewsEvents.Listing();\n }\n\n if (this.Cache.newsEventDetails) {\n Core.NewsEvents.Details();\n }\n\n /**\n * @see stores.js\n */\n if (this.Cache.storeFinder) {\n Core.Stores.Locator.init();\n }\n\n if (this.Cache.storeDetails) {\n Core.Stores.Details.init();\n }\n\n /**\n * @see account.js\n */\n if (this.Cache.myAccount) {\n Core.Account.myAccount();\n }\n\n if (this.Cache.editDetails || this.Cache.editPassword || this.Cache.editEmail || this.Cache.login || this.Cache.register || this.Cache.xform) {\n Core.Account.form();\n }\n\n if (this.Cache.myQuotes){\n Core.Account.dataTable('/account/quotes', 'Quote ID', false);\n }\n\n if (this.Cache.myRentals){\n Core.Account.dataTable('/account/rentals', 'Rental ID', false);\n }\n\n if (this.Cache.myTrials){\n Core.Account.dataTable('/account/trials', 'Trial ID', true);\n }\n\n /**\n * @see finalisePayment.js\n */\n if (this.Cache.finalisePayment) {\n Core.FinalisePayment.init();\n }\n\n /**\n * @see fileUpload.js\n */\n if (this.Cache.fileUploadList && this.Cache.fileUploadList.length > 0) {\n for (var i = this.Cache.fileUploadList.length - 1; i >= 0; i--) {\n new Core.FileUpload(this.Cache.fileUploadList[i]).init();\n }\n }\n\n /**\n * @see deliveryCounter.js\n */\n if (this.Cache.deliveryCounter) {\n Core.DeliveryCounter(this.Cache.deliveryCounter).init();\n }\n\n /**\n * @see checkoutAvoidDuplicate.js\n */\n if (this.Cache.checkoutAvoidDuplicate) {\n Core.CheckoutAvoidDuplicate(this.Cache.checkoutAvoidDuplicate).init();\n }\n\n /**\n * @see map.js\n */\n if (this.Cache.mapList && this.Cache.mapList.length > 0) {\n Core.Map().initList(this.Cache.mapList);\n }\n\n /**\n * @see myAccountSupplierInstaller.js\n */\n if (this.Cache.myAccountSupplierInstaller) {\n Core.MyAccountSupplierInstaller.init();\n }\n\n /**\n * @see mfaLogin.js\n */\n if (this.Cache.mfaLogin) {\n Core.MfaLogin().init();\n }\n};\n","Core.Account = {\n form: function () {\n\n Core.Account.Cache = {\n $validationForm: $('.form-validation'),\n $ajaxAccountForm: $('#account-form'),\n $formSubmit: $('#form-submit'),\n $loginShowPassword: $('#showPassword'),\n $regShowPassword: $('#reg-showPassword'),\n $accShowPassword: $('#acc-showPassword'),\n $loginPasswordInp: $('div.login-form').find('input[type=\"password\"]'),\n $regPasswordInp: $('div.register-login-details').find('input[type=\"password\"]'),\n $accPasswordInp: $('section#edit-details').find('input[type=\"password\"]'),\n $printButton: $('#print')\n };\n\n Core.Account.Cache.$validationForm.each(function () {\n var isSms = function() {\n var $mfaMethod = $('#mfaMethod');\n return $mfaMethod.length && $mfaMethod.val().toLowerCase() === 'sms';\n };\n\n $(this).validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n return;\n\n $(\"div.validation-summary-errors\").html('');\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n }, 300);\n },\n rules: {\n MobilePhone: {\n required: {\n depends: isSms\n },\n mobileau: {\n depends: isSms\n },\n }\n },\n messages: {\n MobilePhone: {\n required: 'Please enter a mobile number for SMS verification'\n }\n }\n });\n });\n\n var _self = this;\n\n _self.Cache.$ajaxAccountForm.on('submit', function (e) {\n e.preventDefault();\n\n if (_self.Cache.$ajaxAccountForm.valid()) {\n $.ajax({\n url: _self.Cache.$ajaxAccountForm.attr('action'),\n data: _self.Cache.$ajaxAccountForm.serialize(),\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n var _$validationMessage = Core.Account.Cache.$ajaxAccountForm.find('.frm-validation-msg');\n _$validationMessage.hide();\n\n if (data.Success) {\n window.location.href = data.SuccessUrl;\n }\n else {\n _$validationMessage.html('
' + data.ErrorMessage + '
').show();\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n }\n });\n\n if (Core.Account.Cache.$loginShowPassword.length > 0) {\n this.handleShowPwdClick(Core.Account.Cache.$loginShowPassword, Core.Account.Cache.$loginPasswordInp);\n }\n\n if (Core.Account.Cache.$regShowPassword.length > 0) {\n this.handleShowPwdClick(Core.Account.Cache.$regShowPassword, Core.Account.Cache.$regPasswordInp);\n }\n\n if (Core.Account.Cache.$accShowPassword.length > 0) {\n this.handleShowPwdClick(Core.Account.Cache.$accShowPassword, Core.Account.Cache.$accPasswordInp);\n }\n },\n handleShowPwdClick: function($checkBox, $input) {\n Core.Account.checkShowPassword($checkBox, $input);\n $checkBox.unbind(\"click\");\n\n $checkBox.on('click', function (e) {\n Core.Account.showPassword($(this), $input, this.checked);\n });\n },\n showPassword: function ($chekBox, $input, doShow) {\n doShow = doShow == null || undefined ? false : doShow; //set default to false/hide\n\n if (doShow) {\n $input.prop('type', 'text');\n $chekBox.addClass('showing');\n } else {\n $input.prop('type', 'password');\n $chekBox.removeClass('showing');\n }\n\n $.uniform.update();\n },\n //check password input on load\n checkShowPassword: function ($chekBox, $input) {\n //check if checkbox is checked\n $chekBox.prop('checked') ?\n Core.Account.showPassword($chekBox, $input, true) :\n Core.Account.showPassword($chekBox, $input, false);\n },\n myAccount: function () {\n $('#promotions').on('click', function (e) {\n var _checked = $(event.target).parent('span.checked').length > 0;\n\n $.ajax({\n url: '/account/updatepromotions/?enable=' + _checked,\n type: 'POST',\n success: function (data) {\n var _message = '';\n\n if (data) {\n _message = 'Your preferences have been updated';\n } else {\n _message = 'Sorry, we could not update your preferences';\n }\n\n $('#result').html(_message);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n });\n },\n dataTable: function (dataUrl, firstColumnTitle, hideTotalColumn) {\n\n function detailInit(e) {\n var div = $(\"
\").appendTo(e.detailCell);\n\n var object = {};\n object.ClientName = e.data.ClientName;\n object.Comments = e.data.Comments;\n object.Date = e.data.Date;\n object.FundingType = e.data.FundingType;\n object.GST = e.data.GST;\n object.Image = e.data.Image;\n object.QuoteID = e.data.QuoteID;\n object.PrimaryKeyId = e.data.PrimaryKeyId;\n\n object.SubTotal = e.data.SubTotal;\n object.Total = e.data.Total;\n object.OrderTotal = e.data.OrderTotal;\n\n object.OrderDetails = [];\n\n for (var x = 0; x < e.data.OrderDetails.length; x++) {\n object.OrderDetails.push(e.data.OrderDetails[x]);\n }\n\n Handlebars.registerHelper('breaklines', function (text) {\n text = Handlebars.Utils.escapeExpression(text);\n text = text.replace(/(\\r\\n|\\n|\\r)/gm, '
');\n return new Handlebars.SafeString(text);\n });\n\n var template = Handlebars.compile($('#tplOrderDetails').html());\n var html = template(object);\n $(div).html(html);\n\n $('#print-rental, #print-trial').on('click', function (e) {\n e.preventDefault();\n $(this).closest('.k-detail-row').addClass('active');\n $(this).closest('.k-detail-row').prev('.k-master-row').addClass('active');\n $(this).closest('.my-details-container').addClass('print');\n window.print();\n $(this).closest('.k-detail-row').removeClass('active');\n $(this).closest('.k-detail-row').prev('.k-master-row').removeClass('active');\n $(this).closest('.my-details-container').removeClass('print');\n });\n\n $('.add-to-cart').on('click', function (e) {\n e.preventDefault();\n var _$this = $(this);\n var quoteId = _$this.data('id');\n\n if (quoteId.length > 0) {\n Core.ShowPageLoading();\n $.get('/account/requote?quoteId=' + quoteId).\n success(function (data, status, headers, config) {\n\n Core.HidePageLoading();\n Core.Engine.getCartSummary();\n\n var _width = Core.Config.CartNotification.Width,\n _height = Core.Config.CartNotification.Height;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n //check which items have been successful\n var _successfulItems = [];\n for (var x = 0; x < data.length; x++) {\n //if (data[x].WasSuccess) {\n _successfulItems.push(data[x]);\n //}\n }\n\n if (_successfulItems.length > 0) {\n //increase height of window if more than 2 items\n if (_successfulItems.length > 2) {\n _height = _height + (_successfulItems.length - 2) * 35;\n }\n\n Core.RenderTemplate('#tpl-cart-notification', _successfulItems, $('#cart-notification-content'));\n\n var _$addToCartWindow = $('#cart-notification');\n\n _$addToCartWindow = _$addToCartWindow.kendoWindow({\n width: _width, height: _height, visible: false, iframe: false, modal: true, resizable: false, pinned: true, draggable: false, appendTo: '#page-wrap', animation: false\n });\n\n _$addToCartWindow.data(\"kendoWindow\").center().open();\n\n $(\".k-overlay\").on('click', function () {\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n\n $(\".k-window-action > span.k-i-close, .cart-notification-buttons > a.k-i-close\").on('click', function (e) {\n e.preventDefault();\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n }\n else {\n //todo: do something when no items have been added\n alert('Sorry, that was a problem adding items to your cart');\n }\n\n }).error(function (data, status, headers, config) {\n //todo: do something\n });\n }\n });\n }\n\n var _$grid = $(\".grid\"),\n _$pagerNav = $('.k-pager-nav'),\n _$columns = [];\n\n if (!hideTotalColumn) {\n _$columns = [\n { field: \"QuoteID\", title: firstColumnTitle },\n { field: \"Date\", type: \"date\", format: \"{0:dd/MM/yyyy}\" },\n { field: \"ClientName\", title: \"Client Name\" },\n { field: \"FundingType\", title: \"Funding\" },\n { field: \"Total\", title: \"Total\", type: \"number\", format: \"{0:c}\" }\n ];\n } else {\n _$columns = [\n { field: \"QuoteID\", title: firstColumnTitle },\n { field: \"Date\", type: \"date\", format: \"{0:dd/MM/yyyy}\" },\n { field: \"ClientName\", title: \"Client Name\" },\n { field: \"FundingType\", title: \"Funding\" }\n ];\n }\n\n _$grid.kendoGrid({\n dataSource: {\n transport: {\n read: {\n url: dataUrl,\n dataType: \"Json\",\n contentType: \"application/json; charset=utf-8\",\n method: \"GET\"\n }\n },\n serverPaging: false,\n serverSorting: false,\n sort: { field: \"Date\", dir: \"desc\" },\n schema: {\n parse: function (response) {\n $.each(response, function (idx, elem) {\n if (elem.Date && typeof elem.Date === \"string\") {\n elem.Date = kendo.parseDate(elem.Date, \"dd-MMM-yyyy\");\n }\n });\n return response;\n }\n },\n requestStart: Core.ShowPageLoading()\n },\n sortable: true,\n pageable: {\n pageSize: 10,\n messages: {\n first: \"\",\n last: \"\",\n next: \"next\",\n previous: \"previous\"\n },\n info: false\n },\n detailInit: detailInit,\n dataBound: function () {\n if (this.dataSource.total() === 0) {\n _$grid.hide();\n } else {\n _$grid.show();\n\n //this.expandRow(this.tbody.find(\"tr.k-master-row\").first());\n\n if (this.dataSource.total() > 10) {\n _$pagerNav.find('span.k-i-arrow-w').text('<');\n _$pagerNav.find('span.k-i-arrow-e').text('>');\n $('.k-pager-wrap').show();\n }\n\n _$grid.find('.k-grid-header-wrap > table').addClass('responsiveTable');\n _$grid.find('.k-master-row td:nth-child(2)').addClass('quote-id');\n _$grid.find('.k-master-row td:nth-child(3)').addClass('date');\n _$grid.find('.k-master-row td:nth-child(4)').addClass('client-name');\n _$grid.find('.k-master-row td:nth-child(5)').addClass('funding-type');\n _$grid.find('.k-master-row td:nth-child(6)').addClass('total');\n $('.k-minus').closest('tr').addClass('active');\n }\n\n Core.HidePageLoading();\n\n $('#my-quote .k-icon').on('click', function () {\n $(this).closest('.k-master-row').toggleClass('active');\n });\n },\n columns: _$columns\n });\n }\n}\n","var CLS_HIDE = 'd-none';\nvar CLS_CHECKED = 'has-checked';\n\nCore.AddToQuote = {\n init: function () { \n Core.AddToQuote.Cache = {\n addToQuoteSelector: (!this.isPortal()) ? '.addToQuote' : '.addToCartPortal',\n $rentBtn: $('.rent'),\n $trialBtn: $('.trial'),\n $groupPrice: $('#groupPrice'),\n $groupCode: $('#groupCode'),\n $productDetailContainer: $('#product-detail'),\n $productListingPage: $('#product-listing'),\n };\n\n this.initAddToCartQuoteListener();\n },\n\n initAddToCartQuoteListener: function() {\n // Community Website\n if (this.isEventBased()) {\n document.addEventListener('aidacare.addtocart', function(e) {\n Core.ShowPageLoading();\n Core.AddToQuote.addToCartPortalApi(e.detail.itemList);\n });\n\n return;\n }\n\n // Portal Website\n if (this.isPortal()) {\n this.addVariantsPortal();\n this.addToCartPortal();\n return;\n }\n\n // Corporate Website\n this.addVariants();\n this.addToQuote();\n },\n\n addVariants: function () {\n window.selectedVariants = [];\n\n // On click - main product blue button - add to cart\n Core.Cache.$document.on(\"click\", '.product-details__variant--cart', function () {\n var _$this = $(this);\n if (_$this.hasClass('disabled')) { return false; }\n\n\t\t\t// User is adding an item to the cart, button isn't disabled\n var _sku = _$this.data('id'),\n\t\t\t\t_price = _$this.data('price'),\n _minQty = parseInt(_$this.data('minqty')),\n _maxQty = parseInt(_$this.data('maxqty')),\n\t\t\t\t_$variant = _$this.parents('.product-details__variant');\n \n var stockData = Core.AddToQuote.getStockData(_$this.closest('.product-details__variant'));\n\n _$this.toggleClass('added');\n _$variant.toggleClass('selected');\n\n if (_$this.hasClass('added')) {\n\t\t\t\t// Add initial item\n selectedVariants.push({\n\t\t\t\t\tsku: _sku,\n\t\t\t\t\tqty: _minQty,\n\t\t\t\t\tprice: _price,\n stockcolor: stockData.stockColor,\n stockmessage: stockData.stockMessage,\n\t\t\t\t});\n } else {\n\t\t\t\t// Remove item from cart\n for (var i = 0; i < selectedVariants.length; i++) {\n if (selectedVariants[i]['sku'] == _sku) {\n selectedVariants.splice(selectedVariants.indexOf(selectedVariants[i]), 1);\n break;\n }\n }\n }\n\n\t\t\t// Get product code ID's\n var productCode = $('span.added');\n var blkstr = [];\n $.each(productCode, function(i, e) {\n blkstr.push( $(e).data('id') );\n });\n\n if (selectedVariants.length === 0) {\n $(Core.AddToQuote.Cache.addToQuoteSelector)\n\t\t\t\t\t.add(Core.AddToQuote.Cache.$rentBtn)\n\t\t\t\t\t.add(Core.AddToQuote.Cache.$trialBtn)\n\t\t\t\t\t.addClass('disabled');\n } else {\n $(Core.AddToQuote.Cache.addToQuoteSelector)\n\t\t\t\t\t.add(Core.AddToQuote.Cache.$rentBtn)\n\t\t\t\t\t.add(Core.AddToQuote.Cache.$trialBtn)\n\t\t\t\t\t.removeClass('disabled');\n }\n\n\t\t\t// Handle Kendo Number Box\n var _$variantParent = _$this.parent();\n if (_$variantParent.find('.k-numerictextbox').length > 0) {\n _$variantParent.find(\"input[name='qty']\").data('kendoNumericTextBox').value(1);\n _$variantParent.find('.k-numerictextbox').toggle();\n } else {\n //$(\".product-details__selections\").find('.k-numerictextbox').enable(true);\n var _$selectionQuantity = $('.product-details__selections').find('#selection_qty');\n this.numerictextbox = _$selectionQuantity.data('kendoNumericTextBox');\n this.numerictextbox.enable( _$this.hasClass('added') );\n\n }\n\n if (Core.AddToQuote.Cache.$productDetailContainer.length > 0) {\n Core.ProductDetail.Cache.$rentalForm.find('.productCode').val(blkstr.join(','));\n Core.ProductDetail.Cache.$trialForm.find('.productCode').val(blkstr.join(','));\n\n var $pdVariant = _$variantParent.closest('.product-details__variant');\n var $relatedProducts = $pdVariant.find('.related-products') || _$variantParent.siblings('.related-products');\n $relatedProducts.slideToggle(400, function () {\n\n });\n }\n\n\t\t\t// Group Pricing\n var _groupPrice = 0;\n var _$groupCodeStr = [];\n for (var x = 0; x < selectedVariants.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n _$groupCodeStr.push(selectedVariants[x].sku);\n }\n\n if (_$groupCodeStr.length === 0) {\n Core.AddToQuote.Cache.$groupPrice.hide();\n Core.AddToQuote.Cache.$groupCode.hide();\n if (Core.AddToQuote.Cache.$productDetailContainer.length > 0) {\n Core.ProductDetail.Cache.$trialForm.hide();\n Core.ProductDetail.Cache.$rentalForm.hide();\n }\n } else {\n if (_groupPrice > 0) {\n Core.AddToQuote.Cache.$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n } else {\n Core.AddToQuote.Cache.$groupPrice.text(Core.Config.POA.Text).show();\n }\n\n if (_$groupCodeStr.length === 1) {\n Core.AddToQuote.Cache.$groupCode.text(\"SKU# \" + _$groupCodeStr.join(\", \")).show();\n } else {\n Core.AddToQuote.Cache.$groupCode.text(\"SKU# \" + \"Multiple Selections\").show();\n }\n }\n });\n\n // On click - accessories product blue button - add to cart\n Core.Cache.$document.on(\"click\", '.product-details__variant--title span.next-item', function () {\n var _$this = $(this);\n\n // Close current group accordian and deselect any previously selected variants\n var _$parentGroup = _$this.closest(\".related-products__accordion-item\");\n _$parentGroup.find(\"span.added\").trigger(\"click\");\n _$parentGroup.find(\".related-products__accordion-tab\").trigger(\"click\");\n\n /* Disabling this because it's supposed to only close the parent item and not open next one\n * However still want this commented out in the code just in case Aidacare changes their mind on this.\n var _$nextGroup;\n if (_$parentGroup.next().length > 0) {\n _$nextGroup = _$parentGroup.next();\n } else {\n var _$parentParentGroup = _$parentGroup.closest(\".related-products__accordion-content\").closest(\".related-products__accordion-item\");\n if (_$parentParentGroup.next().length > 0) {\n _$nextGroup = _$parentParentGroup.next();\n }\n }\n\n _$nextGroup.find(\".related-products__accordion-tab\").trigger(\"click\");//*/\n });\n },\n\n addToQuote: function () {\n Core.Cache.$document.on(\"click\", Core.AddToQuote.Cache.addToQuoteSelector, function () {\n var _$this = $(this);\n if (!_$this.hasClass('disabled')) {\n Core.ShowPageLoading();\n\n Core.AddToQuote.Cache.$rentBtn.removeClass('selected');\n Core.AddToQuote.Cache.$trialBtn.removeClass('selected');\n var stockData = Core.AddToQuote.getStockData(_$this.closest('.product-details__variant'));\n \n if (selectedVariants.length === 0) {\n var _variant = {};\n\n _variant.sku = _$this.data('id');\n _variant.qty = 1;\n _variant.stockcolor = stockData.stockColor;\n _variant.stockmessage = stockData.stockMessage;\n\n selectedVariants.push(_variant);\n }\n\n var addToCartRequest = {\n cartItems: selectedVariants,\n };\n\n $.post('/cart/addtoquote?_=' + new Date().getTime().toString(), { '': selectedVariants }).\n success(function (data, status, headers, config) {\n Core.HidePageLoading();\n\n Core.Engine.getCartSummary();\n\n var _width = Core.Config.CartNotification.Width,\n _height = Core.Config.CartNotification.Height;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n //check which items have been successful\n var _successfulItems = [];\n for (var x = 0; x < data.length; x++) {\n _successfulItems.push(data[x]);\n }\n\n if (_successfulItems.length > 0) {\n //increase height of window if more than 2 items\n if (_successfulItems.length > 2) {\n _height = _height + (_successfulItems.length - 2) * 35;\n }\n\n Core.RenderTemplate('#tpl-cart-notification', _successfulItems, $('#cart-notification-content'));\n\n var _$addToCartWindow = $('#cart-notification');\n\n _$addToCartWindow = _$addToCartWindow.kendoWindow({\n width: _width, height: _height, visible: false, iframe: false, modal: true, resizable: false, pinned: true, draggable: false, appendTo: '#page-wrap'\n });\n\n _$addToCartWindow.data(\"kendoWindow\").center().open();\n\n $(\".k-overlay\").on('click', function () {\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n\n $(\".k-window-action > span.k-i-close, .cart-notification-buttons > a.k-i-close\").on('click', function (e) {\n e.preventDefault();\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n\n window.selectedVariants = [];\n\n if (Core.ProductDetail.Cache) {\n Core.ProductDetail.closeFormField(Core.ProductDetail.Cache.$trialForm);\n Core.ProductDetail.closeFormField(Core.ProductDetail.Cache.$rentalForm);\n }\n }\n else {\n //todo: do something when no items have been added\n alert('Sorry, that was a problem adding items to your cart');\n }\n }).error(function (data, status, headers, config) {\n //todo: do something\n });\n }\n });\n },\n\n /**\n\n DYNAMIC PRICE\n - getDynamicPrice\n - updatePrice\n - resetOriginalPrice\n - updatePriceLabel\n - resetOriginalPriceLabel\n\n */\n\n // STR : DYNAMIC PRICE -------------------------------\n getDynamicPrice: function(sku, qty) {\n // var url = 'https://run.mocky.io/v3/45216a26-e140-4e7c-a1cf-25ed7c1b91f9';\n var url = '/cart/getpricebyquantity';\n var data = { \"sku\": sku, \"qty\": qty };\n return $.post(url, data);\n },\n\n updatePrice: function($inptQty, newPrice) {\n var originalPrice = $inptQty.data('originalPrice') == null\n ? $inptQty.data('price')\n : $inptQty.data('originalPrice');\n\n $inptQty.data('originalPrice', originalPrice);\n $inptQty.data('price', newPrice);\n },\n\n resetOriginalPrice: function($inptQty) {\n if ($inptQty.data('originalPrice') == null) {\n return;\n }\n\n var originalPrice = $inptQty.data('originalPrice');\n $inptQty.data('price', originalPrice);\n },\n\n updatePriceLabel: function(sku, newLabel) {\n var $priceLabl = $(\"[data-price-label=\" + sku + \"]\");\n\n if (newLabel == null || $priceLabl.length === 0) {\n return;\n }\n\n var originalLabel = $priceLabl.data('originalLabel') == null\n ? $priceLabl[0] && $($priceLabl[0]).text()\n : $priceLabl.data('originalLabel');\n\n $priceLabl.data('originalLabel', originalLabel);\n $priceLabl.text(newLabel);\n },\n\n resetOriginalPriceLabel: function(sku) {\n var $priceLabl = $(\"[data-price-label=\" + sku + \"]\");\n\n if ($priceLabl.data('originalLabel') == null) {\n return;\n }\n\n var originalLabel = $priceLabl[0] && $($priceLabl[0]).data('originalLabel');\n $priceLabl.text(originalLabel);\n },\n\n updatePriceSelectedVariants: function(sku, price) {\n function updatePrice(item) {\n (item.sku === sku)\n && (item.price = price);\n\n return item;\n }\n\n return selectedVariants.map(updatePrice);\n },\n\n // PDP & PLP list view - Check Local Stock\n checkLocalStock: function($el, sku, qty) {\n var isListingView = Core.Util.isPlp();\n var $page = isListingView ? Core.AddToQuote.Cache.$productListingPage : Core.AddToQuote.Cache.$productDetailContainer;\n var api = $page.data('check-local-stock-api');\n var isCheckLocalStockAsync = Core.Util.isCheckLocalStockAsync();\n \n if (!api) {\n console.log('Please provide the api url for stock check (data-check-local-stock-api)');\n return;\n }\n\n var location = {\n suburb: $page.attr('data-suburb'),\n state: $page.attr('data-state'),\n postCode: $page.attr('data-postcode'),\n };\n var variants = [{\n qty: qty,\n sku: sku,\n mainsku: sku,\n }];\n var $parent = $el.closest('.product-details__variant');\n var $error = $parent.find('.stock-error');\n\n $.ajax({\n url: api,\n data: {\n variants: variants,\n location: location,\n setLocation: false,\n },\n type: 'POST',\n dataType: 'json',\n success: function(data) {\n if (data.isSuccess) {\n var item = data.stocks?.length > 0 && data.stocks[0];\n if (!item) return;\n\n var $row = isListingView ? \n $(`.plv__variant-row[data-id=\"${sku}\"]`) :\n $(`.product-details__variant--row[data-id=\"${sku}\"]`);\n if ($row.length === 0) return;\n\n if (item.value === '') {\n $row.find('.stock-error').removeClass(CLS_HIDE);\n return;\n }\n\n var localTemplate = (isCheckLocalStockAsync || isListingView) ? \n `${item.value}` : \n `${item.value} for ${location.suburb} ${location.postCode}`;\n var noStockMessage = Core.Util.isEmpty(localTemplate);\n var $local = $row.find(`.stock-local`);\n $local.find('.stock-status').css('background-color', item.colour);\n\n if (!noStockMessage) {\n $local.find('.stock-message').html(localTemplate);\n }\n $local.addClass(CLS_CHECKED);\n $row.find('.stock-checkBtn').addClass(CLS_HIDE);\n $row.find('.stock-updateBtn').removeClass(CLS_HIDE);\n\n // keep showing national stock if local stock not available\n if ((isCheckLocalStockAsync || isListingView) && !noStockMessage) {\n $row.find('.stock-national').addClass(CLS_HIDE);\n }\n } else {\n $error.html(data.message);\n $error.removeClass(CLS_HIDE);\n }\n },\n error: function(xhr, ajaxOptions, thrownError) { \n $error.removeClass(CLS_HIDE);\n console.log('error', xhr, ajaxOptions, thrownError);\n }\n });\n },\n\n // get stock from table/variant\n getStockData: function($parent) {\n var $stock = $parent.find('.stock-wrap').first();\n\n if ($parent.length === 0 || $stock.length === 0) {\n return { stockMessage: '', stockColor: '' };\n }\n\n var $stockNational = $stock.find('.stock-national');\n var $stockLocal = $stock.find('.stock-local');\n\n var stockColor = $stockLocal.length > 0 ? $stockLocal.find('.stock-status').css('background-color') : '';\n var stockMessage = $stockLocal.length > 0 ? $stockLocal.find('.stock-message').text() : '';\n if (Core.Util.isEmpty(stockMessage)) {\n stockMessage = $stockNational.length > 0 ? $stockNational.find('.stock-message').text() : '';\n stockColor = $stockNational.length > 0 ? $stockNational.find('.stock-status').css('background-color') : '';\n }\n\n return {\n stockMessage: stockMessage,\n stockColor: stockColor,\n };\n },\n // END : DYNAMIC PRICE -------------------------------\n\n addVariantsPortal: function () {\n var _self = this;\n var isAgedCare = Core.Util.isAgedCare();\n var isWholesale = Core.Util.isWholesale();\n var isListingView = Core.Util.isPlp();\n window.selectedVariants = [];\n\n var handleUpdateQty = Core.Util.Debounce(function (_$el) {\n var _$elParent = isListingView ? \n _$el.closest('.plv__variant-action-wrap') : \n _$el.closest('.product-details__variant--format--column');\n\n var _$added = isWholesale ? \n _$el.closest('.product-details__variant--column.product-details__variant--actionwrap')\n .find('.added') : \n _$el.closest('.product-details__variant--column.product-details__variant--format')\n .siblings('.product-details__variant--column.product-details__variant--actionwrap')\n .find('.added'),\n _$inptQty = _$elParent.find(\"input[name='qty']\"),\n _$sku = _$inptQty.data(\"id\"),\n _$mainsku = isWholesale ? \n _$el.closest('.product-details__variant--table').find('.mainProdSku').val() :\n _$el.closest('.product-details__variant--format--table').find('.mainProdSku').val(),\n _$price = _$inptQty.data(\"price\"),\n _$qty = _$elParent.find(\"input.product-details__variant--qty:visible\").val();\n\n _$added = (_$added.length > 0)\n ? _$added\n : getAddedElement(_$el);\n\n var __price = _$price;\n _self.getDynamicPrice(_$sku, _$qty)\n .done(function(data) {\n if (data == null) {\n return;\n }\n\n data.unitPriceLabel\n && _self.updatePriceLabel(_$sku, data.unitPriceLabel);\n\n data.unitPrice\n && (__price = parseFloat(data.unitPrice)\n , _self.updatePrice(_$inptQty, __price));\n\n selectedVariants &&\n (selectedVariants = _self.updatePriceSelectedVariants(_$sku, __price));\n })\n .always(function() {\n theItem(_$added, _$sku, _$mainsku, _$qty, __price)\n calculateSelection();\n });\n\n (isWholesale || isListingView) &&_self.checkLocalStock(_$el, _$sku, _$qty);\n }, 400);\n\n // On click - qty +/- btns - update cart\n Core.Cache.$document.on(\"click\", \".product-details__variant--qty .k-icon\", function() {\n handleUpdateQty($(this));\n });\n\n var getAddedElement = function($el) {\n var $addedEl = $el.closest('.product-details__variant--price')\n .siblings('.product-details__variant--actionwrap')\n .find('.added');\n \n if ($addedEl.length === 0) {\n $addedEl = $el.closest('.product-details__variant--column-action').find('.added');\n }\n\n if ($addedEl.length === 0) {\n $addedEl = $el.closest('.plv__variant-action').find('.added');\n }\n\n return $addedEl;\n }\n\n // On input - input qty - update cart\n Core.Cache.$document.on(\"input\", \"input.product-details__variant--qty:visible\", function(){\n var _$el = $(this),\n _$elParent = _$el.parent(),\n _$added = _$el.closest('.product-details__variant--column.product-details__variant--format')\n .siblings('.product-details__variant--column.product-details__variant--actionwrap')\n .find('.added'),\n _$inptQty = _$elParent.find(\"input[name='qty']\"),\n _$sku = _$inptQty.data(\"id\"),\n _$mainsku = _$el.closest('.product-details__variant--format--table').find('.mainProdSku').val(),\n _$price = _$inptQty.data(\"price\"),\n _$qty = _$el.val(),\n __price = _$price;\n\n _$added = (_$added.length > 0)\n ? _$added\n : getAddedElement(_$el);\n\n if (!_$qty || !_$sku) return;\n\n // need to call blur event here cause it won't trigger from previous event listener.\n _$el.off('blur').on('blur', function() {\n _self.getDynamicPrice(_$sku, _$qty)\n .done(function(data) {\n if (data == null) {\n return;\n }\n\n data.unitPrice\n && (__price = parseFloat(data.unitPrice)\n , _self.updatePrice(_$inptQty, __price));\n\n data.unitPriceLabel\n && _self.updatePriceLabel(_$sku, data.unitPriceLabel);\n\n selectedVariants &&\n (selectedVariants = _self.updatePriceSelectedVariants(_$sku, __price));\n })\n .always(function() {\n theItem(_$added, _$sku, _$mainsku, _$qty, __price)\n calculateSelection();\n });\n \n (isWholesale || isListingView) && _self.checkLocalStock(_$el, _$sku, _$qty);\n });\n });\n\n // On close products variants - remove item\n Core.Cache.$document.on(\"click\", \".product-details__variants.is-portalsite .related-products__accordion-tab\", function(){\n var _$this = $(this),\n _$content = _$this.siblings('.related-products__accordion-content');\n\n if(_$content.is(\":visible\")){\n var _$added = _$content.find('.added');\n $.each(_$added , function (i, e) {\n var _$el = $(e),\n _inputBox = _$el.closest('.product-details__variant--table'),\n _inputData = _inputBox.find('.product-details__variant--qty:visible').find(\"input[name='qty']\"),\n\n _sku = _inputData.data('id'),\n _mainsku = _inputBox.find('.mainProdSku').val(),\n _price = _inputData.data('price'),\n _qty = _inputBox.find('.product-details__variant--qty:visible input.product-details__variant--qty:visible').val();\n\n\n _$el.removeClass('added');\n _inputData.data('kendoNumericTextBox').value(0);\n _inputBox.find(\".k-formatted-value.product-details__variant--qty\").val(1);\n _inputBox.find('.k-numerictextbox').slideUp(300);\n\n // without the added class it does remove the item\n theItem(_$el, _sku, _mainsku, _qty, _price);\n\n _self.resetOriginalPrice(_inputData);\n _self.resetOriginalPriceLabel(_sku);\n });\n\n calculateSelection();\n };\n });\n\n // On click - drop down menu (buy | rent | rent own)\n Core.Cache.$document.on(\"click\", '.product-details__variant--type span', function () {\n var _$this = $(this),\n _$variant = _$this.closest('.product-details__variant'),\n _$triggerWrap = _$this.closest('.product-details__variant--typewrap'),\n _$triggerButton = _$triggerWrap.find('.product-details__variant--cart'),\n dataType = _$this.data(\"type\");\n\n // User is adding an item to the cart, button isn't disabled\n var _closestTableWrap = _$this.closest('.product-details__variant--table'),\n _relatedQty = _closestTableWrap.find('.product-details__variant--format--column[data-type=\"'+ _$this.data('type') +'\"]').find('input[name=\"qty\"]'),\n _sku = _relatedQty.data('id'),\n _mainsku = _closestTableWrap.find('.mainProdSku').val(),\n\t\t\t\t_price = _relatedQty.data('price'),\n _qty = _relatedQty.siblings('input.product-details__variant--qty').val(),\n _$variant = _$triggerButton.parents('.product-details__variant');\n\n _$triggerButton.toggleClass('added');\n _$variant.toggleClass('selected');\n _$variant.data('type', dataType);\n _$triggerWrap.removeClass('show-type');\n\n //set selection/\n theItem(_$triggerButton, _sku, _mainsku, _qty, _price, dataType);\n calculateSelection();\n showAccessories(_$variant);\n });\n\n // On click - main product blue button - add to cart\n Core.Cache.$document.on(\"click\", '.product-details__variant--cart', function () {\n var _$this = $(this);\n var _$parent = _$this.closest('.product-details__variant--typewrap');\n var _$variant = _$this.closest('.product-details__variant');\n\n if (_$this.hasClass('disabled')) { return false; }\n\n if (!_$this.hasClass('added')) {\n // toggle button option dropdown\n if (!isAgedCare) {\n _$parent.toggleClass('show-type');\n } else {\n // get first variant which will be \"buy\" for agedCare\n var $buyType = _$parent.find('.product-details__variant--type li:first-child span');\n if ($buyType.length) $buyType.trigger('click');\n }\n } else {\n var _$tableWrap = _$this.closest('.product-details__variant--table');\n var _$sibling = _$tableWrap.siblings('.related-products');\n var _$singleKendoWrap = _$tableWrap.find('.k-numerictextbox');\n\n if (_$sibling.length == 0) {\n var _inputBox = _$this.closest('.product-details__variant--table'),\n _inputData = _inputBox.find('.product-details__variant--qty:visible').find(\"input[name='qty']\"),\n _sku = _inputData.data('id'),\n _mainsku = _inputBox.find('.mainProdSku').val(),\n _price = _inputData.data('price'),\n _qty = _inputBox.find('.product-details__variant--qty:visible input.product-details__variant--qty:visible').val();\n\n _$variant.removeClass('selected');\n _$variant.find('.selected').removeClass('selected');\n _$tableWrap.find('.added').removeClass('added');\n _$singleKendoWrap.find(\"input[name='qty']\").data('kendoNumericTextBox').value(0);\n _$singleKendoWrap.find(\".k-formatted-value.product-details__variant--qty\").val(1);\n _$singleKendoWrap.slideUp(300);\n\n _self.resetOriginalPrice(_$singleKendoWrap.find(\"input[name='qty']\"));\n _self.resetOriginalPriceLabel(_sku);\n\n //update and set selection for trigger button\n theItem(_$this, _sku, _mainsku, _qty, _price);\n calculateSelection();\n } else {\n //update and set selection for related product if any\n _$tableWrap.siblings('.related-products').each(function () {\n var _$added = _$variant.find('.added');\n for(var a=0; a < _$added.length; a++){\n var _$addedElement = $(_$added[a]),\n _$closestVariantTable = _$addedElement.closest('.product-details__variant--table'),\n _$itemKNumerictexbox = _$closestVariantTable.find('.k-numerictextbox:visible'),\n _$itemSelected = _$itemKNumerictexbox.find(\"input[name='qty']\"),\n _sku = _$itemSelected.data('id');\n\n _$itemKNumerictexbox.slideUp(300);\n _$addedElement.removeClass('added');\n\n _$itemKNumerictexbox.find(\".k-formatted-value.product-details__variant--qty\").val(1);\n _$itemSelected.data('kendoNumericTextBox').value(0);\n\n _self.resetOriginalPrice(_$itemSelected);\n _self.resetOriginalPriceLabel(_sku);\n\n\n theItem(\n _$addedElement,\n _$itemSelected.data('id'),\n _$closestVariantTable.find('.mainProdSku').val(),\n _$itemKNumerictexbox.find('input.product-details__variant--qty:visible').val(),\n _$itemSelected.data('price')\n );\n }\n _$variant.find('.k-numerictextbox').slideUp(300);\n\n calculateSelection();\n }).slideUp(300, function () {});\n }\n }\n });\n\n Core.Cache.$document.on(\"click\", '.product-details__variant--title span.next-item', function () {\n var _$this = $(this);\n\n // Close current group accordian and deselect any previously selected variants\n var _$parentGroup = _$this.closest(\".related-products__accordion-item\");\n _$parentGroup.find(\"span.added\").trigger(\"click\");\n _$parentGroup.find(\".related-products__accordion-tab\").trigger(\"click\");\n\n var _$nextGroup;\n if (_$parentGroup.next().length > 0) {\n _$nextGroup = _$parentGroup.next();\n } else {\n var _$parentParentGroup = _$parentGroup.closest(\".related-products__accordion-content\").closest(\".related-products__accordion-item\");\n if (_$parentParentGroup.next().length > 0) {\n _$nextGroup = _$parentParentGroup.next();\n }\n }\n\n _$nextGroup.find(\".related-products__accordion-tab\").trigger(\"click\");\n });\n\n function calculateSelection() {\n var _$added = $('span.added'),\n _$arrBuy = [],\n _$arrrent = [],\n _$arrrenttoown = [],\n _$totbuy = 0,\n _$totrent = 0,\n _$totrenttoown = 0,\n _$sumPrice = 0,\n _$totalSumWrap = $('.product-details__total')\n _$buyTotalElement = $('.buyTotal'),\n _$rentTotalElement = $('.rentTotal'),\n _$rentoownTotalElement = $('.rentToOwnTotal');\n\n if(_$added.length > 0) {\n $.each(_$added , function (i, e) {\n var _$el = $(e),\n _$res = 0,\n _$qtyBox = _$el.closest('.product-details__variant--table'),\n _$activeQty = _$qtyBox.find('input.product-details__variant--qty:visible'),\n _$elQty = _$activeQty.parent().find(\"input[name='qty']\")\n _$elQtyMin = _$elQty.attr(\"min\") > 0 ? _$elQty.attr(\"min\") : 1,\n _$elQtyVal = 1;\n\n if (_$activeQty.val() >= _$elQtyMin) {\n _$elQtyVal = _$activeQty.val();\n } else {\n _$elQtyVal = 1;\n _$activeQty.val(1);\n }\n\n _$res = parseFloat(_$elQty.data('price')) * parseFloat(_$elQtyVal);\n switch (_$activeQty.closest('.product-details__variant--format--column').data('type')) {\n case \"buy\":\n _$totbuy += _$res;\n break;\n case \"rent\":\n _$totrent += _$res;\n break;\n case \"renttoown\":\n _$totrenttoown += _$res;\n break;\n };\n });\n\n _$buyTotalElement.children(\"span\").html(!isNaN(_$totbuy.toFixed(2)) ? _$totbuy.toFixed(2): \"0.00\");\n _$rentTotalElement.children(\"span\").html(!isNaN(_$totrent.toFixed(2))? _$totrent.toFixed(2): \"0.00\");\n _$rentoownTotalElement.children(\"span\").html(!isNaN(_$totrenttoown.toFixed(2))? _$totrenttoown.toFixed(2): \"0.00\");\n _$totalSumWrap.slideDown(300);\n } else {\n _$buyTotalElement.children(\"span\").html(\"0.00\");\n _$rentTotalElement.children(\"span\").html(\"0.00\");\n _$rentoownTotalElement.children(\"span\").html(\"0.00\");\n _$totalSumWrap.slideUp(300);\n }\n }\n\n function theItem($addCartButton, $sku, $mainsku, $qty, $price, $selectFormat) {\n var _$el = $addCartButton,\n _$sku = $sku,\n _$mainsku = $mainsku,\n _$qty = $qty,\n _$price = $price,\n _$format = $selectFormat || false\n _$parentTable = _$el.closest('.product-details__variant--table');\n \n var stockData = Core.AddToQuote.getStockData(_$parentTable);\n\n if (_$el.hasClass('added')) {\n // Add initial item\n function CallbackFunctionToFindBySku(selectedVariants) {\n return selectedVariants.sku === _$sku;\n };\n\n function changeQty(sku, qty) {\n for (var i in selectedVariants) {\n if (selectedVariants[i].sku == sku) {\n selectedVariants[i].qty = qty;\n break; //Stop this loop, we found it!\n }\n }\n };\n\n\n // new find in object, the previous ones CallbackFunctionToFindBySku() doesn't works\n var findInObject = selectedVariants.filter(function (selectedVariants) { return selectedVariants.sku === _$sku });\n //var findInObject = selectedVariants.find(CallbackFunctionToFindBySku);\n\n if (findInObject.length > 0) {\n changeQty(_$sku, _$qty);\n } else {\n selectedVariants.push({\n sku: _$sku,\n mainsku: _$mainsku,\n qty: _$qty,\n price: _$price,\n stockmessage: stockData.stockMessage,\n stockcolor: stockData.stockColor,\n });\n }\n } else {\n // Remove item from cart\n for (var i = 0; i < selectedVariants.length; i++) {\n if (selectedVariants[i]['sku'] == _$sku) {\n selectedVariants.splice(selectedVariants.indexOf(selectedVariants[i]), 1);\n break;\n }\n }\n }\n\n // Get all product code ID's\n var productCode = $('span.added');\n var blkstr = [];\n\n $.each(productCode, function (i, e) {\n var qtyActive = $(e)\n .closest('.product-details__variant--table')\n .find('.product-details__variant--qty:visible')\n .find(\"input[name='qty']\")\n .data(\"id\");\n\n blkstr.push(qtyActive);\n });\n\n if (selectedVariants.length === 0) {\n $(Core.AddToQuote.Cache.addToQuoteSelector)\n .add(Core.AddToQuote.Cache.$rentBtn)\n .add(Core.AddToQuote.Cache.$trialBtn)\n .addClass('disabled');\n } else {\n $(Core.AddToQuote.Cache.addToQuoteSelector)\n .add(Core.AddToQuote.Cache.$rentBtn)\n .add(Core.AddToQuote.Cache.$trialBtn)\n .removeClass('disabled');\n }\n\n // only for select variant with format\n if (_$format) {\n // Handle Kendo Number Box\n var _$variantParent = _$el.closest('.product-details__variant--table');\n var _$kendoNumericTextBox = _$variantParent.find('[data-type=\"' + _$format + '\"]').find('.k-numerictextbox');\n\n if (_$kendoNumericTextBox.length > 0) {\n _$kendoNumericTextBox.find(\"input[name='qty']\").data('kendoNumericTextBox').value(1);\n _$kendoNumericTextBox.slideDown();\n } else {\n //$(\".product-details__selections\").find('.k-numerictextbox').enable(true);\n var _$selectionQuantity = $('.product-details__selections').find('#selection_qty');\n this.numerictextbox = _$selectionQuantity.data('kendoNumericTextBox');\n this.numerictextbox.enable(_$el.hasClass('added'));\n }\n }\n\n if (Core.AddToQuote.Cache.$productDetailContainer.length > 0) {\n Core.ProductDetail.Cache.$rentalForm.find('.productCode').val(blkstr.join(','));\n Core.ProductDetail.Cache.$trialForm.find('.productCode').val(blkstr.join(','));\n\n // if select variant with format\n if (_$format) {\n _$variantParent.siblings('.related-products').slideDown(400, function () { });\n }\n }\n\n // Group Pricing\n var _groupPrice = 0;\n var _$groupCodeStr = [];\n for (var x = 0; x < selectedVariants.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n _$groupCodeStr.push(selectedVariants[x].mainsku);\n }\n\n if (_$groupCodeStr.length === 0) {\n Core.AddToQuote.Cache.$groupPrice.hide();\n Core.AddToQuote.Cache.$groupCode.hide();\n if (Core.AddToQuote.Cache.$productDetailContainer.length > 0) {\n Core.ProductDetail.Cache.$trialForm.hide();\n Core.ProductDetail.Cache.$rentalForm.hide();\n }\n } else {\n if (_groupPrice > 0) {\n Core.AddToQuote.Cache.$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n } else {\n Core.AddToQuote.Cache.$groupPrice.text(Core.Config.POA.Text).show();\n }\n\n if (_$groupCodeStr.length === 1) {\n Core.AddToQuote.Cache.$groupCode.text(\"SKU# \" + _$groupCodeStr.join(\", \")).show();\n } else {\n Core.AddToQuote.Cache.$groupCode.text(\"SKU# \" + \"Multiple Selections\").show();\n }\n }\n }\n\n function showAccessories($variant) {\n var CLS_HIDE = 'hidden';\n var CLS_INVISIBLE = 'invisible';\n var dataType = $variant.data('type');\n var $pricesAcc = $variant.find('.related-products .product-details__variant--format--column');\n\n var $itemRow = $variant.find('.related-products .product-details__variant--table');\n $itemRow.removeClass(CLS_HIDE);\n\n //hide price accessories\n $pricesAcc.removeClass(CLS_INVISIBLE);\n\n //hide cart action\n var $cartAction = $variant.find('.related-products .product-details__variant--type > li > span');\n $cartAction.removeClass(CLS_HIDE);\n }\n },\n\n addToCartPortal: function () {\n Core.Cache.$document.on(\"click\", Core.AddToQuote.Cache.addToQuoteSelector, function () {\n var _$this = $(this);\n if (!_$this.hasClass('disabled')) {\n Core.ShowPageLoading();\n\n Core.AddToQuote.Cache.$rentBtn.removeClass('selected');\n Core.AddToQuote.Cache.$trialBtn.removeClass('selected');\n var stockData = Core.AddToQuote.getStockData(_$this.closest('.product-details__variant'));\n\n if (selectedVariants.length === 0) {\n var _variant = {};\n\n _variant.sku = _$this.data('id');\n _variant.qty = 1;\n _variant.stockcolor = stockData.stockColor;\n _variant.stockmessage = stockData.stockMessage;\n\n selectedVariants.push(_variant);\n }\n\n Core.AddToQuote.addToCartPortalApi(selectedVariants);\n }\n });\n },\n\n addToCartPortalApi: function(selectedVariants, cta) { \n var url = '/cart/addtocart'; // 'https://run.mocky.io/v3/5ec8c0bf-26d9-4b00-8d75-ecc19d3f48a9'; \n $.post(`${url}?_=` + new Date().getTime().toString(), { '': selectedVariants })\n .done(\n function(data, status, headers, config) {\n Core.HidePageLoading();\n\n Core.Engine.getCartSummary();\n\n //check which items have been successful\n var _successfulItems = [];\n for (var x = 0; x < data.length; x++) {\n _successfulItems.push(data[x]);\n }\n\n if (_successfulItems.length > 0) {\n var _$addToCartWindow = $('#cart-notification');\n var _template = '#tpl-cart-notification';\n\n if (cta) {\n _$addToCartWindow = $(`.cart-notification--${cta}`);\n _template = `#tpl-cart-notification--${cta}`;\n }\n\n Core.RenderTemplate(_template, _successfulItems, _$addToCartWindow.find('.cart-notification-content'));\n Core.AddToQuote.initPopup(_$addToCartWindow);\n _$addToCartWindow.removeClass('hidden');\n\n $(\".k-overlay\").on('click', function () {\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n\n $(\".k-window-action > span.k-i-close, .cart-notification-buttons > a.k-i-close\").on('click', function (e) {\n e.preventDefault();\n _$addToCartWindow.data(\"kendoWindow\").close();\n });\n\n window.selectedVariants = [];\n // reset button state\n $('.product-details__variant--cart.added').each(function() {\n var $this = $(this);\n // prevent child that has been closed to re-trigger\n if ($this.hasClass('added')) $this.trigger('click');\n });\n\n if (Core.ProductDetail.Cache) {\n Core.ProductDetail.closeFormField(Core.ProductDetail.Cache.$trialForm);\n Core.ProductDetail.closeFormField(Core.ProductDetail.Cache.$rentalForm);\n }\n\n // reload cart flyout\n Core.CartFlyout.init();\n }\n else {\n //todo: do something when no items have been added\n alert('Sorry, that was a problem adding items to your cart');\n }\n })\n .fail(\n function (data, status, headers, config) {\n //todo: do something\n });\n },\n\n initPopup: function ($popup) {\n var _width = Core.Config.CartNotification.Width;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n $popup = $popup.kendoWindow({\n width: _width,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap',\n close: function () {\n $('body').css('overflowY', '');\n }\n });\n\n var popUpObj = $popup.data(\"kendoWindow\");\n popUpObj.wrapper.addClass('cart-notification__wrapper');\n\n $('body').css('overflowY', 'hidden');\n popUpObj.open();\n\n setTimeout(function () {\n Core.AddToQuote.setPopupHeight($popup);\n }, 100);\n },\n\n setPopupHeight: function ($popup) {\n //set max-height of popup-content\n var $content = $popup.find('.cart-notification-content')\n , $buttonWrap = $popup.find('.cart-notification-buttons')\n , buttonH = $buttonWrap.outerHeight()\n , popupH = $popup.outerHeight() + 80 + buttonH //80px is gap top and bottom\n , windowH = window.innerHeight\n , $header = $popup.find('.k-window-titlebar');\n\n if (popupH > windowH) {\n var contentH = windowH - buttonH - $header.outerHeight() - 130; //130 = padding-top + padding-bottom + (top + bottom popup's position)\n $content.css('max-height', contentH + \"px\");\n } else {\n $content.css('max-height', '');\n }\n },\n\n isPortal: function() {\n return $('.product-details__variants').hasClass('is-portalsite')\n || $('#product-listing').hasClass('is-portalsite')\n || $('#favourites').hasClass('is-portalsite');\n },\n\n isEventBased: function() {\n return $('[data-type=\"eventbased\"]').length > 0;\n }\n};\n\nHandlebars.registerHelper('cartMsgHasPriceType', function (msgLst, priceType) {\n for (var i = 0; i < msgLst.length; i++) {\n if (msgLst[i]['PriceType'] == priceType) {\n return true;\n }\n }\n\n return false;\n});\n\nHandlebars.registerHelper('cartMsgIsPriceType', function (priceType, priceTypeCompare) {\n return (priceType == priceTypeCompare);\n});\n","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under the MIT license\n */\nif(\"undefined\"==typeof jQuery)throw new Error(\"Bootstrap's JavaScript requires jQuery\");!function(t){\"use strict\";var e=jQuery.fn.jquery.split(\" \")[0].split(\".\");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1||3this.$items.length-1||t<0))return this.sliding?this.$element.one(\"slid.bs.carousel\",function(){e.to(t)}):i==t?this.pause().cycle():this.slide(idocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&t?this.scrollbarWidth:\"\",paddingRight:this.bodyIsOverflowing&&!t?this.scrollbarWidth:\"\"})},s.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:\"\",paddingRight:\"\"})},s.prototype.checkScrollbar=function(){var t=window.innerWidth;if(!t){var e=document.documentElement.getBoundingClientRect();t=e.right-Math.abs(e.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:\"hover focus\",title:\"\",delay:0,html:!1,container:!1,viewport:{selector:\"body\",padding:0},sanitize:!0,sanitizeFn:null,whiteList:t},m.prototype.init=function(t,e,i){if(this.enabled=!0,this.type=t,this.$element=g(e),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&g(document).find(g.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error(\"`selector` option must be specified when initializing \"+this.type+\" on the window.document object!\");for(var o=this.options.trigger.split(\" \"),n=o.length;n--;){var s=o[n];if(\"click\"==s)this.$element.on(\"click.\"+this.type,this.options.selector,g.proxy(this.toggle,this));else if(\"manual\"!=s){var a=\"hover\"==s?\"mouseenter\":\"focusin\",r=\"hover\"==s?\"mouseleave\":\"focusout\";this.$element.on(a+\".\"+this.type,this.options.selector,g.proxy(this.enter,this)),this.$element.on(r+\".\"+this.type,this.options.selector,g.proxy(this.leave,this))}}this.options.selector?this._options=g.extend({},this.options,{trigger:\"manual\",selector:\"\"}):this.fixTitle()},m.prototype.getDefaults=function(){return m.DEFAULTS},m.prototype.getOptions=function(t){var e=this.$element.data();for(var i in e)e.hasOwnProperty(i)&&-1!==g.inArray(i,o)&&delete e[i];return(t=g.extend({},this.getDefaults(),e,t)).delay&&\"number\"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),t.sanitize&&(t.template=n(t.template,t.whiteList,t.sanitizeFn)),t},m.prototype.getDelegateOptions=function(){var i={},o=this.getDefaults();return this._options&&g.each(this._options,function(t,e){o[t]!=e&&(i[t]=e)}),i},m.prototype.enter=function(t){var e=t instanceof this.constructor?t:g(t.currentTarget).data(\"bs.\"+this.type);if(e||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),g(t.currentTarget).data(\"bs.\"+this.type,e)),t instanceof g.Event&&(e.inState[\"focusin\"==t.type?\"focus\":\"hover\"]=!0),e.tip().hasClass(\"in\")||\"in\"==e.hoverState)e.hoverState=\"in\";else{if(clearTimeout(e.timeout),e.hoverState=\"in\",!e.options.delay||!e.options.delay.show)return e.show();e.timeout=setTimeout(function(){\"in\"==e.hoverState&&e.show()},e.options.delay.show)}},m.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},m.prototype.leave=function(t){var e=t instanceof this.constructor?t:g(t.currentTarget).data(\"bs.\"+this.type);if(e||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),g(t.currentTarget).data(\"bs.\"+this.type,e)),t instanceof g.Event&&(e.inState[\"focusout\"==t.type?\"focus\":\"hover\"]=!1),!e.isInStateTrue()){if(clearTimeout(e.timeout),e.hoverState=\"out\",!e.options.delay||!e.options.delay.hide)return e.hide();e.timeout=setTimeout(function(){\"out\"==e.hoverState&&e.hide()},e.options.delay.hide)}},m.prototype.show=function(){var t=g.Event(\"show.bs.\"+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(t);var e=g.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(t.isDefaultPrevented()||!e)return;var i=this,o=this.tip(),n=this.getUID(this.type);this.setContent(),o.attr(\"id\",n),this.$element.attr(\"aria-describedby\",n),this.options.animation&&o.addClass(\"fade\");var s=\"function\"==typeof this.options.placement?this.options.placement.call(this,o[0],this.$element[0]):this.options.placement,a=/\\s?auto?\\s?/i,r=a.test(s);r&&(s=s.replace(a,\"\")||\"top\"),o.detach().css({top:0,left:0,display:\"block\"}).addClass(s).data(\"bs.\"+this.type,this),this.options.container?o.appendTo(g(document).find(this.options.container)):o.insertAfter(this.$element),this.$element.trigger(\"inserted.bs.\"+this.type);var l=this.getPosition(),h=o[0].offsetWidth,d=o[0].offsetHeight;if(r){var p=s,c=this.getPosition(this.$viewport);s=\"bottom\"==s&&l.bottom+d>c.bottom?\"top\":\"top\"==s&&l.top-dc.width?\"left\":\"left\"==s&&l.left-ha.top+a.height&&(n.top=a.top+a.height-l)}else{var h=e.left-s,d=e.left+s+i;ha.right&&(n.left=a.left+a.width-d)}return n},m.prototype.getTitle=function(){var t=this.$element,e=this.options;return t.attr(\"data-original-title\")||(\"function\"==typeof e.title?e.title.call(t[0]):e.title)},m.prototype.getUID=function(t){for(;t+=~~(1e6*Math.random()),document.getElementById(t););return t},m.prototype.tip=function(){if(!this.$tip&&(this.$tip=g(this.options.template),1!=this.$tip.length))throw new Error(this.type+\" `template` option must consist of exactly 1 top-level element!\");return this.$tip},m.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".tooltip-arrow\")},m.prototype.enable=function(){this.enabled=!0},m.prototype.disable=function(){this.enabled=!1},m.prototype.toggleEnabled=function(){this.enabled=!this.enabled},m.prototype.toggle=function(t){var e=this;t&&((e=g(t.currentTarget).data(\"bs.\"+this.type))||(e=new this.constructor(t.currentTarget,this.getDelegateOptions()),g(t.currentTarget).data(\"bs.\"+this.type,e))),t?(e.inState.click=!e.inState.click,e.isInStateTrue()?e.enter(e):e.leave(e)):e.tip().hasClass(\"in\")?e.leave(e):e.enter(e)},m.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off(\".\"+t.type).removeData(\"bs.\"+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null,t.$element=null})},m.prototype.sanitizeHtml=function(t){return n(t,this.options.whiteList,this.options.sanitizeFn)};var e=g.fn.tooltip;g.fn.tooltip=function i(o){return this.each(function(){var t=g(this),e=t.data(\"bs.tooltip\"),i=\"object\"==typeof o&&o;!e&&/destroy|hide/.test(o)||(e||t.data(\"bs.tooltip\",e=new m(this,i)),\"string\"==typeof o&&e[o]())})},g.fn.tooltip.Constructor=m,g.fn.tooltip.noConflict=function(){return g.fn.tooltip=e,this}}(jQuery),function(n){\"use strict\";var s=function(t,e){this.init(\"popover\",t,e)};if(!n.fn.tooltip)throw new Error(\"Popover requires tooltip.js\");s.VERSION=\"3.4.1\",s.DEFAULTS=n.extend({},n.fn.tooltip.Constructor.DEFAULTS,{placement:\"right\",trigger:\"click\",content:\"\",template:'

'}),((s.prototype=n.extend({},n.fn.tooltip.Constructor.prototype)).constructor=s).prototype.getDefaults=function(){return s.DEFAULTS},s.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),i=this.getContent();if(this.options.html){var o=typeof i;this.options.sanitize&&(e=this.sanitizeHtml(e),\"string\"===o&&(i=this.sanitizeHtml(i))),t.find(\".popover-title\").html(e),t.find(\".popover-content\").children().detach().end()[\"string\"===o?\"html\":\"append\"](i)}else t.find(\".popover-title\").text(e),t.find(\".popover-content\").children().detach().end().text(i);t.removeClass(\"fade top bottom left right in\"),t.find(\".popover-title\").html()||t.find(\".popover-title\").hide()},s.prototype.hasContent=function(){return this.getTitle()||this.getContent()},s.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr(\"data-content\")||(\"function\"==typeof e.content?e.content.call(t[0]):e.content)},s.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".arrow\")};var t=n.fn.popover;n.fn.popover=function e(o){return this.each(function(){var t=n(this),e=t.data(\"bs.popover\"),i=\"object\"==typeof o&&o;!e&&/destroy|hide/.test(o)||(e||t.data(\"bs.popover\",e=new s(this,i)),\"string\"==typeof o&&e[o]())})},n.fn.popover.Constructor=s,n.fn.popover.noConflict=function(){return n.fn.popover=t,this}}(jQuery),function(s){\"use strict\";function n(t,e){this.$body=s(document.body),this.$scrollElement=s(t).is(document.body)?s(window):s(t),this.options=s.extend({},n.DEFAULTS,e),this.selector=(this.options.target||\"\")+\" .nav li > a\",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on(\"scroll.bs.scrollspy\",s.proxy(this.process,this)),this.refresh(),this.process()}function e(o){return this.each(function(){var t=s(this),e=t.data(\"bs.scrollspy\"),i=\"object\"==typeof o&&o;e||t.data(\"bs.scrollspy\",e=new n(this,i)),\"string\"==typeof o&&e[o]()})}n.VERSION=\"3.4.1\",n.DEFAULTS={offset:10},n.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},n.prototype.refresh=function(){var t=this,o=\"offset\",n=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),s.isWindow(this.$scrollElement[0])||(o=\"position\",n=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var t=s(this),e=t.data(\"target\")||t.attr(\"href\"),i=/^#./.test(e)&&s(e);return i&&i.length&&i.is(\":visible\")&&[[i[o]().top+n,e]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},n.prototype.process=function(){var t,e=this.$scrollElement.scrollTop()+this.options.offset,i=this.getScrollHeight(),o=this.options.offset+i-this.$scrollElement.height(),n=this.offsets,s=this.targets,a=this.activeTarget;if(this.scrollHeight!=i&&this.refresh(),o<=e)return a!=(t=s[s.length-1])&&this.activate(t);if(a&&e=n[t]&&(n[t+1]===undefined||e .active\"),n=i&&r.support.transition&&(o.length&&o.hasClass(\"fade\")||!!e.find(\"> .fade\").length);function s(){o.removeClass(\"active\").find(\"> .dropdown-menu > .active\").removeClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!1),t.addClass(\"active\").find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),n?(t[0].offsetWidth,t.addClass(\"in\")):t.removeClass(\"fade\"),t.parent(\".dropdown-menu\").length&&t.closest(\"li.dropdown\").addClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),i&&i()}o.length&&n?o.one(\"bsTransitionEnd\",s).emulateTransitionEnd(a.TRANSITION_DURATION):s(),o.removeClass(\"in\")};var t=r.fn.tab;r.fn.tab=e,r.fn.tab.Constructor=a,r.fn.tab.noConflict=function(){return r.fn.tab=t,this};var i=function(t){t.preventDefault(),e.call(r(this),\"show\")};r(document).on(\"click.bs.tab.data-api\",'[data-toggle=\"tab\"]',i).on(\"click.bs.tab.data-api\",'[data-toggle=\"pill\"]',i)}(jQuery),function(l){\"use strict\";var h=function(t,e){this.options=l.extend({},h.DEFAULTS,e);var i=this.options.target===h.DEFAULTS.target?l(this.options.target):l(document).find(this.options.target);this.$target=i.on(\"scroll.bs.affix.data-api\",l.proxy(this.checkPosition,this)).on(\"click.bs.affix.data-api\",l.proxy(this.checkPositionWithEventLoop,this)),this.$element=l(t),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};function i(o){return this.each(function(){var t=l(this),e=t.data(\"bs.affix\"),i=\"object\"==typeof o&&o;e||t.data(\"bs.affix\",e=new h(this,i)),\"string\"==typeof o&&e[o]()})}h.VERSION=\"3.4.1\",h.RESET=\"affix affix-top affix-bottom\",h.DEFAULTS={offset:0,target:window},h.prototype.getState=function(t,e,i,o){var n=this.$target.scrollTop(),s=this.$element.offset(),a=this.$target.height();if(null!=i&&\"top\"==this.affixed)return n li').not('.bx-clone').length < 4){\n $('.bx-controls').hide();\n }\n\n this.DisplayMode = this._setDisplayMode();\n },\n _setDisplayMode: function () {\n if (Core.IsMobile()) {\n return \"mobile\";\n }\n else {\n return \"desktop\";\n }\n }\n};\n","Core.Cart = {\n init: function () {\n Core.Cart.Cache = {\n $cartTable: $('#cart-table'),\n $cartEmpty: $('#cart-empty'),\n $cartTotals: $('#cart-totals'),\n $updateItem: $('.cart-update'),\n $postcode: $('#Postcode'),\n $postcodeError: $('#postcodeError'),\n $removeItem: $('.remove-cart-item'),\n $favouritesBtn: $('.favourites-btn'),\n $subTotal: $('#subTotal'),\n $gst: $('#gst'),\n $total: $('#total'),\n $onBehalfTitle: $('#OnBehalfTitle'),\n $shipping: $('#shipping'),\n $submitCart: $('#btn-request-cart'),\n $organization: $('#Organization'),\n $freightOption: $('#freightOption'),\n $shippingCompany: $('#shippingCompany'),\n $accountDetails: $('#accountDetails'),\n $hideFreight: $('#HideFreight'),\n $orderOrganization: $('#OrderOrganization'),\n $therapistID: $('#TherapistID'),\n $requestQuote: $('#request-quote'),\n $quoteButtons: $('.btn-quote'),\n $quoteForm: $('#quote-form'),\n $quoteWindow: $('#quote-notification'),\n $quoteFormButton: $('#btn-request-quote'),\n $fundingType: $('#FundingType'),\n $cartFormButton: $('#btn-request-cart'),\n $dvCheckoutNoApprovalRequired: $('#dvCheckoutNoApprovalRequired'),\n $checkoutNoApprovalRequired: $('#checkoutNoApprovalRequired'),\n $dvCheckoutMessageRequired: $('#dvCheckoutMessageRequired'),\n $checkoutMessageRequired: $('#checkoutMessageRequired'),\n $dvCapex: $('#dvCapex'),\n $checkoutMinThreshold: $('#CheckoutMinThreshold'),\n $checkoutMaxThreshold: $('#CheckoutMaxThreshold'),\n $capexThreshold: $('#CapexThreshold'),\n $punchoutForm: $('#frmPunchoutForm'),\n $punchoutForm1: $('#PunchoutReturnForm'),\n $xmlString: $('[name=cXML-urlencoded]'),\n\n $validator: $('.frm-quote').validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n return;\n\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n }, 300);\n\n },\n rules: {\n password: {\n ContainsAtLeastOneDigit: true,\n ContainsAtLeastOneCapitalLetter: true\n }\n }\n })\n };\n\n function onSpin(context) {\n if ($(context).length > 0) {\n $('.cart-update', context).addClass('show');\n Core.Cart.disableRequestButton();\n Core.Cart.disableCartButton();\n }\n }\n\n function onPunchoutSubmit(xml) {\n Core.Cart.Cache.$xmlString.val(xml);\n Core.Cart.Cache.$punchoutForm.trigger('submit');\n }\n\n $('.product-qty').kendoNumericTextBox({\n format: \"#\",\n step: 1,\n change: function() {\n if (this.value() === null) {\n this.value(1);\n }\n },\n spin: onSpin\n }).on('focus', function(e){\n var $qtyColumn = $(e.target).closest('.col-qty');\n onSpin($qtyColumn.siblings('.col-update')[0]);\n });\n\n //update cart item\n this.update();\n this.updateShipping();\n\n //remove cart item\n this.remove();\n\n //add|remove favourites\n this.addRemoveFavourties();\n\n //request quote\n this.requestQuote();\n\n this.initForm();\n\n var stockIntegration = new Core.StockIntegration('co_agedcare');\n stockIntegration.init();\n },\n initForm: function () { \n var $form = $('#frmSearchContact');\n if ($form.length === 0) return;\n \n // Add timeout to wait for kendo\n setTimeout(function() { \n $form.find('select').each(function(i, elem) {\n var $dropdown = $(elem);\n $dropdown.data(\"kendoDropDownList\") && $dropdown.data(\"kendoDropDownList\").value($dropdown.val() || ''); // give initial value \n }); \n }, 300);\n\n $form.find('#btn-request-cart').on('click', function (e) {\n e.preventDefault();\n var isValid = true;\n \n $form.find('select[data-rule-required=\"true\"]').each(function(i, elem) { \n if (!SelectValidator(elem).isValid()) {\n isValid = false;\n }\n });\n $form.find('input:visible[data-rule-required=\"true\"]').each(function(i, elem) { \n $(elem).valid();\n });\n\n // if (isValid && $form.valid()) $form.trigger('submit');\n });\n },\n disableRequestButton: function () {\n Core.Cart.Cache.$quoteFormButton.addClass('disabled').prop('disabled', true);\n },\n enableRequestButton: function () {\n Core.Cart.Cache.$quoteFormButton.removeClass('disabled').prop('disabled', false);\n },\n disableCartButton: function () {\n Core.Cart.Cache.$cartFormButton.addClass('disabled').prop('disabled', true);\n },\n enableCartButton: function () {\n Core.Cart.Cache.$cartFormButton.removeClass('disabled').prop('disabled', false);\n },\n checkCartButtonVisibility: function(output) {\n // HideFrieght === true /-> hasInvalidShippingCost = false <-\n // HideFrieght === false /-> output.ShippingCost > 0\n // -> but with genuine output.ShippingCost == 0\n // noShippingCost = true -> genuine 0\n // noShippingCost = false -> no genuine 0\n //\n // HideFrieght -> site level\n // noShippingCost -> item level\n\n var hasInvalidShippingCost = output\n && output.IsInvalidShipping\n && ! output.HideFrieght;\n\n if ($('.cart-update.show').length > 0 || hasInvalidShippingCost) {\n Core.Cart.disableRequestButton();\n Core.Cart.disableCartButton();\n $(\"#shippingError\").html(output.Message);\n $(\"#shippingError\").show();\n } else {\n Core.Cart.enableRequestButton();\n Core.Cart.enableCartButton();\n $(\"#shippingError\").hide();\n }\n },\n update: function () {\n Core.Cart.Cache.$updateItem.on('click', function () { \n var $updateBtn = $(this),\n _$item = $(this).parents('tr'),\n _qty = parseInt(_$item.find('.product-qty').eq(1).val()) !== \"NaN\" && parseInt(_$item.find('.product-qty').eq(1).val()) ? parseInt(_$item.find('.product-qty').eq(1).val()) : 1,\n _unitPrice = parseFloat(_$item.find('.unit-price').data(\"price\"));\n\n var postcode = Core.Cart.Cache.$postcode.val() || \"\";\n var org = Core.Cart.Cache.$organization.val() || \"\";\n var freight = Core.Cart.Cache.$hideFreight.val() || \"\";\n var orderOrganization = Core.Cart.Cache.$orderOrganization.val() || \"\";\n var therapistID = Core.Cart.Cache.$therapistID.val() || \"\";\n var agedCare = ($(this).hasClass(\"aged-care\"));\n var $url = ($(this).hasClass(\"aged-care\"))\n ? '/cart/updatecart' //'https://run.mocky.io/v3/543471ab-7551-4d2c-a5a3-d1bdf6eceafa'\n : '/cart/updatequote';\n\n _$item.find('.product-qty').eq(1).val(_qty);\n\n Core.ShowPageLoading();\n\n // Testing purpose\n //\n // {\n // \"WasSuccess\": true,\n // \"Result\": \"\",\n // \"Name\": null,\n // \"Url\": null,\n // \"ImageUrl\": null,\n // \"Code\": null,\n // \"Quantity\": 0,\n // \"PriceType\": null,\n // \"Price\": null,\n // \"Currency\": \"$\",\n // \"SubTotal\": \"$6,900.00\",\n // \"TaxTotal\": \"$22.40\",\n // \"Total\": \"$7,146.40\",\n // \"ShippingCost\": \"$224.00\",\n // \"SubmitText\": \"Request Approval\",\n // \"HideFreight\": false,\n // \"Message\": \"\",\n // \"IsInvalidShipping\": false,\n // \"OrderStatus\": 1,\n // \"UnitPrice\": 2.2,\n // \"UnitPriceLabel\": \"$2.2\"\n // }\n //\n // $url = 'https://run.mocky.io/v3/6b1681b8-c153-4fd4-8d1f-7393b81cc6df';\n // $url = 'https://run.mocky.io/v3/ea477288-b8c7-466b-9a19-5ffed2df2cd1'; // empty string additional info\n\n var org = Core.Cart.Cache.$organization.val() || \"\";\n var freightOption = Core.Cart.Cache.$freightOption.val() || \"\";\n var shippingCompany = Core.Cart.Cache.$shippingCompany.val() || \"\";\n var accountDetails = Core.Cart.Cache.$accountDetails.val() || \"\";\n\n var parameters = {\n code: _$item.data('id'),\n qty: _qty,\n postcode: postcode,\n organization: org,\n hideFreight: freight,\n orderOrganization: orderOrganization,\n therapistID: therapistID\n };\n\n if (org) parameters.organization = org; \n if (freightOption) parameters.freightOption = freightOption; \n if (shippingCompany) parameters.shippingCompany = shippingCompany; \n if (accountDetails) parameters.accountDetails = accountDetails;\n\n $.ajax({\n url: $url,\n data: parameters,\n type: 'get',\n dataType: 'json',\n success: function (output) {\n Core.HidePageLoading();\n Core.Engine.getCartSummary();\n\n var currency = output.Currency || '$';\n\n\n if (_unitPrice > 0) {\n (output.UnitPrice)\n && (_unitPrice = output.UnitPrice);\n\n // equivalent of UnitPriceLabel\n (output.Price)\n && _$item.find('[data-price]').text(output.Price);\n\n _$item.find('.sub-total').text(currency + parseFloat(_qty * _unitPrice).toFixed(2));\n } else {\n _$item.find('.sub-total').text(Core.Config.POA.Text);\n }\n\n Core.Cart.UpdateTotals(output);\n Core.Cart.UpdateMessages(output, agedCare);\n Core.Cart.UpdateAdditionalInfo(_$item, output);\n\n if ($updateBtn) {\n $updateBtn.removeClass('show');\n }\n\n Core.Cart.checkCartButtonVisibility(output);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n\n // check local stock\n /*\n if (!!$('#cart').data('check-local-stock-api')) {\n var stockIntegration = new Core.StockIntegration('co_agedcare');\n stockIntegration.updateStock(false, $updateBtn.closest('.product-row'));\n }\n */\n });\n },\n updateShipping: function () {\n function updateShipping() {\n Core.ShowPageLoading();\n Core.Cart.Cache.$submitCart.attr('disabled', false);\n\n var postcode = Core.Cart.Cache.$postcode.val() || \"\";\n var org = Core.Cart.Cache.$organization.val() || \"\";\n var freight = Core.Cart.Cache.$hideFreight.val() || \"\";\n var freightOption = Core.Cart.Cache.$freightOption.val() || \"\";\n var shippingCompany = Core.Cart.Cache.$shippingCompany.val() || \"\";\n var accountDetails = Core.Cart.Cache.$accountDetails.val() || \"\";\n var orderOrganization = Core.Cart.Cache.$orderOrganization.val() || \"\";\n var therapistID = Core.Cart.Cache.$therapistID.val() || \"\";\n var agedCare = ($(this).hasClass(\"aged-care\"));\n\n var parameters = {\n postcode: postcode,\n organization: org,\n hideFreight: freight,\n orderOrganization: orderOrganization,\n therapistID: therapistID,\n };\n\n if (freightOption) parameters.freightOption = freightOption; \n if (shippingCompany) parameters.shippingCompany = shippingCompany; \n if (accountDetails) parameters.accountDetails = accountDetails;\n\n $.ajax({\n url: '/cart/updateshipping',\n // url: 'https://run.mocky.io/v3/df015c09-d1e9-449c-936e-f9b03bcd611d',\n data: parameters,\n type: 'get',\n dataType: 'json',\n success: function (output) {\n Core.HidePageLoading();\n Core.Engine.getCartSummary();\n\n Core.Cart.UpdateTotals(output);\n Core.Cart.UpdateMessages(output, agedCare);\n\n Core.Cart.checkCartButtonVisibility(output);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n console.error(thrownError);\n Core.HidePageLoading();\n }\n });\n };\n\n function updateShippingLabel() {\n var orgVal = Core.Cart.Cache.$organization.val();\n var orgId = Core.Cart.Cache.$organization.attr('id');\n var orgLabel = $(`label[for=\"${orgId}\"]`)?.data('label') || 'select facility';\n var freightVal = Core.Cart.Cache.$freightOption.val();\n var freightId = Core.Cart.Cache.$freightOption.attr('id');\n var freightLabel = $(`label[for=\"${freightId}\"]`)?.data('label') || 'select freight term';\n\n Core.Cart.Cache.$submitCart.attr('disabled', true);\n if (!freightVal) {\n Core.Cart.Cache.$shipping.text(`Please ${freightLabel}`);\n } else if (!orgVal) {\n Core.Cart.Cache.$shipping.text(`Please ${orgLabel}`);\n }\n }\n\n Core.Cart.Cache.$postcode.on('change', updateShipping);\n Core.Cart.Cache.$organization.on('change', function() {\n // check if freight option exist\n if (Core.Cart.Cache.$freightOption.length > 0) {\n if (Core.Cart.Cache.$freightOption.val() && Core.Cart.Cache.$organization.val()) {\n updateShipping();\n } else {\n updateShippingLabel();\n }\n } else {\n updateShipping();\n }\n });\n\n Core.Cart.Cache.$freightOption.on('change', function() {\n var freightOption = $(this).val() || \"\";\n if (freightOption === 'OnAccount') {\n // show input\n $('#dvOnAccountFields').removeClass('hidden');\n } else {\n // hide input\n $('#dvOnAccountFields').addClass('hidden');\n }\n\n // check if facility dropdown exist\n if (Core.Cart.Cache.$organization.length > 0) {\n if (Core.Cart.Cache.$organization.val() && Core.Cart.Cache.$freightOption.val()) {\n updateShipping();\n } else {\n updateShippingLabel();\n }\n } else {\n updateShipping();\n }\n });\n\n // seems like kendo clash with jquery validation that makes the error message shows twice\n // so, do manual check if there is already error message (might need to ceck later for not hacky solution)\n // timeout needed to wait for kendo to finish its validation\n Core.Cart.Cache.$freightOption.on('blur', function() {\n var $parent = $(this).closest('.k-dropdownlist');\n setTimeout(function() {\n $parent.find('label.error').remove();\n }, 0);\n });\n },\n punchoutSubmit: function (xml, id) {\n if (id === 1) {\n Core.Cart.Cache.$xmlString.val(xml);\n $(document.body).append(Core.Cart.Cache.$punchoutForm);\n Core.Cart.Cache.$punchoutForm.trigger('submit');\n }\n else {\n Core.Cart.Cache.$punchoutForm1.html(xml);\n $(document.body).append(Core.Cart.Cache.$punchoutForm1);\n Core.Cart.Cache.$punchoutForm1.trigger('submit');\n }\n },\n remove: function () {\n Core.Cart.Cache.$removeItem.on('click', function () {\n var _$item = $(this).parents('tr'),\n _$siblings = _$item.siblings();\n\n Core.ShowPageLoading();\n\n var postcode = Core.Cart.Cache.$postcode.val() || \"\";\n var org = Core.Cart.Cache.$organization.val() || \"\";\n var freight = Core.Cart.Cache.$hideFreight.val() || \"\";\n var orderOrganization = Core.Cart.Cache.$orderOrganization.val() || \"\";\n var therapistID = Core.Cart.Cache.$therapistID.val() || \"\";\n var freightOption = Core.Cart.Cache.$freightOption.val() || \"\";\n var agedCare = ($(this).hasClass(\"aged-care\"));\n var $url = ($(this).hasClass(\"aged-care\"))\n ? '/cart/removefromcart'\n : '/cart/removefromquote';\n\n var parameters = {\n code: _$item.data('id'),\n postcode: postcode,\n organization: org,\n hideFreight: freight,\n orderOrganization: orderOrganization,\n therapistID: therapistID\n };\n\n if (freightOption) parameters.freightOption = freightOption;\n\n $.ajax({\n url: $url,\n data: parameters,\n type: 'get',\n dataType: 'json',\n success: function (output) {\n Core.HidePageLoading();\n Core.Engine.getCartSummary();\n\n if (_$siblings.length !== 0) {\n Core.Cart.UpdateTotals(output);\n Core.Cart.UpdateMessages(output, agedCare);\n _$item.remove();\n }\n else {\n Core.Cart.Cache.$cartTable.add(Core.Cart.Cache.$cartTotals).add(Core.Cart.Cache.$quoteButtons).add(Core.Cart.Cache.$quoteForm).remove();\n Core.Cart.Cache.$cartEmpty.show();\n }\n\n Core.Cart.checkCartButtonVisibility(output);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n });\n },\n UpdateTotals: function (output) {\n Core.Cart.Cache.$subTotal.text(output.SubTotal);\n Core.Cart.Cache.$gst.text(output.TaxTotal);\n Core.Cart.Cache.$total.text(output.Total);\n\n if (output.IsInvalidShipping && Core.Cart.Cache.$postcode.length) {\n Core.Cart.Cache.$shipping.text('Enter Postcode');\n Core.Cart.Cache.$postcodeError.hide();\n } else if (output.IsInvalidShipping && Core.Cart.Cache.$organization.val() && Core.Cart.Cache.$organization.val().length < 1) {\n Core.Cart.Cache.$shipping.text(Core.Cart.Cache.$onBehalfTitle.val());\n }\n else {\n Core.Cart.Cache.$shipping.text(output.ShippingCost);\n Core.Cart.Cache.$postcodeError.hide();\n }\n\n Core.Cart.Cache.$submitCart.val(output.SubmitText);\n },\n UpdateMessages: function (output, agedCare) {\n if (agedCare) {\n if (output.OrderStatus === 2) {\n Core.Cart.Cache.$dvCheckoutNoApprovalRequired.show();\n Core.Cart.Cache.$dvCheckoutMessageRequired.hide();\n }\n else if (output.OrderStatus === 1) {\n Core.Cart.Cache.$dvCheckoutMessageRequired.show();\n Core.Cart.Cache.$dvCheckoutNoApprovalRequired.hide();\n } else {\n Core.Cart.Cache.$dvCheckoutMessageRequired.hide();\n Core.Cart.Cache.$dvCheckoutNoApprovalRequired.hide();\n }\n\n if (parseInt(output.Total.replace(\"$\", \"\").replace(\",\", \"\")) > parseInt(Core.Cart.Cache.$capexThreshold.val())) {\n Core.Cart.Cache.$dvCapex.show();\n } else {\n Core.Cart.Cache.$dvCapex.hide();\n }\n }\n },\n UpdateAdditionalInfo: function ($row, item) { \n if ($row.find('.additional-info').length > 0) {\n if (item.AdditionalInfo || item.AdditionalInfo === \"\") {\n $row.find('.additional-info').text(item.AdditionalInfo);\n }\n }\n\n if ($row.find('.col-gst').length > 0 && item.Gst) {\n $row.find('.col-gst > span').text(item.Gst);\n }\n\n var $local = $row.find(`.stock-local`);\n \n if ($local.length > 0) {\n $local.find('.stock-status').css('background-color', item.StockColor);\n $local.find('.stock-message').html(`${item.StockMessage}`);\n $local.addClass(CLS_CHECKED);\n $row.find(`.stock-national`)?.addClass(CLS_HIDE);\n }\n },\n addRemoveFavourties: function () {\n Core.Cart.Cache.$favouritesBtn.on('click', function () {\n var _$this = $(this),\n _$item = _$this.parents('tr'),\n _isFavourite = _$this.hasClass('icon-cart-fav');\n\n var _apiUrl = '';\n\n if (_isFavourite) {\n _apiUrl = '/cart/removefromfavourites';\n }\n else {\n _apiUrl = '/cart/addtofavourites';\n }\n\n $.ajax({\n url: _apiUrl,\n data: { code: _$item.data('id') },\n type: 'get',\n dataType: 'json',\n success: function (output) {\n if (_isFavourite) {\n _$this.removeClass('icon-cart-fav').addClass('icon-cart-fav-add').attr('title', 'Add to favourites');\n }\n else {\n _$this.removeClass('icon-cart-fav-add').addClass('icon-cart-fav').attr('title', 'Remove from favourites');\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n });\n },\n requestQuote: function (e) {\n Core.Cart.Cache.$quoteFormButton.on('click', function () {\n Core.Cart.Cache.$quoteForm.show();\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: Core.Cart.Cache.$quoteForm.offset().top\n }, 500);\n });\n\n // Handle Funding type dropdown on change\n Core.Cart.Cache.$fundingType.on('change', function() {\n var $this = $(this);\n var fundingType = $this.val();\n var $ndisWrap = $('#ndis-inputs-wrap');\n\n // if ndis selected, it will show NDIS-related fields\n if (fundingType.toLowerCase() === 'ndis'){\n $ndisWrap.removeClass('hidden');\n Core.Cart.Cache.$quoteForm.find('#ndis-inputs-wrap .radio-group:first input[type=\"radio\"]').rules('add', {\n required: true,\n messages: {\n required: 'Please select one of the options above'\n },\n errorPlacement: function(error, element) {\n // need to move the error message for radio groups\n var $error = $(error).next('.error');\n if($error && $error.length > 0) {\n var $parent = $error.closest('.frm-fld');\n $error.css('marginBottom','8px')\n $parent.append($error);\n }\n },\n })\n } else {\n $ndisWrap.addClass('hidden');\n Core.Cart.Cache.$quoteForm.find('input[type=\"radio\"]').rules('remove', 'required')\n }\n \n // show funding type message\n var $fundingTypeMessage = $(`.fundingTypeMessage[data-id=\"${fundingType}\"]`);\n $(`.fundingTypeMessage`).addClass('hidden');\n if ($fundingTypeMessage.length > 0) {\n $fundingTypeMessage.removeClass('hidden');\n }\n });\n\n Core.Cart.Cache.$quoteForm.on('submit', function (e) {\n e.preventDefault();\n\n // reset recaptcha on submit error\n // recaptcha is initialized from html page (https://www.aidacare.com.au/cart/)\n var resetRecaptcha = function() {\n if (grecaptcha && recaptcha1) {\n grecaptcha.reset(recaptcha1);\n }\n };\n\n var $form = $(this);\n var _$validationMessage = $form.find('.frm-validation-msg');\n _$validationMessage.html(\"\");\n\n if ($form.valid()) {\n Core.ShowPageLoading();\n $.ajax({\n url: $form.attr('action'),\n data: $form.serialize(),\n type: 'POST',\n dataType: 'json',\n success: function (output) {\n Core.HidePageLoading();\n\n _$validationMessage.hide();\n if (output.Success) {\n $form.hide();\n var _width = Core.Config.CartNotification.Width,\n _height = Core.Config.CartNotification.Height;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n var _$confirmationWindow = Core.Cart.Cache.$quoteWindow.kendoWindow({\n width: _width,\n height: _height,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n pinned: true,\n draggable: false,\n appendTo: '#content'\n });\n\n var _$regLink = _$confirmationWindow.find(\"a.register\");\n if (_$regLink.length > 0) {\n var _$href = _$regLink.attr(\"href\");\n _$regLink.attr(\"href\", _$href + \"?quoteid=\" + output.QuoteId);\n }\n\n _$confirmationWindow.data(\"kendoWindow\").center().open();\n\n $(\".k-overlay\").on('click', function() {\n window.location.href = window.location.href;\n });\n\n $(\".k-window-action > span.k-i-close, .cart-notification-buttons > a.k-i-close\").on('click', function (e) {\n window.location.href = window.location.href;\n });\n\n } else {\n _$validationMessage.html('
' + output.ErrorMessage + '
').show();\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: _$validationMessage.offset().top - 40\n }, 500);\n\n resetRecaptcha();\n }\n },\n error: function(xhr, ajaxOptions, thrownError) {\n //todo: do something\n resetRecaptcha();\n }\n });\n } else {\n Core.Cart.Cache.$validator.focusInvalid();\n }\n });\n }\n};\n\n$(function() {\n $('.favourites-btn').on('click', function () {\n var _$this = $(this),\n _$item = _$this.parents('tr'),\n _isFavourite = _$this.hasClass('icon-cart-fav');\n\n var _apiUrl = '';\n\n if (_isFavourite) {\n _apiUrl = '/cart/removefromfavourites';\n }\n else {\n _apiUrl = '/cart/addtofavourites';\n }\n\n $.ajax({\n url: _apiUrl,\n data: { code: _$item.data('id') },\n type: 'get',\n dataType: 'json',\n success: function (output) {\n if (_isFavourite) {\n _$this.removeClass('icon-cart-fav').addClass('icon-cart-fav-add').attr('title', 'Add to favourites');\n }\n else {\n _$this.removeClass('icon-cart-fav-add').addClass('icon-cart-fav').attr('title', 'Remove from favourites');\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n });\n});\n","\nCore.CheckoutAvoidDuplicate = function(elem) {\n\n /*\n\n\n DATASET\n\n\n */\n\n function hasDataset(elem, name) {\n return elem &&\n elem.dataset &&\n typeof elem.dataset[name] !== 'undefined';\n }\n\n function warnData(name) {\n console.warn('CheckoutAvoidDuplicate data for ' + name + ' missing');\n return;\n }\n\n function getDataset(elem, name) {\n return hasDataset(elem, name)\n ? elem.dataset[name]\n : warnData(name);\n }\n\n\n /*\n\n\n TMPL\n\n\n */\n\n function counterTmlp(data) {\n return `
\n
\n
\n \n \n \n
\n\n
\n WARNING
\n Another approver is looking this order\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
Warning
\n
\n
\n `;\n }\n\n var el = {\n elem: elem,\n portalCheckout: document.querySelector('#portal-checkout'),\n };\n\n var data = {\n orderNumber: getDataset(elem, 'orderNumber'),\n dashboardUrl: getDataset(elem, 'dashboardUrl'),\n };\n\n\n\n // Methods\n var m = {\n init: function() {\n if (typeof data.orderNumber === 'undefined') {\n return;\n }\n\n m.boot();\n },\n\n\n boot: function() {\n document.addEventListener('aidacare.warningshow', function() { m.showWarning(); m.calcWarningPosition(); });\n document.addEventListener('aidacare.warninghide', m.hideWarning);\n document.addEventListener('aidacare.orderchanged', function() { m.showOrderChangedBanner(); m.closeAccordions(); });\n\n document.addEventListener('delivery-counter:show', m.calcWarningPosition);\n document.addEventListener('delivery-counter:hide', m.calcWarningPosition);\n\n m.connect();\n },\n\n connect: function() {\n var connection = $.hubConnection();\n var proxy = connection.createHubProxy('aidacareHub');\n\n proxy.on('multipleUsers', m.fire('aidacare.warningshow'));\n proxy.on('singleUser', m.fire('aidacare.warninghide'));\n proxy.on('orderChanged', m.fire('aidacare.orderchanged'));\n proxy.on('orderChanged', m.fire('aidacare.clearcart'));\n\n\n connection.start()\n .done(function(){ console.log('Now connected, connection ID=' + connection.id); })\n .fail(function(){ console.log('Could not connect'); });\n },\n\n fire: function(eventName) {\n return function(orderNumber, message) {\n console.log(orderNumber);\n console.log(message);\n\n if (orderNumber !== data.orderNumber) {\n return;\n }\n\n var ev = new CustomEvent(eventName);\n document.dispatchEvent(ev);\n }\n },\n\n\n /*\n\n\n Order Changed Banner\n\n\n */\n\n showOrderChangedBanner: function() {\n if (m.hasOrderChangedBanner()) {\n return;\n }\n\n var banner = m.getOrderChangedBanner();\n el.portalCheckout.prepend(banner);\n },\n\n getOrderChangedBanner: function() {\n var banner = document.createElement('div');\n banner.classList.add('checkoutAvoidDuplicate-orderChanged');\n banner.innerHTML = `Attention: The order has already changed, please go to the dashboard and check for the changes`;\n\n return banner;\n },\n\n hasOrderChangedBanner: function() {\n return document.querySelector('.checkoutAvoidDuplicate-orderChanged') !== null;\n },\n\n closeAccordions: function() {\n var accordionItems = document.querySelectorAll('.portal-checkout__accordion-item');\n\n function isNotNull(item) {\n return ! (item == null);\n }\n\n function removeOpenPassedClasses(item) {\n item.classList.remove('open');\n item.classList.remove('passed');\n }\n\n Array\n .from(accordionItems)\n .filter(isNotNull)\n .forEach(removeOpenPassedClasses)\n },\n\n hasWarning: function() {\n return document.querySelector('.checkoutAvoidDuplicateWarning') !== null;\n },\n\n hasDeliveryCounterVisible: function() {\n var delivery = document.querySelector('.deliveryCounter');\n\n return delivery && (delivery.style.display === 'block');\n },\n\n calcWarningPosition: function() {\n if (! m.hasWarning()) {\n return;\n }\n\n var warn = document.querySelector('.checkoutAvoidDuplicateWarning');\n\n m.hasDeliveryCounterVisible()\n ? (warn.style.bottom = 'calc(32px + 87px)')\n : (warn.style.bottom = '16px');\n },\n\n showWarning: function() {\n if (m.hasWarning()) {\n return;\n }\n\n var warn = document.createElement('div');\n warn.classList.add('checkoutAvoidDuplicateWarning');\n warn.classList.add('checkoutAvoidDuplicateWarning--yellow');\n warn.classList.add('checkoutAvoidDuplicateWarning--showSmall');\n\n warn.innerHTML = counterTmlp();\n\n function swapClasses(e) {\n e.currentTarget.classList.toggle('checkoutAvoidDuplicateWarning--showLarge');\n e.currentTarget.classList.toggle('checkoutAvoidDuplicateWarning--showSmall');\n }\n\n warn.addEventListener('click', swapClasses);\n\n document.body.prepend(warn);\n },\n\n hideWarning: function() {\n var el = document.querySelector('.checkoutAvoidDuplicateWarning');\n el && el.remove();\n },\n };\n\n return m;\n\n};\n","\nCore.CheckoutComment = function(elem, btnCheck) {\n var BTN_SHOW_TEXT_ADD = 'Add Product Comment';\n var BTN_SHOW_TEXT_EDIT = 'Edit Product Comment';\n var ERROR_TMPL = '
Maximum 250 characters
';\n var COMMENT_FORM_ID = Date.now() + '-' + Math.floor(Math.random() * 100) + '-' + Math.floor(Math.random() * 100);\n\n function hide(elem) {\n elem && elem.classList.add('d-none');\n }\n\n function show(elem) {\n elem && elem.classList.remove('d-none');\n }\n\n function hasAllTheFields(fieldList) {\n var previousValue = true;\n\n fieldList.forEach(function(currentValue) {\n previousValue = previousValue && currentValue;\n });\n\n return previousValue;\n }\n\n\n var el = {\n elem: elem,\n\n btnShow: elem.querySelector('[data-comment=\"btn-show\"]'),\n\n inputHidden: elem.querySelector('[data-comment=\"hidden\"]'),\n commentText: elem.querySelector('[data-comment=\"text\"]'),\n form: elem.querySelector('[data-comment=\"form\"]'),\n textarea: elem.querySelector('[data-comment=\"textarea\"]'),\n\n btnSave: elem.querySelector('[data-comment=\"save\"]'),\n btnCancel: elem.querySelector('[data-comment=\"cancel\"]'),\n btnDelete: elem.querySelector('[data-comment=\"delete\"]'),\n };\n\n var data = {\n isValid: true\n };\n\n // Methods\n var m = {\n init: function() {\n var fieldList = [\n el.btnShow,\n el.inputHidden,\n el.commentText,\n el.textarea,\n el.form,\n el.btnSave,\n el.btnCancel,\n el.btnDelete\n ];\n\n if (! hasAllTheFields(fieldList)) {\n return;\n }\n\n m.boot();\n },\n\n\n boot: function() {\n el.btnShow.addEventListener('click', m.showForm);\n el.btnCancel.addEventListener('click', m.onClickCancel);\n el.btnDelete.addEventListener('click', m.onClickDelete);\n el.btnSave.addEventListener('click', m.onClickSave);\n el.textarea.addEventListener('input', function() {\n el.textarea.value.length > 250\n ? m.showError()\n : m.hideError();\n });\n },\n\n showForm: function(e) {\n e.preventDefault();\n\n m.setTextArea(el.inputHidden.value);\n show(el.form);\n hide(el.commentText);\n hide(el.btnShow);\n btnCheck.openCommentForm(COMMENT_FORM_ID);\n },\n\n onClickCancel: function(e) {\n e.preventDefault();\n\n hide(el.form);\n show(el.btnShow);\n show(el.commentText);\n m.setTextArea('');\n m.hideError();\n btnCheck.closeCommentForm(COMMENT_FORM_ID);\n },\n\n onClickDelete: function(e) {\n e.preventDefault();\n\n m.setBtnShowText(BTN_SHOW_TEXT_ADD);\n m.setTextArea('');\n m.setInputHidden('');\n m.setCommentText('');\n m.hideError();\n\n hide(el.form);\n show(el.commentText);\n show(el.btnShow);\n\n btnCheck.closeCommentForm(COMMENT_FORM_ID);\n },\n\n onClickSave: function(e) {\n e.preventDefault();\n\n if (! data.isValid) {\n return;\n }\n\n m.setInputHidden(el.textarea.value);\n m.setCommentText(el.textarea.value)\n el.textarea.value.length > 0\n ? m.setBtnShowText(BTN_SHOW_TEXT_EDIT)\n : m.setBtnShowText(BTN_SHOW_TEXT_ADD);\n hide(el.form);\n show(el.btnShow);\n show(el.commentText);\n m.setTextArea('');\n\n btnCheck.closeCommentForm(COMMENT_FORM_ID);\n },\n\n setTextArea: function(val) {\n el.textarea.value = val;\n },\n\n setInputHidden: function(val) {\n el.inputHidden.value = val;\n },\n\n setCommentText: function(val) {\n el.commentText.innerText = val;\n },\n\n setBtnShowText: function(text) {\n el.btnShow.innerText = text;\n },\n\n showError: function() {\n if (!data.isValid) {\n return;\n }\n\n data.isValid = false;\n $(el.textarea).after(ERROR_TMPL);\n el.btnSave.disabled = true;\n },\n\n hideError: function() {\n if (data.isValid) {\n return;\n }\n\n data.isValid = true;\n $(elem).find('[data-comment=\"error\"]').remove();\n el.btnSave.disabled = false;\n },\n\n };\n\n return m;\n};\n","/**\n * Prevent user from continue if add/edit comment is open\n */\nCore.CheckoutCommentContinueBtnCheck = function() {\n var data = new Set();\n var btn = document.querySelector('[data-btn=\"product-continue\"]');\n\n var m = {\n openCommentForm: function(COMMENT_FORM_ID) {\n data.add(COMMENT_FORM_ID);\n m.updateBtn();\n },\n\n closeCommentForm: function(COMMENT_FORM_ID) {\n data.delete(COMMENT_FORM_ID);\n m.updateBtn();\n },\n\n updateBtn: function() {\n btn &&\n (btn.disabled = data.size > 0);\n }\n };\n\n return m;\n};","function ClientAddForm($rootDom) {\n var form = new ClientForm($rootDom);\n var popup = new ClientPopup($rootDom, {title: \"ADD NEW CLIENT\"});\n\n var m = {\n init: function() {\n form.reset();\n m.initForm();\n\n popup.init();\n popup.onClose(form.resetValidation);\n },\n\n initForm: function() {\n form.isMultiOrganization()\n ? form.disableForm()\n : form.enableForm()\n },\n };\n\n return m;\n}\n","Core.ClientAddressBook = {\n init: function () {\n var _self = this;\n\n Core.ClientAddressBook.Cache = {\n $searchInputText: $('.client-address-book__search-input'),\n $searchRemoveButton: $('.client-address-book__search-remove'),\n\n $btnAddNew: $('.btn-addnew'),\n\n $popupView: $('#viewEditClient'),\n $popupNew: $('#addNewClient'),\n\n $btnFilter: $('#btnFilter'),\n $btnReset: $('#btnReset'),\n $portalDropdown: $('select#dropdownOrganization'),\n\n initialGroupId: $('select#dropdownOrganization').val(), // get default portal id\n };\n\n _self.prepareDropdown();\n _self.initSearch();\n _self.searchInputText();\n _self.removeSearchText();\n\n _self.handleShowDropDownActions();\n\n _self.handleBtnViewEdit();\n _self.handleBtnsAdd();\n _self.handleBtnFilter();\n _self.handleBtnReset();\n },\n\n\n /*\n\n SEARCH\n - initSearch: init letter and buttons\n\n */\n\n initSearch: function() {\n // search icon\n $('.client-address-book__search-button').on('click', Core.ClientAddressBook.getClients);\n\n // Letter filter\n $('.btn-addressfilter').on('click', function (e) {\n e.preventDefault();\n $('.btn-addressfilter').removeClass('is-selected');\n $(this).addClass('is-selected');\n Core.ClientAddressBook.getClients();\n });\n\n // input typing\n $('#SearchTextFilter').on('keyup', function (e) {\n //enter\n if (e.which == 13 || e.keyCode == 13) {\n Core.ClientAddressBook.getClients();\n }\n\n //escape\n if (e.which == 27 || e.keyCode == 27) {\n Core.ClientAddressBook.Cache.$searchRemoveButton.trigger('click');\n }\n });\n },\n\n searchInputText: function() {\n Core.ClientAddressBook.Cache.$searchInputText.on('input', function () {\n if ((this.value).trim(\" \") != \"\")\n Core.ClientAddressBook.Cache.$searchRemoveButton.show(0);\n else\n Core.ClientAddressBook.Cache.$searchRemoveButton.hide(0);\n });\n },\n\n removeSearchText: function() {\n Core.ClientAddressBook.Cache.$searchRemoveButton.on(\"click\", function () {\n Core.ClientAddressBook.Cache.$searchInputText.val(\"\");\n Core.ClientAddressBook.getClients();\n Core.ClientAddressBook.Cache.$searchRemoveButton.hide(0);\n });\n },\n\n getClients: function() {\n Core.ShowPageLoading();\n\n var letter = $('.btn-addressfilter.is-selected').data('letter')\n , textFlt = $('#SearchTextFilter').val()\n , url = $('#client-address-book').data('url-getclients')\n , groupId= $('select[id=dropdownOrganization]').val()\n , param = {};\n\n if (letter) param.selectedFilterLetter = letter;\n if (textFlt) param.searchTextFilter = textFlt;\n if (groupId) param.groupId = groupId;\n\n if (!url) {\n console.warn(\"Can't find 'dataurl-getclients'. Returned early.\");\n return;\n }\n\n $.ajax({\n url: url,\n type: 'GET',\n data: param,\n success: function(html) {\n $('#TableClientAddressBook').html(html);\n Core.ClientAddressBook.handleShowDropDownActions();\n Core.ClientAddressBook.handleBtnViewEdit();\n Core.HidePageLoading();\n },\n error: function(error) {\n console.log(error);\n Core.HidePageLoading();\n }\n });\n },\n\n\n /*\n\n DROP DOWN\n\n */\n\n prepareDropdown: function() {\n // prepend empty value\n $('#clientPopupResStateAdd').prepend(\"\").val('');\n $('#clientPopupResStateAdd').prop('required', true);\n },\n\n handleShowDropDownActions: function() {\n function showNextDropDown(e) {\n var elUl = e.target.parentElement.querySelector('.client-address-book__drop-down__ul');\n\n elUl\n && elUl.classList\n && elUl.classList.remove('d-none');\n\n var elBtn = e.target.parentElement.querySelector('.client-address-book__drop-down__close');\n\n elBtn\n && elBtn.classList\n && elBtn.classList.remove('d-none');\n\n elBtn.addEventListener('click', function() {\n elUl.classList.add('d-none');\n elBtn.classList.add('d-none');\n });\n }\n\n $('.client-address-book__drop-down__action').on('click', showNextDropDown);\n },\n\n handleBtnViewEdit: function() {\n $('.btn-view').on('click', function () {\n var param = {\n email: this.dataset.email,\n contactid: this.dataset.contactid,\n url: this.dataset.url\n };\n\n var _self = Core.ClientAddressBook;\n var $popup = _self.Cache.$popupView;\n\n _self.getClient(param, function() { _self.initForm(ClientViewEditForm)($popup); });\n });\n },\n\n getClient: function(param, cb) {\n if (!param.url) {\n console.warn(\"Returned early. Couldn't find data-url. This should be set on the view/edit button\");\n return;\n }\n\n Core.ShowPageLoading();\n $.ajax({\n url: param.url,\n type: 'GET',\n cache: false,\n data: {\n contactId: param.contactid\n },\n success: function (html) {\n $(\"#viewEditClient\").find('.addressbook-body').html(html);\n if (cb) cb();\n Core.HidePageLoading();\n },\n error: function (error) {\n $(that).remove();\n DisplayError(error.statusText);\n Core.HidePageLoading();\n }\n });\n },\n\n handleBtnsAdd: function() {\n var _self = Core.ClientAddressBook;\n var $popup = _self.Cache.$popupNew;\n\n $('.btn-addnew').on('click', function() { _self.initForm(ClientAddForm)($popup); });\n },\n\n initForm: function(clientForm) {\n return function($form) {\n return (new clientForm($form)).init();\n };\n },\n\n handleBtnFilter: function() {\n var _self = Core.ClientAddressBook;\n var $btnFilter = _self.Cache.$btnFilter;\n\n $btnFilter.on('click', function() {\n _self.getClients();\n });\n },\n\n handleBtnReset: function() {\n var _self = Core.ClientAddressBook;\n var $btnReset = _self.Cache.$btnReset;\n var $portalDropdown = _self.Cache.$portalDropdown;\n var initialGroupId = _self.Cache.initialGroupId;\n\n $btnReset.on('click', function() {\n $portalDropdown.data(\"kendoDropDownList\").value(initialGroupId);\n $('.btn-addressfilter').removeClass('is-selected');\n $('.btn-addressfilter:first').addClass('is-selected');\n _self.Cache.$searchRemoveButton.trigger('click');\n });\n },\n}\n","function ClientForm($form) {\n // Consts\n var DISABLE = true;\n var ENABLE = false;\n\n var formSelector = ($form && $form[0] && $form[0].id) ? '#' + $form[0].id : '';\n var btnSaveSelector = `${formSelector} .btn-save`;\n var orgSelector = `${formSelector} select[name=\"OrganizationID\"]`;\n\n var refNumberInput = new ClientReferenceNumberInput($form);\n\n var m = {\n isMultiOrganization: function() {\n // if no multi organizqtion\n // - input hidden [name=\"OrganizationID\"]\n // else\n // - input hidden [name=\"OrganizationID\"]\n // - select [name=\"OrganizationID\"]\n return ($(`${formSelector} select[name=\"OrganizationID\"]`).length > 0)\n },\n\n isDVA: function() {\n var isDVA = $(`${formSelector} #isDVA`).val() || '';\n return (isDVA.toString() === 'true');\n },\n\n initListeners: function() {\n m.unbindClickBtnSave();\n m.initDVA();\n m.onClickBtnSave();\n m.onOrganizationChange();\n\n m.setIsDVA();\n m.checkShowHideDVA();\n },\n\n\n /*\n\n INPUTS\n\n */\n\n toggle: function(isDisabled) {\n $form.find('input[type=\"text\"], input[type=\"tel\"], input[type=\"radio\"], textarea, select').prop('readonly', isDisabled).prop(\"disabled\", isDisabled);\n $form.find('select').prop('disabled', isDisabled);\n $form.find('select').each(function(index, elem) {\n $(elem).data(\"kendoDropDownList\") && $(elem).data(\"kendoDropDownList\").enable(! isDisabled);\n });\n\n $form.find(\".addressbook-popup__date input\").each(function(index, elem) {\n $(elem).data(\"kendoDatePicker\") && $(elem).data(\"kendoDatePicker\").enable(!isDisabled);\n })\n\n $form.find('input[type=\"radio\"]').prop('disabled', isDisabled).uniform();\n\n (!isDisabled)\n ? $form.find('.acfi-show').removeClass('k-state-disabled')\n : $form.find('.acfi-show').addClass('k-state-disabled')\n },\n\n enable: function() {\n m.toggle(ENABLE);\n },\n\n disable: function() {\n m.toggle(DISABLE);\n },\n\n reset: function() {\n $form.find('input[type=\"text\"], input[type=\"tel\"], textarea').val('');\n\n $form.find('select').each(function(index, elem) {\n $(elem).data(\"kendoDropDownList\")\n && ( $(elem).data(\"kendoDropDownList\").enable(false)\n , $(elem).data(\"kendoDropDownList\").value('')\n , $(elem).data(\"kendoDropDownList\").trigger(\"change\"));\n });\n },\n\n disableForm: function() {\n m.disable();\n m.resetOrganisation();\n m.disableSaveBtn();\n m.resetValidation();\n },\n\n enableForm: function() {\n m.enable();\n m.enableSaveBtn();\n },\n\n /**\n\n\n VALIDATION\n\n\n */\n\n resetValidation: function() {\n var validator = $form.find(\"form\").validate();\n validator.resetForm();\n\n $form.find('.error').removeClass('error');\n },\n\n checkSelect: function() {\n $form.find('select[name=\"BillingState\"]').each(function(i, elem) {\n SelectValidator(elem).isValid();\n });\n\n m.isDVA()\n && m.isDVAValid();\n },\n\n\n /**\n\n\n SAVE BTN\n\n\n */\n\n toggelSaveBtn: function(isDisabled) {\n $(btnSaveSelector).last().attr(\"disabled\", isDisabled);\n },\n\n disableSaveBtn: function() {\n m.toggelSaveBtn(DISABLE);\n },\n\n enableSaveBtn: function() {\n m.toggelSaveBtn(ENABLE);\n },\n\n onClickBtnSave: function() {\n var $formDom = $form.find('form').last();\n var $btn = $(btnSaveSelector);\n\n function submitOnValid(e) {\n e.preventDefault();\n\n // Enable ignore for jquery.unobstrusive\n // Unfortunately the ignore property in validate\n // doesn't work because of jquery.unobstrusive\n var form = $($formDom).get(0);\n if (form) {\n // pre fire valid to force generate the setting object\n $formDom.valid();\n\n $.data(form, \"validator\") &&\n $.data(form, \"validator\").settings &&\n ($.data(form, \"validator\").settings['ignore'] = \":hidden, .dva\");\n }\n\n // re-enable for hidden select\n var $dropdown = $formDom.find('select:hidden');\n var isSelectValid = true;\n $.each($dropdown, function(index, el) {\n if (!el.closest('.d-none')) {\n if ($(el).prop('required')) {\n // can't add select validation dynamically cause it's already on ignore's list (:hidden)\n isSelectValid = !!$(el).val();\n }\n }\n });\n\n var isValidSave = $formDom.valid();\n var isValidDVA = m.isDVAValid();\n\n m.checkSelect();\n\n if (isValidSave && isValidDVA && isSelectValid) {\n $formDom.trigger('submit');\n return;\n }\n }\n\n $btn.on('click', submitOnValid);\n },\n\n unbindClickBtnSave: function() {\n $(btnSaveSelector).unbind('click');\n },\n\n\n /*\n\n\n ORGANIZATION\n\n\n */\n\n onOrganizationChange: function(clb) {\n $(orgSelector).on('change', function(val) {\n var val = $(this).val();\n\n (val !== \"\")\n ? m.enableForm()\n : m.disableForm();\n\n m.setIsDVA();\n m.checkShowHideDVA();\n m.setRefNumberLabel();\n });\n },\n\n resetOrganisation: function() {\n if (! m.isMultiOrganization()) {\n return;\n }\n\n $orgKendo = $(orgSelector).kendoDropDownList();\n $(orgSelector).val('');\n $orgKendo.data('kendoDropDownList').value('');\n\n m.enableOrg()\n },\n\n toggleOrg: function(isDisabled) {\n $(orgSelector).prop('readonly', !isDisabled);\n $(orgSelector).prop('disabled', !isDisabled);\n\n $orgKendo = $(orgSelector).kendoDropDownList();\n\n ($orgKendo.length > 0)\n && $orgKendo.data('kendoDropDownList').enable(!isDisabled);\n },\n\n enableOrg: function() {\n m.toggleOrg(ENABLE);\n },\n\n disableOrg: function() {\n m.toggleOrg(DISABLE);\n },\n\n\n /**\n\n\n DVA\n\n\n */\n\n initDVA: function() {\n var selector = formSelector;\n\n $(\"[type=radio]\").uniform();\n $(\"select\").kendoDropDownList();\n\n setTimeout(function() {\n Core.DVAInformation.init({\n root: selector,\n datepickerInput: \".addressbook-popup__date input\",\n domActivites: `${selector} #clientPopupDVAActivities`,\n domBehaviour: `${selector} #clientPopupDVABehaviour`,\n domComplexHealthCare: `${selector} #clientPopupDVAComplex`,\n });\n }, 500);\n },\n\n setIsDVA: function(portalId) {\n if (! m.isMultiOrganization()) {\n return;\n }\n\n function isDVA(portalId) {\n var select = $(orgSelector);\n var dvaMap = select && select.data(\"dva\");\n\n if (! dvaMap) {\n return false;\n }\n\n return dvaMap.indexOf(portalId) > -1;\n }\n\n var key = $(orgSelector).val();\n $(`${formSelector} #isDVA`).val(isDVA(key));\n },\n\n checkShowHideDVA : function() {\n m.isDVA()\n ? m.showDVASection()\n : m.hideDVASection();\n },\n\n hideDVASection: function() {\n $('.dva-information').addClass('d-none');\n },\n\n showDVASection: function() {\n $('.dva-information').removeClass('d-none');\n },\n\n setRefNumberLabel: function() {\n var $label = $(`${formSelector} label[for=\"clientPopupReferenceNumber\"]`);\n if (m.isDVA()) {\n $label.html(`DVA File Number *`);\n } else {\n $label.html(`Client Reference Number *`);\n }\n },\n\n isDVAValid: function() {\n if (!m.isDVA()) {\n return true;\n }\n\n return Core.DVAInformation.isValid({\n dvaCardType: `${formSelector} #clientPopupDVACardTypeEdit`,\n dvaDOB: `${formSelector} #clientPopupDVADOB`,\n dvaRCF: `${formSelector} #yes_rcf`,\n dvaADL: `${formSelector} #clientPopupDVAActivities`,\n dvaBEH: `${formSelector} #clientPopupDVABehaviour`,\n dvaCHC: `${formSelector} #clientPopupDVAComplex`,\n\n dvaFundingOther: `${formSelector} #yes_DVAFundingOther`, // yes_FundingOther\n dvaFundingOtherType: `${formSelector} #DVAFundingOtherType`, // dvaFundingOtherType\n });\n },\n };\n\n m.initListeners();\n\n return m;\n}\n","function ClientPopup($rootDom, option) {\n var clbList = [];\n\n var m = {\n init: function () {\n m.setup();\n m.onClickClose();\n m.onWindowResize();\n m.initAddressAutocomplete();\n },\n\n setup: function() {\n if (!option) {\n option = {\n title: false\n }\n }\n\n var _width = Core.Config.CartNotification.Width + 20;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n $popup = $rootDom.kendoWindow({\n title: option.title,\n width: _width,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap',\n animation: false,\n close: function() {\n $('body').css('overflowY', '');\n clbList.forEach(function(clb) { clb(); });\n }\n });\n\n $popup.find('input[type=\"checkbox\"]').uniform();\n\n var popUpObj = $popup.data(\"kendoWindow\");\n popUpObj.wrapper.addClass('addressbook-popup__wrapper');\n\n //override css\n if ($popup.prop('id') === 'addNewClient') {\n popUpObj.wrapper.css('padding-top', '50px');\n popUpObj.wrapper.find('.k-window-titlebar').css('margin-top', '-45px');\n }\n\n $('body').css('overflowY', 'hidden');\n\n popUpObj.open();\n\n setTimeout(function() {\n m.setHeight($popup);\n }, 100);\n },\n\n onClickClose: function() {\n $('.addressbook-btnclose, .addressbook-btncancel').on('click', m.close);\n },\n\n onWindowResize: function() {\n $(window).on('resize', m.setHeight);\n },\n\n close: function() {\n $rootDom.data('kendoWindow').close();\n },\n\n onClose: function(clb) {\n clbList.push(clb);\n },\n\n setHeight: function() {\n //set max-height of popup-content\n var $content = $rootDom.find('.addressbook-popup__content')\n , $buttonWrap = $rootDom.find('.addressbook-popup__buttonwrap')\n , buttonH = $buttonWrap.is(':visible') ? $buttonWrap.outerHeight() : 0\n , popupH = $rootDom.outerHeight() + 80 + buttonH //80px is gap top and bottom\n , windowH = window.innerHeight\n , $header = $rootDom.find('.addressbook-header');\n\n if ($header.length === 0) $header = $rootDom.siblings('.k-window-titlebar');\n\n var contentH = windowH - buttonH - $header.outerHeight() - 130; //130 = padding-top + padding-bottom + (top + bottom popup's position)\n contentH = (contentH > 600) ? 600 : contentH;\n $content.css('max-height', contentH + \"px\");\n },\n\n initAddressAutocomplete: function() {\n var $content = $rootDom.find('.addressbook-popup__content');\n var $autocomplete = $content.find('.addressAutocomplete');\n if ($autocomplete.length > 0) {\n var $input = $autocomplete.find('input.addressAutocomplete-input');\n var autoObj = $input.data('kendoAutoComplete');\n\n // make sure we init kendo once\n if (!autoObj) Core.Engine.handleAddressAutocomplete();\n }\n },\n };\n\n return m;\n}\n","function ClientReferenceNumberInput($form) {\n var clientRefselector = `${$form.selector} #clientPopupReferenceNumber`;\n var clientRefselectorError = `${$form.selector} #clientRefrenceNumberError`;\n var btnSaveSelector = `${$form.selector} .btn-save`;\n\n var orgInputSelector = `${$form.selector} input[name=\"OrganizationID\"]`;\n var orgSelectSelector = `${$form.selector} select[name=\"OrganizationID\"]`;\n\n var originalRefNumber = '';\n\n var DEFAULT_URL = \"/partner-portals/dva/clients/ValidateClient/\";\n var DEFAULT_TYPE = \"get\";\n\n var m = {\n init: function() {\n m.clearError();\n\n $(clientRefselector).unbind('focus');\n $(clientRefselector).unbind('keyup');\n $(clientRefselector).unbind('change');\n\n $(clientRefselector).on(\"focus\", m.setRefNumber);\n $(clientRefselector).on(\"keyup\", m.checkIfDifferentRefNumber);\n $(clientRefselector).on(\"change\", m.checkValidRefNumber);\n },\n\n getRefNumber: function() {\n return $(clientRefselector).val();\n },\n\n setRefNumber: function() {\n originalRefNumber = m.getRefNumber();\n },\n\n checkIfDifferentRefNumber: function() {\n currentRefNumber = m.getRefNumber();\n\n $(btnSaveSelector).attr(\"disabled\", (originalRefNumber !== currentRefNumber));\n },\n\n clearError: function() {\n $(clientRefselector).removeClass('error');\n $(clientRefselectorError).hide();\n $(btnSaveSelector).removeAttr(\"disabled\");\n },\n\n showError: function(msg) {\n setTimeout(function() { $(clientRefselector).addClass('error'); }, 100);\n $(clientRefselectorError).addClass('pt-1');\n $(clientRefselectorError).addClass('mb-0');\n $(clientRefselectorError).text(msg);\n $(clientRefselectorError).show();\n $(btnSaveSelector).attr(\"disabled\", true);\n },\n\n checkValidRefNumber: function() {\n var url = $(clientRefselector).data('url') || DEFAULT_URL;\n var type = $(clientRefselector).data('type') || DEFAULT_TYPE;\n var errorMsg = $(clientRefselectorError).text();\n\n Core.ShowPageLoading();\n m.clearError();\n\n var refNumber = m.getRefNumber();\n var contactID = ($(\"#ContactId\").length > 0) ? $(\"#ContactId\").val() : \"\";\n var orgaID = ($(orgSelectSelector).length > 0) ? $(orgSelectSelector).val() : $(orgInputSelector).val();\n\n\n $.ajax({\n url: url,\n data: {\n clientrefrencenumber: refNumber,\n contactID: contactID,\n organizationID: orgaID\n },\n type: type,\n dataType: 'json',\n success: function (output) {\n (output.Result)\n ? m.clearError()\n : m.showError(errorMsg);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n m.showError('An issue with the api occurred. Try later.');\n },\n complete: function() {\n Core.HidePageLoading();\n },\n });\n },\n };\n\n m.init();\n\n return m;\n} \n","function ClientViewEditForm($rootDom) {\n var form = new ClientForm($rootDom);\n var popup = new ClientPopup($rootDom);\n\n var m = {\n init: function() {\n form.disable();\n\n m.setViewClient();\n m.onClickEdit();\n\n popup.init();\n },\n\n onClickEdit: function() {\n $('.addressbook-btnedit').on('click', function(e) {\n form.enable();\n form.disableOrg();\n m.setEditClient();\n popup.setHeight();\n $(this).hide();\n });\n },\n\n setEditClient: function() {\n $rootDom.find('.addressbook-btnedit').hide();\n $rootDom.find('.addressbook-title').html('EDIT CLIENT');\n $rootDom.find('.addressbook-popup__buttonwrap').show();\n\n form.initListeners();\n },\n\n setViewClient: function() {\n $rootDom.find('.addressbook-btnedit').show();\n $rootDom.find('.addressbook-title').html('VIEW CLIENT');\n $rootDom.find('.addressbook-popup__buttonwrap').hide();\n },\n };\n\n return m;\n}\n","Core.Dashboard = {\n init: function () {\n Core.Dashboard.Cache = {\n \t$rowToggle : $('.dashboard__grid--body .dashboard__grid--row-info'),\n \t$headTick : $('.dashboard__grid--heading-cell-tick input[type=checkbox]'),\n \t$btnDropMore: $('.btn-more-actions'),\n \t$dropLink: $('.drop-list-link'),\n \t$btnToggle: $('.btn-toggle'),\n $btnView: $('.btn-view')\n }\n\n \tthis.contentToggle();\n \tthis.dropToggle();\n \tthis.PreventDropLink();\n \tthis.viewDetail();\n \tthis.setupPopup();\n },\n\n contentToggle: function () {\n var reset = function (doReset, $detail, $info) {\n var $allInfo = $('.dashboard__grid--body .dashboard__grid--row-info')\n , $allDetail = $('.dashboard__grid--body .dashboard__grid--row-detail');\n\n $allDetail.addClass('content-hide');\n $allInfo.removeClass('showing-detail');\n\n if (doReset) {\n $detail.addClass('content-hide');\n $info.removeClass('showing-detail');\n } else {\n $detail.removeClass('content-hide');\n $info.addClass('showing-detail');\n }\n };\n\n Core.Dashboard.Cache.$btnToggle.on('click', function (e) {\n \t\tvar $el = $(this)\n \t\t , $row = $el.closest('.dashboard__grid--row-info')\n , $info = $row.next('.dashboard__grid--row-detail');\n\n \t\tif ($info.is(':visible')) {\n \t\t reset(true, $info, $row);\n }\n \t\telse {\n \t\t reset(false, $info, $row);\n }\n\n });\n },\n\n dropToggle: function(){\n \tCore.Dashboard.Cache.$btnDropMore.on('click', function(e){\n \t\te.stopPropagation();\n \t\tvar $siblingDrop = $(this).siblings('.drop-content');\n\n \t\t$siblingDrop.addClass('exc');\n \t\t$('.drop-content:not(.exc)').removeClass('show');\n \t\t$siblingDrop.removeClass('exc').toggleClass('show');\n \t});\n },\n\n PreventDropLink: function() {\n \tCore.Dashboard.Cache.$dropLink.on('click', function(e){\n \t\te.preventDefault();\n \t\t$(this).closest('.drop-content').removeClass('show');\n \t});\n },\n\n viewDetail: function () {\n Core.Dashboard.Cache.$btnView.on('click', function (e) {\n e.preventDefault();\n console.log('view detail');\n });\n },\n\n setupPopup: function () {\n\n Core.InitPopup($('#popupCancelOrder'), 'Cancel Order');\n Core.InitPopup($('#popupResubmitOrder'), 'Resubmit Order');\n Core.InitPopup($('#popupEditDraftOrder'), 'Edit Draft Order');\n Core.InitPopup($('#popupReturnCartOrder'), 'Edit And Return Cart');\n Core.InitPopup($('#popupChangeApproveOrder'), 'Change And Approve Order');\n\n var closePopup = function ($el) {\n $el.close();\n };\n\n var openPopup = function ($el) {\n $el.center().open();\n };\n\n var initPopup = function ($el) {\n return $el.kendoWindow({\n maxWidth: 580,\n minWidth: 450,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n pinned: true,\n draggable: false,\n animation: false,\n appendTo: '#page-wrap'\n });\n };\n\n\n var setPopup = function ($el, title) {\n if($el.length){\n var $kw = $el.data(\"kendoWindow\");\n $kw.wrapper.addClass(\"popup-dashboard\");\n $kw.title(title);\n return $kw;\n } else {\n return false;\n }\n };\n\n var $popupDetail = $('#popupDetail');\n var $popupReject = $('#popupReject');\n //var $popupCancel = $('#popupCancelOrder');\n\n $popupDetail = initPopup($popupDetail);\n $popupReject = initPopup($popupReject);\n //$popupCancel = initPopup($popupCancel);\n\n var $kPopDetail = setPopup($popupDetail, \"View Detail\");\n var $kPopReject = setPopup($popupReject, \"Rejection Reason\");\n //var $kPopReject = setPopup($popupCancel, \"Cancel Order\");\n\n $('.btn-view').on('click', function (e) {\n e.preventDefault();\n Core.Dashboard.preparePopupDetail($popupDetail, $(this).closest('.dashboard__grid--row'));\n openPopup($kPopDetail);\n });\n\n $('.btn-reject').on('click', function (e) {\n e.preventDefault();\n openPopup($kPopReject);\n });\n\n $(\".k-overlay\").on('click', function (e) {\n e.preventDefault();\n closePopup($kPopDetail);\n });\n\n $('.btn-popup-cancel').on('click', function () {\n closePopup($kPopReject);\n });\n\n\n },\n\n preparePopupDetail: function ($popupDetail, $row) {\n var popupPrf = \".popup__body-\";\n var rowPrf = \".dashboard__grid--body-cell-\";\n var properties = [\"client\", \"order\", \"therapist\"];\n\n $.each(properties, function (i, prop) {\n var propVal = $row.find(rowPrf + prop + ' .dashboard__grid--value').text().replace(/\\s/g, '');\n $popupDetail.find(popupPrf + prop).html(propVal);\n });\n }\n}\n","function DateInputValidator(elemSelector) {\n var elem = document.querySelector(elemSelector)\n\n if (elem == null) {\n return;\n }\n\n var requiredMsg = (elem.dataset && elem.dataset.valDate) ? elem.dataset.valDate : 'The field must be a date.';\n var isRequired = (elem.dataset && elem.dataset.valDate);\n\n function showError(errorMsg) {\n var div = elem.parentElement.parentElement.parentElement;\n var label = div.querySelector('label');\n\n elem.classList.add('error');\n\n label\n && $(label).remove();\n\n $(div).append('');\n }\n\n function clearError() {\n var div = elem.parentElement.parentElement.parentElement;\n var span = elem.parentElement.querySelector('span');\n\n elem.classList.remove('error');\n\n $(div).find('label').remove();\n }\n\n function isRequiredValid() {\n return (elem.value !== '');\n }\n\n if (isRequired) {\n $(elem).data(\"kendoDatePicker\") &&\n $(elem).data(\"kendoDatePicker\").bind(\"change\", function() {\n if ($(elem).data(\"kendoDatePicker\").value() !== '') {\n clearError();\n }\n });\n }\n\n var m = {\n isValid: function() {\n var isValid = true;\n\n if (isRequired && !isRequiredValid()) {\n showError(requiredMsg);\n return false;\n }\n\n return isValid;\n }\n };\n\n return m;\n};\n\n","Core.DatePicker2 = function(elem) {\n var IPAD_WIDTH_RESOLUTION = 1081;\n\n function executeCallback(clb) {\n clb();\n }\n\n function filler(dateNumber) {\n return ('' + dateNumber).length < 2\n ? '0' + dateNumber\n : '' + dateNumber;\n }\n\n /*\n\n\n DOM Check\n\n\n */\n\n // -- STR -- DOM --------------\n function isInputText() {\n return elem.nodeName === 'INPUT' && elem.type === 'text';\n }\n\n function hasAlreadyPicker2Class() {\n return elem.classList.contains(\"datePicker2\")\n }\n\n function isNumberSlash(key) {\n return /[0-9\\/]/.test(key);\n }\n\n function isTab(key) {\n return key === 'Tab';\n }\n\n function isSlash(key) {\n return key === '/';\n }\n\n function isBackspace(key) {\n return key === 'Backspace';\n }\n\n function isArrowLeft(key) {\n return key === 'ArrowLeft';\n }\n\n function isArrowRight(key) {\n return key === 'ArrowRight';\n }\n\n function isArrow(key) {\n return isArrowLeft(key)\n || isArrowRight(key);\n }\n\n function isDayPosition(length) {\n return (length === 2);\n }\n\n function isSlashPosition(length) {\n return (length === 2 || length === 5);\n }\n\n function shouldBeSlash(length) {\n return (length === 3 || length === 6);\n }\n\n function isLastDigitMonthPosition(length) {\n return (length === 5);\n }\n\n function isMonthPosition(length) {\n return (length === 4);\n }\n\n function isFirstYearDigitPosition(length) {\n return (length === 7);\n }\n\n function isSecondYearDigitPosition(length) {\n return (length === 8);\n }\n\n function isOnSelection() {\n return (document.getSelection().focusNode === elem.parentNode)\n && (document.getSelection().toString().length > 0);\n }\n\n function getCursorPosition() {\n var input = elem;\n if (!input) return; // No (input) element found\n if ('selectionStart' in input) {\n // Standard-compliant browsers\n return input.selectionStart;\n } else if (document.selection) {\n // IE\n input.focus();\n var sel = document.selection.createRange();\n var selLen = document.selection.createRange().text.length;\n sel.moveStart('character', -input.value.length);\n return sel.text.length - selLen;\n }\n }\n\n function isInCurrentPosition(length) {\n return getCursorPosition() === length;\n }\n // -- END -- DOM --------------\n\n\n /*\n\n\n TIME\n\n\n */\n // -- STR -- TIME --------------\n function getYearsRange() {\n var currentYear = new Date().getFullYear();\n var years = [];\n\n for (var i = currentYear - 120; i < currentYear + 20; i++) {\n years.push({\n value: i,\n text: i\n });\n }\n\n return years;\n }\n\n function getMonthsRange(year) {\n var months = [];\n\n for (var i = 1; i <= 12; i++) {\n months.push({\n value: i,\n text: i\n });\n }\n\n return months;\n }\n\n function getDaysRange(year, month) {\n var dayCount = new Date(year, month, 0).getDate();\n var days = [];\n\n for (var i = 1; i <= dayCount; i++) {\n days.push({\n value: i,\n text: i\n });\n }\n\n return days;\n }\n\n function isValidPartialDateFormat(dateString) {\n var reIsNumber = new RegExp('[0-9]');\n var reIsSlash = new RegExp('^[/]{1}$');\n\n var date = Array.from(dateString);\n var date_sequence = [\n reIsNumber,\n reIsNumber,\n reIsSlash,\n\n reIsNumber,\n reIsNumber,\n reIsSlash,\n\n reIsNumber,\n reIsNumber,\n reIsNumber,\n reIsNumber,\n ];\n\n if (date.length === 0) {\n return true;\n }\n\n if (date.length > 10) {\n return false;\n }\n\n return date.reduce(function(previousValue, currentValue, currentIndex) {\n return date_sequence[currentIndex].test(currentValue) && previousValue;\n }, true);\n }\n\n /*\n\n Check if in DD/MM/YYYY format\n\n */\n function isValidFormatDate(dateString) {\n return /([0-9]{1,2})\\/([0-9]{1,2})\\/([0-9]{4})/.test(dateString);\n }\n\n /*\n\n @param string dateString\n @return obj {day: number, month: number, year: number}\n\n */\n function splitInputValues(dateString) {\n // ['10/05/2022', '10', '05', '2022', index: 0, input: '10/05/2022', groups: undefined]\n var found = dateString.match(/([0-9]{1,2})\\/([0-9]{1,2})\\/([0-9]{4})/);\n\n return {\n day: parseInt(found[1]),\n month: parseInt(found[2]),\n year: parseInt(found[3]),\n };\n }\n\n /*\n\n @return obj {day: number, month: number, year: number}\n\n */\n function getCurrentDate() {\n var now = new Date();\n\n return {\n year: now.getFullYear(),\n month: now.getMonth() + 1,\n day: now.getDate(),\n };\n }\n\n function getDate() {\n var dateString = elem.value.toString();\n\n return isValidFormatDate(dateString)\n ? splitInputValues(dateString)\n : getCurrentDate();\n }\n // -- END -- TIME --------------\n\n\n /*\n\n\n UTILS\n\n\n */\n // -- STR -- UTILS --------------\n function getPlaceholderValue(value) {\n var defaultPlaceholder = 'DD/MM/YYYY';\n\n return value\n ? '' + value + '' + defaultPlaceholder.slice(value.length)\n : defaultPlaceholder;\n }\n // -- END -- UTILS --------------\n\n var el = {\n elem: elem,\n cover: document.createElement('div'),\n wrapper: document.createElement('div'),\n placeholder: document.createElement('span'),\n };\n\n var data = {\n selectorDay: '',\n selectorMonth: '',\n selectorYear: '',\n\n _inputValue: '',\n\n subscriberList: {\n inputValue: [],\n },\n\n set inputValue(value) {\n this._inputValue = value;\n\n data.subscriberList.inputValue.forEach(executeCallback);\n },\n\n get inputValue() {\n return this._inputValue;\n },\n\n subscribe(name, callback) {\n data.subscriberList[name].push(callback);\n },\n };\n\n\n // Methods\n var m = {\n init: function() {\n if (! isInputText()) {\n console.error('Invalid input element provided : ' + elem.nodeName);\n return;\n }\n\n if (hasAlreadyPicker2Class()) {\n console.warn('Date Picker 2 already init');\n return;\n }\n\n m.boot();\n },\n\n boot: function() {\n m.loadVar();\n m.loadCallback();\n\n m.initWrapper();\n m.initCover();\n m.initPlaceholder();\n m.updatePlaceholder(el.elem.value);\n m.composeDOMToWrapper();\n\n m.initOnKeyDownAndUp();\n m.initOnEsc();\n m.initOnCoverClickShowSelector();\n m.initOnWindowResize();\n m.initMutatorCheckForDisabled();\n\n m.initKendoPicker();\n },\n\n initKendoPicker: function() {\n if (elem.classList.contains('show-picker')) {\n $(elem).kendoDatePicker({\n format: \"dd/MM/yyyy\",\n change: function() {\n data.inputValue = el.elem.value;\n m.updatePlaceholder();\n },\n });\n }\n \n },\n\n loadVar: function() {\n data.inputValue = el.elem.value;\n },\n\n loadCallback: function() {\n data.subscribe('inputValue', m.updatePlaceholder)\n },\n\n /*\n\n\n EVENTS\n - initOnKeyDownAndUp : when typing\n - initOnEsc : getting out of selector view\n\n\n */\n\n // --- STR - EVENTS --------------\n initOnKeyDownAndUp: function() {\n var doCheckValidKeyAndUpdatePlaceholder = function(e) {\n var dataValue = el.elem.value.split(' ').join('').split('.').join(''); // mac double space add .\n el.elem.value = dataValue;\n var lastChar = dataValue[dataValue.length - 1];\n\n if (! isNumberSlash(e.key) && ! isTab(e.key) && ! isBackspace(e.key) && !isArrow(e.key)) {\n e.preventDefault();\n return;\n }\n\n if (! isTab(e.key) && ! isBackspace(e.key) && !isArrow(e.key) && !isOnSelection() && el.elem.value.length >= 10) {\n e.preventDefault();\n return;\n }\n\n if (dataValue[getCursorPosition() - 1] === '/' && e.key === '/') {\n e.preventDefault();\n return;\n }\n\n isNumberSlash(e.key)\n && (data.inputValue = el.elem.value.trim() + e.key);\n };\n\n var doPolishInput = function(e) {\n var dataValue = el.elem.value.split(' ').join('').split('.').join(''); // mac double space add .\n el.elem.value = dataValue;\n var lastChar = dataValue[dataValue.length - 1];\n var prevLastChar = dataValue[dataValue.length - 2];\n\n\n // case 1/ -> 01/\n ! isBackspace(e.key)\n && !isArrow(e.key)\n && isSlash(lastChar)\n && isInCurrentPosition(el.elem.value.length)\n && isDayPosition(el.elem.value.length)\n && ( el.elem.value = '0' + dataValue\n , dataValue = el.elem.value\n );\n\n // case 01/1/ -> 01/01/\n ! isBackspace(e.key)\n && !isArrow(e.key)\n && isSlash(lastChar)\n && isInCurrentPosition(el.elem.value.length)\n && isLastDigitMonthPosition(el.elem.value.length)\n && ( el.elem.value = dataValue.slice(0, -2) + '0' + dataValue.slice(-2)\n , dataValue = el.elem.value\n );\n\n\n // check if we are in a slash position\n // if so and it's a number\n // then swap and insert slash\n // case 01 -> 01/\n // case 01/01 -> 01/01/\n ! isBackspace(e.key)\n && !isArrow(e.key)\n && !isSlash(lastChar)\n && isInCurrentPosition(el.elem.value.length)\n && shouldBeSlash(el.elem.value.length)\n && ( el.elem.value = dataValue.slice(0, -1) + '/' + lastChar\n , dataValue = el.elem.value\n );\n\n\n // check that the first month int is 1 or 0\n // else swap and add 0\n // case 10/5 -> 10/05\n\n ! isBackspace(e.key)\n && !isArrow(e.key)\n && !isSlash(lastChar)\n && isInCurrentPosition(el.elem.value.length)\n && isMonthPosition(el.elem.value.length)\n && (e.key !== '1' && e.key !== '0')\n && (el.elem.value = dataValue.slice(0, -1) + '0' + lastChar + '/'\n , lastChar = '/'\n , dataValue = el.elem.value\n );\n\n // check if after all the data manipulation\n // we are in slash position\n // if so add slash\n ! isBackspace(e.key)\n && !isArrow(e.key)\n && !isSlash(lastChar)\n && isInCurrentPosition(el.elem.value.length)\n && isSlashPosition(el.elem.value.length)\n && (el.elem.value += '/'\n , dataValue = el.elem.value\n );\n\n data.inputValue = el.elem.value;\n };\n\n el.elem.addEventListener('keydown', doCheckValidKeyAndUpdatePlaceholder);\n el.elem.addEventListener('keyup', doPolishInput);\n el.elem.addEventListener('change', m.updatePlaceholder);\n el.elem.addEventListener('blur', m.updateCurrentInputFillerDate);\n },\n\n initOnEsc: function() {\n var removeOnEsc = function(e) {\n (e.key === 'Escape') && m.removeSelector();\n };\n\n document.removeEventListener('keydown', removeOnEsc);\n document.addEventListener('keydown', removeOnEsc);\n },\n\n initOnCoverClickShowSelector: function() {\n el.cover.addEventListener('click', m.showSelector);\n },\n\n initOnWindowResize: function() {\n window.addEventListener('resize', function(e) {\n (window.innerWidth < IPAD_WIDTH_RESOLUTION)\n && m.removeSelector();\n });\n },\n\n initMutatorCheckForDisabled: function() {\n var hideCover = function() {\n el.cover.classList.remove('d-block');\n el.cover.classList.remove('d-lg-none');\n el.cover.classList.add('d-none');\n }\n\n var showCover = function() {\n el.cover.classList.add('d-block');\n el.cover.classList.add('d-lg-none');\n el.cover.classList.remove('d-none');\n }\n\n const observer = new MutationObserver(function() {\n (el.elem.disabled)\n ? hideCover()\n : showCover();\n });\n\n observer.observe(elem, {attributes: true});\n },\n // --- END - EVENTS --------------\n\n\n /*\n\n DOM\n - initWrapper : add classes to wrap\n - initCover : add classes to cover\n - initPlaceholder : add classes to placeholder\n\n - updatePlaceholder : update placeholder ui\n\n - composeDOMToWrapper : append [cover, placeholder input] to the wrapper\n\n */\n\n // --- STR - DOM --------------\n initWrapper: function() {\n [ \"datePicker2-wrapper\"\n , \"form-input\"\n , \"position-relative\"].forEach((itm) => el.wrapper.classList.add(itm));\n },\n\n initCover: function() {\n el.cover.classList.add('datePicker2-cover');\n el.cover.classList.add('d-block');\n el.cover.classList.add('d-ipad-none');\n },\n\n initPlaceholder: function() {\n el.placeholder.classList.add('datePicker2-placeholder');\n el.placeholder.setAttribute('aria-hidden', true);\n },\n\n updatePlaceholder: function() {\n el.placeholder.innerHTML = isValidPartialDateFormat(data.inputValue)\n ? getPlaceholderValue(data.inputValue)\n : '';\n },\n\n updateCurrentInputFillerDate: function() {\n var dateObj;\n var isValidLength = function(chunk) {\n return chunk.length > 0;\n };\n\n isValidFormatDate(el.elem.value)\n && ( el.elem.value.split('/').filter(isValidLength).length === 3 )\n && ( dateObj = splitInputValues(el.elem.value)\n , m.updateInputFillerDate(dateObj.day, dateObj.month, dateObj.year)\n );\n },\n\n updateInputFillerDate: function(day, month, year) {\n el.elem.value = filler(day) + '/' + filler(month) + '/' + year;\n },\n\n composeDOMToWrapper: function() {\n elem.parentNode.insertBefore(el.wrapper, elem);\n el.wrapper.appendChild(el.cover);\n el.wrapper.appendChild(el.placeholder);\n el.wrapper.appendChild(elem);\n\n elem.classList.add('datePicker2');\n },\n\n updateInputFromSelector: function() {\n m.updateInputFillerDate(data.selectorDay, data.selectorMonth, data.selectorYear);\n\n var event = new Event('change');\n el.elem.dispatchEvent(event);\n },\n // --- END - DOM --------------\n\n\n /*\n\n SELECTOR\n - showSelector : append html and init js\n - removeSelector : remove html\n - initSelectors : init js\n + if already has value\n + if no value\n + on confirm\n */\n\n // --- STR - SELECTOR --------------\n showSelector: function() {\n var select = document.createElement('div');\n select.classList.add('datePicker2-select');\n select.innerHTML = `\n
\n\n
\n
\n \n \n
\n\n
\n
\n
\n
\n
\n
`;\n\n document.body.appendChild(select);\n\n Array\n .from(select.querySelectorAll('[data-cancel]'))\n .forEach(function(cancelItem) { cancelItem.addEventListener('click', m.removeSelector); });\n\n Array\n .from(select.querySelectorAll('[data-confirm]'))\n .forEach(function(confirmItem) {\n confirmItem.addEventListener('click', function() {\n m.updateInputFromSelector();\n data.inputValue = el.elem.value;\n m.removeSelector();\n });\n });\n\n m.initSelectors();\n },\n\n removeSelector: function() {\n var select = document.querySelector('.datePicker2-select');\n\n select\n && select.parentNode\n && select.parentNode.removeChild(select);\n },\n\n initSelectors: function() {\n var initialDate = getDate();\n\n data.selectorYear = initialDate.year;\n data.selectorMonth = initialDate.month;\n data.selectorDay = initialDate.day;\n\n var yearSource = getYearsRange();\n var monthSource = getMonthsRange();\n var daySource = getDaysRange(initialDate.year, initialDate.month);\n\n var yearSelector = new IosSelector({\n el: '#year',\n type: 'infinite',\n source: yearSource,\n count: 20,\n value: initialDate.year,\n onChange: (selected) => {\n data.selectorYear = selected.value;\n\n var daySource = getDaysRange(data.selectorYear, data.selectorMonth);\n daySelector.updateSource(daySource);\n }\n });\n\n var monthSelector = new IosSelector({\n el: '#month',\n type: 'infinite',\n source: monthSource,\n count: 20,\n value: initialDate.month,\n onChange: (selected) => {\n data.selectorMonth = selected.value;\n\n var daySource = getDaysRange(data.selectorYear, data.selectorMonth);\n daySelector.updateSource(daySource);\n }\n });\n\n var daySelector = new IosSelector({\n el: '#day',\n type: 'infinite',\n source: daySource,\n count: 20,\n value: initialDate.day,\n onChange: (selected) => {\n data.selectorDay = selected.value;\n }\n });\n },\n // --- END - SELCTOR --------------\n };\n\n return m;\n\n};\n","function DatePicker2Validator(elemSelector) {\n var elem = (elemSelector instanceof HTMLInputElement)\n ? elemSelector\n : document.querySelector(elemSelector);\n\n if (elem == null) {\n return;\n }\n\n var requiredMsg = (elem.dataset && elem.dataset.valDate) ? elem.dataset.valDate : 'The field must be a date.';\n var isRequired = (elem.dataset && elem.dataset.valDate);\n var pastDateMsg = (elem.dataset && elem.dataset.pastDate) ? elem.dataset.pastDate : 'The field must be a past date.';\n var isPastDate = (elem.dataset && elem.dataset.pastDate);\n\n function showError(errorMsg) {\n var div = elem.parentElement.parentElement.parentElement;\n var label = div.querySelector('label.error');\n\n elem.classList.add('error');\n\n label\n && $(label).remove();\n\n $(div).append('');\n }\n\n function clearError() {\n var div = elem.parentElement.parentElement.parentElement;\n\n elem.classList.remove('error');\n\n $(div).find('label.error').remove();\n }\n\n function isRequiredValid() {\n return (elem.value !== '');\n }\n\n function isValidDateValid() {\n if (elem.value.length > 10) {\n return false;\n }\n\n return moment(elem.value, 'DD/MM/YYYY').isValid();\n }\n\n function isPastDateValid() {\n return moment().diff(moment(elem.value, 'DD/MM/YYYY')) > -1;\n }\n\n\n elem.addEventListener('change', function() {\n m.isValid()\n && clearError();\n });\n\n var m = {\n isValid: function() {\n var isValid = true;\n\n if (isRequired && !isRequiredValid()) {\n showError(requiredMsg);\n return false;\n }\n\n if (isRequired && !isValidDateValid()) {\n showError(\"Please enter a valid date DD/MM/YYY\");\n return false;\n }\n\n if (isPastDate && (!isValidDateValid() || !isPastDateValid())) {\n showError(pastDateMsg);\n return false;\n }\n\n clearError();\n return isValid;\n }\n };\n\n return m;\n};\n\n","Core.DeliveryCounter = function(elem) {\n\n /*\n\n\n DATASET\n\n\n */\n\n function hasDataset(elem, name) {\n return elem &&\n elem.dataset &&\n typeof elem.dataset[name] !== 'undefined';\n }\n\n function warnData(name) {\n console.warn('DeliveryCounter data for ' + name + ' missing');\n return;\n }\n\n function getDataset(elem, name) {\n return hasDataset(elem, name)\n ? elem.dataset[name]\n : warnData(name);\n }\n\n\n /*\n\n\n TIME\n\n\n */\n\n\n /**\n * utcToLocale\n *\n * @param string date UTC time '2011-06-29T16:52:48.000Z'\n * @return Date\n */\n function utcToLocale(utcDate) {\n return new Date(utcDate);\n }\n\n function dayOfTheWeek(utcDate) {\n var d = new Date(utcDate);\n var week = new Array(7);\n\n week[0] = \"Sun\";\n week[1] = \"Mon\";\n week[2] = \"Tue\";\n week[3] = \"Wed\";\n week[4] = \"Thu\";\n week[5] = \"Fri\";\n week[6] = \"Sat\";\n\n return week[d.getDay()];\n }\n\n function getDateElem(utcDate) {\n var d = new Date(utcDate);\n\n return {\n dayOfWeek: dayOfTheWeek(utcDate),\n day: d.getDate(),\n month: d.getMonth() + 1,\n year: d.getFullYear()\n };\n }\n\n function isFutureDate(endtime) {\n var total = (Date.parse(endtime) - Date.parse(new Date()));\n\n return total > 0;\n }\n\n function getTimeRemaining(endtime) {\n var SEC = 1000,\n MIN = SEC * 60,\n HRS = MIN * 60,\n DAY = HRS * 24;\n\n var total = (Date.parse(endtime) - Date.parse(new Date()));\n\n var d = Math.floor(total / DAY);\n var h = Math.floor((total % DAY) / HRS) + (d * 24);\n var m = Math.floor((total % HRS) / MIN);\n var s = Math.floor((total % MIN) / SEC);\n\n return {\n h,\n m,\n s\n };\n }\n\n function getLabel(endtime) {\n if (getTimeRemaining(endtime).h > 0) {\n return getTimeRemaining(endtime).h + 'h';\n }\n\n if (getTimeRemaining(endtime).m > 0) {\n return getTimeRemaining(endtime).m + 'm';\n }\n\n if (getTimeRemaining(endtime).s > 0) {\n return getTimeRemaining(endtime).s + 's';\n }\n\n return '---';\n }\n\n\n /*\n\n\n TMPL\n\n\n */\n\n function counterTmlp(data) {\n return `
\n
\n
\n CUT OFF\n ${data.dayOfWeek} ${data.day}/${data.month}/${data.year}\n
\n\n
\n ${data.h}h\n ${data.m}m\n ${data.s}s\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
${data.label}
\n
\n
\n `;\n }\n\n var el = {\n elem: elem,\n };\n\n var data = {\n api: getDataset(elem, 'api'),\n nextCutOff: [],\n dayOfWeek: '---',\n day: '--',\n month: '--',\n year: '----',\n\n h: '--',\n m: '--',\n s: '--',\n label: '---',\n };\n\n\n\n // Methods\n var m = {\n init: function() {\n if (typeof data.api === 'undefined') {\n return;\n }\n\n m.boot();\n },\n\n\n boot: function() {\n m.onClickCounter();\n m.fetchData();\n\n setInterval(function() {\n m.getNextData()\n ? m.calculateData(m.getNextData())\n : m.resetData();\n\n m.getNextData()\n ? m.updateCounterTmpl()\n : m.cleanCounterTmpl();\n }, 1000);\n },\n\n getNextData: function() {\n return data.nextCutOff &&\n data.nextCutOff.length > 0 &&\n data.nextCutOff.filter(isFutureDate).length > 0 &&\n data.nextCutOff.filter(isFutureDate)[0];\n },\n\n onClickCounter: function() {\n function swapClasses(e) {\n e.currentTarget.classList.toggle('deliveryCounter--showLarge');\n e.currentTarget.classList.toggle('deliveryCounter--showSmall');\n }\n\n el.elem.addEventListener('click', swapClasses);\n },\n\n updateCounterTmpl: function() {\n el.elem.innerHTML = counterTmlp(data);\n el.elem.style.display = 'block';\n\n (parseInt(data.h) >= 23)\n ? el.elem.classList.add('deliveryCounter--green')\n : el.elem.classList.add('deliveryCounter--red');\n\n (data.h === '--')\n && ( el.elem.classList.remove('deliveryCounter--green')\n , el.elem.classList.remove('deliveryCounter--red'));\n\n\n m.fire('delivery-counter:show');\n },\n\n cleanCounterTmpl: function() {\n el.elem.innerHTML = '';\n el.elem.style.display = 'none';\n\n m.fire('delivery-counter:hide');\n },\n\n calculateData: function(utcDate) {\n data['dayOfWeek'] = getDateElem(utcDate).dayOfWeek;\n data['day'] = getDateElem(utcDate).day;\n data['month'] = getDateElem(utcDate).month;\n data['year'] = getDateElem(utcDate).year;\n\n data['h'] = getTimeRemaining(utcDate).h;\n data['m'] = getTimeRemaining(utcDate).m;\n data['s'] = getTimeRemaining(utcDate).s;\n\n data['label'] = getLabel(utcDate);\n },\n\n resetData: function() {\n data['dayOfWeek'] = '---';\n data['day'] = '--';\n data['month'] = '--';\n data['year'] = '----';\n\n data['h'] = '--';\n data['m'] = '--';\n data['s'] = '--';\n data['label'] = '---';\n },\n\n fetchData: function() {\n $.ajax({\n url: data.api,\n processData: false,\n contentType: false,\n success: function(resp) {\n data.nextCutOff = (resp && resp.dates) ? resp.dates : [];\n },\n error: function(error) {\n\n }\n });\n },\n\n fire: function(eventName) {\n var ev = new CustomEvent(eventName);\n document.dispatchEvent(ev);\n },\n\n };\n\n return m;\n\n};\n","Core.DrawingTool = function (elem, showTools = true) {\n var $el = elem instanceof jQuery ? elem : $(elem);\n var $canvas = $el.find('.drawingTool-canvas');\n var $container = $el.find('.drawingTool-container');\n var $btnClear = $el.find('.drawingTool-btnClear');\n var $btnSave = $el.find('.drawingTool-btnSave');\n var $btnChooseTemplate = $el.find('.drawingTool-btnChooseTemplate');\n var $btnModifyPhoto = $el.find('.drawingTool-btnModifyPhoto');\n var $btnChoosePhoto = $el.find('.drawingTool-btnChoosePhoto');\n var $filePicker = $el.find('.drawingTool-filePicker');\n var $fileNameInput = $el.find('.drawingTool-fileNameInput');\n var $error = $el.find('.drawingTool-error'); \n\n var fileName = $el.data('file-name');\n\n function handleBtnClear() {\n $btnClear.on('click', function () {\n m.clear();\n });\n }\n\n function handleBtnSave(fileUploadObj, $fileUploadEl) {\n var scrollToUploadEl = function () {\n document.getElementById('checkoutHomeModification-fileupload').scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center'\n });\n };\n\n $btnSave.on('click', function () {\n // validate file name and file\n var fileName = getFileName();\n if (!fileName) {\n $fileNameInput.addClass('error');\n $fileNameInput.focus();\n return;\n } \n\n if ($btnSave.closest('#homeMod-draw').length > 0 ) {\n $fileNameInput.removeClass('error');\n }\n\n // check if modifying existing photo\n var isModifying = false;\n if ($fileNameInput.data('is-modifying')) {\n isModifying = true;\n }\n\n // remove error\n $container.removeClass('error');\n $error.addClass('hidden');\n $fileNameInput.removeClass('error');\n\n $btnSave.prop('disabled', true);\n var $list = $fileUploadEl.find('.fileUpload-fileList');\n var fileCount = $list.find('.fileUpload-file').length || 0;\n\n // find modified items, hide existing\n var items = $list.find('.fileUpload-filename'); \n if (isModifying && items.length > 0) {\n $(items).each(function(i, item) {\n var name = $(item).text();\n if ((isModifying && name === fileName)) {\n $(item).closest('.fileUpload-file').hide();\n }\n }); \n }\n\n var imagedata = $canvas.drawr(\"export\", \"image/png\");\n var imageBlob = Core.Util.uploadBase64Image(imagedata);\n var imageFile = new File([imageBlob], fileName);\n\n fileUploadObj.uploadFile(imageFile, fileCount, function(resp) {\n // success callback\n $btnSave.prop('disabled', false);\n\n scrollToUploadEl();\n m.clear();\n //append to homeModsVar\n var existingImages = window.homeModsVar.existingImages;\n\n if (isModifying) {\n // update existing image\n existingImages.find(function(item) {\n if (item.name === fileName) {\n item.url = imagedata;\n }\n });\n } else {\n existingImages.push({\n name: fileName,\n url: imagedata\n });\n }\n\n window.homeModsVar.existingImages = existingImages;\n var $template = $('#drawingTool-existingPhoto');\n renderPopupItem($template, existingImages);\n \n if (isModifying) {\n // check if isModifying\n items = $list.find('.fileUpload-filename'); \n if (items.length > 0) {\n var duplicatedItems = $(items).filter(function(i, item) {\n var name = $(item).text();\n if (isModifying) return name === fileName;\n });\n \n // remove previous item\n if (duplicatedItems.length > 1) {\n var $btn = $(duplicatedItems[0]).closest('.fileUpload-file').find('.fileUpload-delete');\n if ($btn) {\n $btn.attr('data-is-modifying', isModifying);\n $btn.trigger('click');\n }\n }\n }\n\n }\n }, function() {\n // fail callback\n scrollToUploadEl();\n $btnSave.prop('disabled', false);\n }, isModifying);\n });\n }\n\n function handleOpenPhoto() {\n if ($filePicker[0]) {\n $filePicker[0].onchange = function () {\n var file = $filePicker[0].files[0];\n if (!file.type.startsWith('image/')) { return }\n var reader = new FileReader();\n reader.onload = function (e) {\n $canvas.drawr(\"load\", e.target.result);\n $filePicker.val('');\n };\n reader.readAsDataURL(file);\n };\n }\n\n $btnChoosePhoto.on('click', function() {\n $filePicker.click();\n });\n }\n\n function getFileName() {\n var _fileName = fileName;\n if (_fileName) {\n if (_fileName.includes('{date}')) {\n var now = kendo.toString(new Date(), \"yyyyMMdd_HHmmss\");\n _fileName = _fileName.replaceAll('{date}', now);\n }\n\n return `${_fileName}.png`;\n } else if ($fileNameInput.val()) {\n return `${$fileNameInput.val()}.png`;\n } else {\n return '';\n }\n }\n\n function renderPopupItem($template, data) {\n var $grid = $template.find('.drawingTool-templateGrid');\n var id = $template.attr('id');\n var isExistingPhoto = id === 'drawingTool-existingPhoto';\n\n var templateItem = function(item) {\n return `\n
\n \"Template\n ${item.name}\n
\n `;\n };\n\n $grid.html('');\n if (data.length > 0) {\n data.map(function(item, i) {\n $grid.append(templateItem(item));\n });\n } else {\n $grid.html('

No items found.

');\n }\n\n // add click event\n $template.find('.drawingTool-templateItem').on('click', function() {\n var image = $(this).find('img').prop('src');\n var _$canvas = $('#homeMod-draw').find('.drawingTool-canvas');\n var _$fileNameInput = $('#homeMod-draw').find('.drawingTool-fileNameInput');\n _$canvas.drawr(\"load\", image);\n \n // set filename input, make it readonly, add flag if it's modifying existing photo\n if (isExistingPhoto) {\n // get item name, remove substring .png\n var name = $(this).find('.drawingTool-templateItemName').text(); \n _$fileNameInput.val(name.replaceAll('.png', ''));\n _$fileNameInput.prop('readonly', true);\n _$fileNameInput.data('is-modifying', true);\n }\n\n $template.data('kendoWindow').close();\n\n // var popup = ClientPopup($template);\n // popup && popup.close();\n\n document.getElementById('homeMod-draw').scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center'\n });\n });\n }\n\n function renderPopupGrid($template, data, $btnTrigger, popupTitle) {\n if ($template.hasClass('initialized')) return;\n\n renderPopupItem($template, data);\n $template.addClass('initialized');\n\n var popup;\n $btnTrigger.on('click', function() {\n popup = new ClientPopup($template, {title: popupTitle});\n popup.init();\n });\n }\n\n function handleGridTemplate() {\n var $template = $('#drawingTool-template');\n var data = window.homeModsVar;\n renderPopupGrid($template, data.templates, $btnChooseTemplate, \"Choose template\");\n }\n\n function handleModifyExistingPhoto() {\n var $template = $('#drawingTool-existingPhoto');\n var data = window.homeModsVar;\n renderPopupGrid($template, data.existingImages, $btnModifyPhoto, \"Choose existing photo\");\n }\n\n function initCanvas() {\n $canvas.drawr({\n enable_transparency: true,\n enable_transparency_image: true,\n enable_scrollwheel_zooming: false,\n undo_max_levels: 99,\n no_toolbox: !showTools, \n // canvas_width: $container.width(),\n // canvas_height: $container.width() * (4/3),\n });\n\n $canvas.drawr(\"start\");\n }\n\n var m = {\n init: function (fileUploadObj, $fileUploadEl) {\n initCanvas();\n handleBtnSave(fileUploadObj, $fileUploadEl);\n handleBtnClear();\n // handleBtnDelete();\n \n if (showTools) {\n handleOpenPhoto();\n handleGridTemplate();\n handleModifyExistingPhoto();\n }\n\n // set callback for delete\n // update existing images with current file list\n fileUploadObj.onDeleteSuccess = function(fileNameList, isModifying) {\n var existingImages = window.homeModsVar.existingImages;\n if (!isModifying) {\n existingImages = existingImages.filter(function(item) {\n return fileNameList.indexOf(item.name) !== -1;\n });\n window.homeModsVar.existingImages = existingImages;\n }\n\n var $template = $('#drawingTool-existingPhoto');\n renderPopupItem($template, existingImages);\n }\n\n if (!showTools) {\n $el.find('.drawr-toolbox').addClass('invisible');\n }\n\n m.resize();\n // $(window).trigger('resize');\n },\n clear: function () {\n $canvas.drawr(\"clear\");\n $fileNameInput.val('');\n $fileNameInput.prop('readonly', false);\n $fileNameInput.data('is-modifying', false);\n $filePicker.val('');\n },\n resize: function () {\n // reposition canvas\n $(window).on('resize', function () {\n var containerPosition = $container.offset();\n // $canvas.css({\n // left: containerPosition.left,\n // top: containerPosition.top,\n // width: $container.width(),\n // height: $container.height(),\n // });\n\n $container.find('.sfx-canvas').css({\n left: containerPosition.left,\n top: containerPosition.top,\n width: $container.width() - 1,\n height: $container.height(),\n });\n\n $el.find('.drawr-toolbox-brush').css({\n left: containerPosition.left,\n top: containerPosition.top,\n })\n });\n }\n }\n\n return m;\n};\n","/*\n *\n * @see clientAddressBook.js\n * @see checkout\n *\n */\nCore.DVAInformation = {\n init: function(data) {\n function isSet(data, name) {\n return data && typeof data[name] !== 'undefined';\n }\n\n Core.DVAInformation.Cache = {\n root: isSet(data, \"root\") ? document.querySelector(data.root) : document,\n datepickerInput: isSet(data, \"datepickerInput\") ? data.datepickerInput : \".form-date input\",\n domActivites: isSet(data, \"domActivites\") ? data.domActivites : \"#DVAActivities\",\n domBehaviour: isSet(data, \"domBehaviour\") ? data.domBehaviour : \"#DVABehaviour\",\n domComplexHealthCare: isSet(data, \"domComplexHealthCare\") ? data.domComplexHealthCare : \"#DVAComplex\",\n domFundingOtherType: isSet(data, \"domFundingOtherType\") ? data.domFundingOtherType : \"#DVAFundingOtherType\",\n domFundingOtherNotes: isSet(data, \"domFundingOtherNotes\") ? data.domFundingOtherNotes : \"#DVAFundingOtherNotes\",\n };\n\n Core.DVAInformation.initPicker();\n // Core.DVAInformation.addEventListenerRCF();\n Core.DVAInformation.addEventListenerFundingOther();\n Core.DVAInformation.initACFIClassification();\n },\n\n initPicker: function() {\n function isDatePicker2() {\n var elem = document.querySelector(Core.DVAInformation.Cache.datepickerInput);\n return elem && elem.dataset && elem.dataset.datepicker2 === '';\n }\n\n isDatePicker2()\n ? Core.DVAInformation.initDatePicker2()\n : Core.DVAInformation.initKendoDatePicker();\n },\n\n initKendoDatePicker: function() {\n var rootDom = Core.DVAInformation.Cache.root;\n var $el = $(rootDom.querySelectorAll(Core.DVAInformation.Cache.datepickerInput));\n\n if (! $el || $el.length === 0) {\n return;\n }\n\n $el.kendoDatePicker({\n format: \"dd/MM/yyyy\",\n start: Core.PortalCheckout.todayDate(),\n footer: '',\n change: function (e) {\n $(this.element).removeClass('error');\n $(this.element).trigger('blur');\n }\n });\n\n //make the input readonly\n $el.prop('readonly', true);\n\n $el.on('click', function () {\n $(this).data('kendoDatePicker').open();\n });\n\n $el.parent().find('[role=\"button\"]').on('click', function () {\n var input = $(this).parent().find('input');\n\n if (!input.prop('disabled')) {\n setTimeout(function() {\n $(this).parent().find('input').data('kendoDatePicker').open();\n }, 100);\n }\n });\n\n $el.on('blur', function (e) {\n Core.PortalCheckout.calendarOnBlur($(this));\n });\n },\n\n initDatePicker2: function() {\n var rootDom = Core.DVAInformation.Cache.root;\n\n Array\n .from(rootDom.querySelectorAll(Core.DVAInformation.Cache.datepickerInput))\n .forEach(function(itm) {\n Core.DatePicker2(itm).init()\n });\n },\n\n /*\n addEventListenerRCF: function() {\n var rootDom = Core.DVAInformation.Cache.root;\n var radios = rootDom.querySelectorAll('[name=\"DVAResidentialCareFacility\"], [name=\"ResidentialCareFacility\"]');\n var optionsContainer = rootDom.querySelector('.rcf-options');\n\n function resetSelect() {\n var $domActivites = $(Core.DVAInformation.Cache.domActivites);\n var $domBehaviour = $(Core.DVAInformation.Cache.domBehaviour);\n var $domComplexHealthCare = $(Core.DVAInformation.Cache.domComplexHealthCare);\n var list = [$domActivites, $domBehaviour, $domComplexHealthCare];\n\n if (!$domActivites || !$domBehaviour || !$domComplexHealthCare) {\n return;\n }\n\n list.forEach(function(item) {\n\n var $kItem = item.data(\"kendoDropDownList\");\n $kItem\n && ( $kItem.value('')\n , $kItem.trigger('change') );\n });\n }\n\n function onChange(e) {\n var target = e.currentTarget;\n if ($(target).prop('readonly')) {\n e.preventDefault();\n return;\n }\n\n var currentValue = target.value.toLowerCase();\n var isVisible = (currentValue === 'yes' || currentValue === 'true');\n\n isVisible\n ? optionsContainer.classList.remove('d-none')\n : optionsContainer.classList.add('d-none');\n\n ! isVisible\n && resetSelect();\n\n // check if in viewport, if not scroll to view\n if (isVisible) {\n var $closestRow = $(target).closest('.row');\n if ($closestRow && $closestRow.length > 0) {\n $closestRow.get(0).scrollIntoView();\n }\n }\n }\n\n function addListeners(elem) {\n elem.addEventListener('change', onChange);\n }\n\n Array.from(radios).forEach(addListeners);\n },\n */\n\n addEventListenerFundingOther: function() {\n var rootDom = Core.DVAInformation.Cache.root;\n var radios = rootDom.querySelectorAll('[name=\"DVAFundingOther\"], [name=\"FundingOther\"]');\n var optionsContainer = rootDom.querySelector('.fundingother-options');\n\n function resetSelect() {\n var $domFundingOtherType = $(Core.DVAInformation.Cache.domFundingOtherType);\n var list = [$domFundingOtherType];\n\n if (!$domFundingOtherType) {\n return;\n }\n\n list.forEach(function(item) {\n var $kItem = item.data(\"kendoDropDownList\");\n $kItem.value('');\n $kItem.trigger('change');\n });\n }\n\n function resetNotes() {\n var $domFundingOtherNotes = $(Core.DVAInformation.Cache.domFundingOtherNotes);\n $domFundingOtherNotes &&\n $domFundingOtherNotes.val('');\n }\n\n function onChange(e) {\n var target = e.currentTarget;\n if ($(target).prop('readonly')) {\n e.preventDefault();\n return;\n }\n\n var currentValue = target.value.toLowerCase();\n var isVisible = (currentValue === 'yes' || currentValue === 'true');\n\n isVisible\n ? optionsContainer.classList.remove('d-none')\n : optionsContainer.classList.add('d-none');\n\n ! isVisible\n && ( resetSelect()\n , resetNotes());\n\n // check if in viewport, if not scroll to view\n if (isVisible) {\n var $closestRow = $(target).closest('.row');\n if ($closestRow && $closestRow.length > 0) {\n $closestRow.get(0).scrollIntoView();\n }\n }\n }\n\n function addListeners(elem) {\n elem.addEventListener('change', onChange);\n }\n\n Array.from(radios).forEach(addListeners);\n },\n\n initACFIClassification: function() {\n var rootDom = Core.DVAInformation.Cache.root;\n var $domActivites = $(Core.DVAInformation.Cache.domActivites);\n var $domBehaviour = $(Core.DVAInformation.Cache.domBehaviour);\n var $domComplexHealthCare = $(Core.DVAInformation.Cache.domComplexHealthCare);\n var domACFI = rootDom.querySelector('#acfi');\n var domACFIShow = rootDom.querySelector('.acfi-show');\n\n function executeCallback(clb) {\n clb();\n };\n\n if (!$domActivites || !$domBehaviour || !$domComplexHealthCare || !domACFI || !domACFIShow) {\n return;\n }\n\n\n var d = {\n _activities: '',\n _behaviour: '',\n _complexHealthCare: '',\n\n subscriberList: {\n activities: [],\n behaviour: [],\n complexHealthCare: [],\n },\n\n set activities(activities) {\n this._activities = activities;\n\n d.subscriberList.activities.forEach(executeCallback);\n },\n\n set behaviour(behaviour) {\n this._behaviour = behaviour;\n\n d.subscriberList.behaviour.forEach(executeCallback);\n },\n\n set complexHealthCare(complexHealthCare) {\n this._complexHealthCare = complexHealthCare;\n\n d.subscriberList.complexHealthCare.forEach(executeCallback);\n },\n\n get acfi() {\n var acfi = this._activities + this._behaviour + this._complexHealthCare;\n\n return acfi.length === 3 ? acfi : '';\n },\n\n subscribe(name, callback) {\n d.subscriberList[name].push(callback);\n }\n };\n\n\n function loadValues() {\n d.activities = $domActivites.val();\n d.behaviour = $domBehaviour.val();\n d.complexHealthCare = $domComplexHealthCare.val();\n }\n\n function updateACFI() {\n domACFI.value = d.acfi;\n domACFIShow.innerText = d.acfi;\n }\n\n\n loadValues();\n\n d.subscribe('activities', updateACFI);\n d.subscribe('behaviour', updateACFI);\n d.subscribe('complexHealthCare', updateACFI);\n\n $domActivites.data(\"kendoDropDownList\") &&\n $domActivites.data(\"kendoDropDownList\").bind(\"change\", function() {\n d.activities = $domActivites.data(\"kendoDropDownList\").value();\n });\n\n $domBehaviour.data(\"kendoDropDownList\") &&\n $domBehaviour.data(\"kendoDropDownList\").bind(\"change\", function() {\n d.behaviour = $domBehaviour.data(\"kendoDropDownList\").value();\n });\n\n $domComplexHealthCare.data(\"kendoDropDownList\") &&\n $domComplexHealthCare.data(\"kendoDropDownList\").bind(\"change\", function() {\n d.complexHealthCare = $domComplexHealthCare.data(\"kendoDropDownList\").value();\n });\n },\n\n /*\n\n data\n\n Core.DVAInformation.isValid({\n dvaCardType: \"#DVACardType\",\n dvaDOB: \"#DVADOB\",\n dvaRCF: \"#yes_rcf\",\n dvaADL: \"#DVAActivities\",\n dvaBEH: \"#DVABehaviour\",\n dvaCHC: \"#DVAComplex\",\n dvaFundingOther: #FundingOther,\n dvaFundingOtherType: #FundingOtherType,\n });\n\n\n */\n isValid: function(data) {\n if (data === null) {\n true;\n }\n\n var isValid = true;\n var errorList = [];\n\n function checkIsValid(selectValidator) {\n isValid = selectValidator.isValid() && isValid;\n\n if (!selectValidator.isValid()) {\n selectValidator.elemSelector && errorList.push(selectValidator.elemSelector);\n }\n }\n\n function isDatePicker2() {\n var elem = document.querySelector(data.dvaDOB);\n return elem && elem.dataset && elem.dataset.datepicker2 === '';\n }\n\n var dvaCardType = SelectValidator(data.dvaCardType);\n var dvaDOB = isDatePicker2() ? DatePicker2Validator(data.dvaDOB) : DateInputValidator(data.dvaDOB);\n var dvaRCF = document.querySelector(data.dvaRCF);\n\n var dvaFundingOtherType = SelectValidator(data.dvaFundingOtherType);\n var dvaFundingOther = document.querySelector(data.dvaFundingOther);\n\n // var dvaADL = SelectValidator(data.dvaADL);\n // var dvaBEH = SelectValidator(data.dvaBEH);\n // var dvaCHC = SelectValidator(data.dvaCHC);\n\n if (!dvaCardType || !dvaDOB || !dvaRCF) { // || !dvaADL || !dvaBEH || !dvaCHC\n // in case no items it's valid\n return true;\n }\n\n [dvaCardType, dvaDOB].forEach(checkIsValid);\n\n // if (dvaRCF.checked) {\n // [dvaADL, dvaBEH, dvaCHC].forEach(checkIsValid);\n // }\n\n if (dvaFundingOther && dvaFundingOther.checked) {\n [dvaFundingOtherType].forEach(checkIsValid);\n }\n\n // check position between custom error (card type and funding other type dropdown) and form fields\n var top = 0;\n if (errorList.length > 0) {\n errorList.forEach(function(item, i) {\n var offsetTop = item && $(item).closest('.k-dropdownlist').offset().top;\n if (i === 0 || offsetTop > top) {\n top = offsetTop;\n }\n });\n }\n\n // check first error\n var $form = $(data.dvaCardType).closest('form');\n if ($form && $form.length > 0) {\n var firstError = $form.find('.error:visible').first();\n if (firstError && firstError.length > 0) {\n var errorTop = firstError.offset().top;\n\n // compare which top is lower\n if (top === 0 || errorTop < top) {\n top = errorTop;\n }\n }\n }\n\n // check if within modal or not\n // if ($form.closest('.k-window-content').length > 0) {\n // $form.find('div[class*=__content]').animate({\n // scrollTop: top\n // }, 300);\n // } else {\n // }\n \n top && Core.ScrollToView(top - 30);\n return isValid;\n },\n\n isValidDischarged: function(data) {\n if (data === null) {\n true;\n }\n\n var isValid = true;\n\n function checkIsValid(selectValidator) {\n isValid = selectValidator.isValid() && isValid;\n }\n\n var dvaDOD = DateInputValidator(data.dvaDOD);\n var dvaHospitalDischarge = document.querySelector(data.dvaHospitalDischarge);\n\n if (!dvaDOD || !dvaHospitalDischarge) {\n // in case no items it's valid\n return true;\n }\n\n if (dvaHospitalDischarge.checked) {\n [dvaDOD].forEach(checkIsValid);\n }\n\n return isValid;\n }\n};\n","Core.FileUpload = function(elem) {\n var NS = $(elem).closest('.portal-checkout__accordion-item').prop('id') || '';\n\n function fireEvent(name) {\n var event = new CustomEvent(name);\n document.dispatchEvent(event);\n }\n\n /*\n\n DATASET\n\n */\n\n function hasDataset(elem, name) {\n return elem &&\n elem.dataset &&\n typeof elem.dataset[name] !== 'undefined';\n }\n\n function warnData(name) {\n console.warn('Fileupload data for ' + name + ' missing');\n return;\n }\n\n function getDataset(elem, name) {\n return hasDataset(elem, name)\n ? elem.dataset[name]\n : warnData(name);\n }\n\n function getFileAllowed(elem) {\n var fileAllowedRaw = hasDataset(elem, 'fileAllowed')\n ? elem.dataset.fileAllowed\n : '';\n\n if (fileAllowedRaw.trim() === '') {\n return [];\n }\n\n var fileAllowed = fileAllowedRaw\n .trim()\n .split(',')\n .map(function(el) {\n return el.trim().toLowerCase()\n }).filter(function(el) {\n return (el.length > 0);\n });\n\n return fileAllowed;\n }\n\n /*\n\n EVENTS\n\n */\n\n function preventDefaults (e) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n function getFileHtml(id, name) {\n return \"
\" +\n \" \" +\n \"\" + name + \"\" +\n \"
\" +\n \"
\";\n }\n\n function addDeleteButton(elem, name) {\n $(elem).find('.fileUpload-loading').remove();\n $(elem).append(\"\");\n }\n\n function appendHidden(elem, className, value) {\n $(elem).append('');\n }\n\n function recalculateHiddenFieldsNames(className) {\n var reorderName = function(elem, i) {\n elem.name = className + '[' + i + ']';\n };\n\n var list = el.elem.querySelectorAll('.' + className);\n\n Array.from(list).forEach(reorderName);\n }\n\n\n /*\n\n\n DOM\n\n\n */\n\n function getFileNameList() {\n var list = el.fileList.querySelectorAll('.fileUpload-filename');\n\n function getText(nodeDOM) {\n return nodeDOM.innerText;\n }\n\n return Array.from(list).map(getText);\n }\n\n var el = {\n elem: elem,\n input: elem.querySelector('.fileUpload-input'),\n target: elem.querySelector('.fileUpload-target'),\n fileList: elem.querySelector('.fileUpload-fileList'),\n errorWrap: elem.querySelector('.form-input'),\n errorText: elem.querySelector('.error'),\n };\n\n var data = {\n uploadId: getDataset(elem, 'uploadId'),\n uploadClass: getDataset(elem, 'uploadClass'),\n originalFileNameClass: getDataset(elem, 'originalFileNameClass'),\n apiUpload: getDataset(elem, 'apiUpload'),\n apiDelete: getDataset(elem, 'apiDelete'),\n fileSize: getDataset(elem, 'fileSize') || 5,\n fileAllowed: getFileAllowed(elem),\n fileNameList: getFileNameList(),\n isMultiple: (typeof el.input.attributes['multiple'] !== 'undefined')\n };\n\n // Methods\n var m = {\n init: function() {\n if (typeof data.uploadId === 'undefined' ||\n typeof data.apiUpload === 'undefined' ||\n typeof data.apiDelete === 'undefined') {\n return;\n }\n\n m.boot();\n },\n\n boot: function() {\n m.onDragAndDrop();\n m.onClickDelete();\n },\n\n onDragAndDrop: function() {\n // Prevent default drag behaviors\n [\n 'dragenter',\n 'dragover',\n 'dragleave',\n 'drop'\n ].forEach(function(eventName) {\n el.target.addEventListener(eventName, preventDefaults, false);\n document.body.addEventListener(eventName, preventDefaults, false);\n });\n\n // Highlight drop area when item is dragged over it\n ['dragenter', 'dragover'].forEach(function(eventName) {\n el.target.addEventListener(eventName, function(e) { elem.classList.add('fileUpload-highlight'); }, false);\n });\n\n ['dragleave', 'drop'].forEach(function(eventName) {\n el.target.addEventListener(eventName, function(e) { elem.classList.remove('fileUpload-highlight'); }, false);\n });\n\n el.target.addEventListener('drop', function(e) { Array.from(e.dataTransfer.files).forEach(m.uploadFile); }, false);\n\n // enable upload same file after delete\n el.input.addEventListener('keydown', function() { this.value = null; });\n el.input.addEventListener('click', function() { this.value = null; });\n el.input.addEventListener('change', function(e) { Array.from(e.target.files).forEach(m.uploadFile); }, false);\n },\n\n showError: function(msg) {\n el.errorWrap.classList.remove('d-none');\n el.errorText.innerText = msg;\n },\n\n\n /*\n\n\n UPLOAD\n allowSameName: allow upload same file name (Modify existing photo)\n\n */\n\n uploadFile: function(file, i, successCb, failCb, allowSameName) {\n if (!allowSameName && data.isMultiple && data.fileNameList.includes(file.name)) {\n m.showError('Upload file with the same name is not allowed');\n if (failCb && typeof failCb === 'function') failCb(); \n return;\n }\n\n if (! data.isMultiple && data.fileNameList.length === 1) {\n m.showError('You can only upload only one file. Delete the current file before upload.');\n if (failCb && typeof failCb === 'function') failCb();\n return;\n }\n\n if (data.fileAllowed.length > 0) {\n var extension = file.name.split('.').length > 1\n ? file.name.toLowerCase().split('.').pop()\n : '';\n\n if (data.fileAllowed.indexOf(extension) === -1) {\n m.showError('File extension \"' + extension + '\" is not allowed');\n if (failCb && typeof failCb === 'function') failCb();\n return;\n }\n }\n\n if ((file.size / (1000 * 1000)).toFixed(2) > parseInt(data.fileSize)) {\n m.showError(`The maximum file size allowed is ${data.fileSize}MB`);\n if (failCb && typeof failCb === 'function') failCb();\n return;\n }\n\n var formData = new FormData();\n formData.append('uploadId', data.uploadId);\n formData.append('file', file);\n formData.append('fileSize', parseInt(data.fileSize));\n\n var inputId = i + '-' + Date.now();\n\n (data.isMultiple)\n ? $(el.fileList).append(getFileHtml(inputId, file.name))\n : $(el.fileList).html(getFileHtml(inputId, file.name));\n\n el.errorWrap.classList.add('d-none');\n\n if (!allowSameName) {\n data.fileNameList.push(file.name);\n }\n\n $.ajax({\n type: 'POST',\n url: data.apiUpload,\n data: formData,\n processData: false,\n contentType: false,\n success: function(resp) {\n var elem = el.elem.querySelector('[data-file-id=\"' + inputId + '\"]');\n resp = typeof resp === 'string' ? JSON.parse(resp) : resp;\n\n elem\n && ( setTimeout(function() { addDeleteButton(elem, file.name); }, 250)\n , appendHidden(elem, data.uploadClass, resp.hash)\n , recalculateHiddenFieldsNames(data.uploadClass)\n , appendHidden(elem, data.originalFileNameClass, resp.originalFileName)\n , recalculateHiddenFieldsNames(data.originalFileNameClass)\n , fireEvent(`${NS ? NS + '.' : ''}fileUploaded`)\n );\n \n if (successCb && typeof successCb === 'function') {\n successCb(resp);\n }\n },\n error: function(error) {\n var elem = el.elem.querySelector('[data-file-id=\"' + inputId + '\"]');\n\n data.fileNameList = data.fileNameList.filter(function(fileName) { return fileName !== file.name; });\n\n error.responseText\n ? m.showError('Error Occurred: ' + error.responseText)\n : m.showError('Error uploading ' + file.name + ' try later');\n\n elem\n && $(elem).remove();\n\n if (failCb && typeof failCb === 'function') failCb();\n }\n });\n },\n\n\n /*\n\n\n DELETE\n\n\n */\n\n onClickDelete: function() {\n el.fileList.addEventListener('click', preventDefaults, false);\n el.fileList.addEventListener('click', m.handleDelete, false);\n },\n\n handleDelete: function(e) {\n function isDeleteButton(elem) {\n return (elem.classList.contains('fileUpload-delete') || elem.classList.contains('icon-delete'));\n }\n\n function hasFileId(elem) {\n var fileRow = findFileRow(elem, 0);\n var fileId = fileRow.querySelector('input[type=hidden]');\n\n return (fileId);\n }\n\n function getFileId(elem) {\n var fileRow = findFileRow(elem, 0);\n var fileId = fileRow.querySelector('input[type=hidden]');\n\n return fileId.value;\n }\n\n function findFileRow(elem, attempt) {\n if (elem.parentElement.classList.contains('fileUpload-file')) {\n return elem.parentElement;\n }\n\n if (attempt > 2) {\n return;\n }\n\n return findFileRow(elem.parentElement, attempt + 1);\n }\n\n function deleteFileRow(elem) {\n var fileRow = findFileRow(elem, 0);\n\n fileRow\n && $(fileRow).remove();\n }\n\n /*\n\n\n Remove file name from file data.fileNameList.\n This is to allow re-upload a file after deletion.\n\n\n */\n function freeFileNameFromFileList(elem) {\n // is modifying, skip filter out\n if (elem.dataset.isModifying) return;\n\n var fileRow = findFileRow(elem, 0);\n var fileNameDom = fileRow && fileRow.querySelector('.fileUpload-filename');\n\n function filterOutFile(fileName) {\n return fileName !== fileNameDom.innerText;\n }\n\n fileNameDom &&\n (data.fileNameList = data.fileNameList.filter(filterOutFile));\n }\n\n function callApiDelete(elem) {\n var formData = new FormData();\n var isModifying = elem.dataset.isModifying;\n formData.append('uploadId', data.uploadId);\n formData.append('fileId', getFileId(elem));\n\n $.ajax({\n type: 'POST',\n url: data.apiDelete,\n data: formData,\n processData: false,\n contentType: false,\n success: function(resp) {\n deleteFileRow(elem);\n freeFileNameFromFileList(elem);\n fireEvent(`${NS ? NS + '.' : ''}fileDeleted`);\n // delete from vars\n if (m.onDeleteSuccess && typeof m.onDeleteSuccess === 'function') m.onDeleteSuccess(data.fileNameList, isModifying);\n },\n error: function(error) {\n m.showError('Error Occurred: ' + error.responseText);\n }\n });\n }\n\n isDeleteButton(e.target)\n && hasFileId(e.target)\n && callApiDelete(e.target);\n },\n\n onDeleteSuccess: null,\n };\n\n return m;\n};\n","\n\nCore.FinalisePayment = {\n init: function () {\n Core.FinalisePayment.Cache = {\n $termAndConditionLink: $('.termAndConditionPopup'),\n $btnAgreePopup: $('#btnAgreePopup'),\n $btnCancelPopup: $('#btnCancelPopup'),\n $termsCheckbox: $('#termsAndConditionsCheckbox'),\n $btnPay: $('#btnPayNow'),\n };\n\n this.setPopup();\n this.initTooltip();\n this.handleTacCheckbox();\n this.btnAgreeClickHandle();\n this.btnCancelClickHandle();\n },\n\n btnAgreeClickHandle: function () {\n Core.FinalisePayment.Cache.$btnAgreePopup.on('click', function (e) {\n e.stopPropagation();\n Core.FinalisePayment.checkTacCheckbox(true);\n Core.FinalisePayment.showPopup($('#tacPopup'), false);\n });\n },\n\n btnCancelClickHandle: function () {\n Core.FinalisePayment.Cache.$btnCancelPopup.on('click', function (e) {\n e.stopPropagation();\n Core.FinalisePayment.checkTacCheckbox(false);\n Core.FinalisePayment.showPopup($('#tacPopup'), false);\n });\n },\n\n handleTacCheckbox: function () {\n Core.FinalisePayment.Cache.$termsCheckbox.on('change', function (e) {\n //keep chekbox unchanged\n var isChecked = this.checked;\n this.checked = !isChecked;\n $.uniform.update('#termsAndConditionsCheckbox');\n\n Core.FinalisePayment.showPopup($('#tacPopup'), true);\n });\n },\n\n checkTacCheckbox: function (isSelected) {\n var _self = Core.FinalisePayment;\n\n _self.Cache.$termsCheckbox.prop('checked', isSelected);\n $.uniform.update('#termsAndConditionsCheckbox');\n\n _self.enablePayBtn(isSelected);\n },\n\n isTermChecked: function() {\n var _self = Core.FinalisePayment;\n\n return _self.Cache.$termsCheckbox.prop('checked');\n },\n\n enablePayBtn: function (doEnable) {\n $('#btn-pay').prop('disabled', !doEnable);\n\n if (typeof doEnable === \"undefined\" || doEnable === null) {\n doEnable = true;\n }\n\n var _self = Core.FinalisePayment;\n\n if (doEnable) _self.Cache.$btnPay.removeClass('disabled').prop('disabled', false);\n else _self.Cache.$btnPay.addClass('disabled').prop('disabled', true);\n },\n initTooltip: function() {\n $('#cvvTooltip').kendoTooltip({\n width: 200,\n position: \"top\",\n show: function(e) {\n this.popup.element.addClass('portal-tooltip text-center');\n }\n });\n },\n initPopup: function ($popup, title) {\n var _self = Core.FinalisePayment;\n var _width = 660,\n _height = 350;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n $popup.kendoWindow({\n title: title,\n width: _width,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n animation: false,\n appendTo: '#page-wrap'\n });\n\n var $closeBtn = $popup.find('.portal-modal__btn-close');\n\n if ($closeBtn) {\n $closeBtn.on('click', function () {\n _self.showPopup($popup, false);\n });\n }\n },\n\n showPopup: function ($popup, doShow) {\n doShow = doShow == undefined || null ? true : doShow; //set default to true/show\n\n var popupWindow = $popup.data(\"kendoWindow\");\n\n if (doShow) {\n popupWindow.center().open();\n } else {\n popupWindow.close();\n }\n },\n\n setPopup: function () {\n var _self = Core.FinalisePayment;\n\n _self.initPopup($('#tacPopup'), \"TERMS & CONDITIONS\");\n\n _self.Cache.$termAndConditionLink.on('click', function (e) {\n e.preventDefault();\n Core.FinalisePayment.showPopup($('#tacPopup'), true);\n });\n },\n};\n\n\n","Core.Map = function(elem) {\n var canvas = elem ? elem : document.getElementById(\"google-map-canvas\");\n var map = null;\n var zoomLevel = 4;\n var lat = -28.926;\n var lng = 134.175;\n\n\n /*\n\n\n METHODS\n\n\n */\n\n var m = {\n init: function() {\n m.createMap();\n },\n\n createMap: function () {\n var options = {\n disableDefaultUI: true,\n scrollWheel: false,\n draggable: true,\n streetViewControl: false,\n zoom: zoomLevel,\n zoomControl: true,\n zoomControlOptions: {\n style: google.maps.ZoomControlStyle.SMALL,\n position: google.maps.ControlPosition.RIGHT_TOP\n },\n minZoom: 1,\n center: new google.maps.LatLng(lat, lng),\n mapTypeId: google.maps.MapTypeId.ROADMAP\n };\n\n map = new google.maps.Map(canvas, options);\n canvas.classList.add('inited');\n },\n\n /*\n * @param data { Latitude:string, Longitude: string, Name: string}[]\n * @return void\n */\n plotMarkers: function (data) {\n data.forEach(function(item) {\n new google.maps.Marker({\n position: new google.maps.LatLng(item.Latitude, item.Longitude),\n map: map,\n title: item.Name,\n icon: Core.Config.StoreFinder.MarkerIconPath\n });\n });\n },\n\n resetCenter: function() {\n map.setCenter({ lat: lat, lng: lng });\n map.setZoom(Core.IsMobile() ? 3 : 4);\n },\n\n setState: function(state) {\n var lat, lng, zoomLevel;\n\n switch (state) {\n case 'act':\n if (Core.IsMobile()) {\n zoomLevel = 6;\n } else {\n zoomLevel = 7;\n }\n lat = -35.308;\n lng = 149.124;\n break;\n case 'nsw':\n zoomLevel = 6;\n lat = -33.253;\n lng = 148.921;\n break;\n case 'vic':\n zoomLevel = 7;\n if ( Core.IsMobile()) {\n lat = -37.471;\n lng = 144.785;\n } else {\n lat = -36.390;\n lng = 144.235;\n }\n break;\n case 'qld':\n zoomLevel = 6;\n if (Core.IsMobile()) {\n lat = -25.917;\n lng = 151.702;\n } else {\n lat = -23.803;\n lng = 145.571;\n }\n break;\n case 'sa':\n if (Core.IsMobile()){\n zoomLevel = 5;\n lat = -30.000;\n lng = 136.209;\n } else {\n zoomLevel = 6;\n lng = 134.989;\n lat = -31.566;\n }\n break;\n case 'wa':\n if ( Core.IsMobile() ) {\n zoomLevel = 5;\n lat = -24.1249304;\n lng = 111.9433776;\n } else {\n zoomLevel = 6;\n lat = -30.422;\n lng = 117.0266;\n }\n break;\n case 'tas':\n zoomLevel = 7;\n lat = -41.965;\n lng = 146.628;\n break;\n case 'nt':\n zoomLevel = 5;\n lat = -19.491;\n lng = 133.550;\n break;\n default:\n if (Core.IsMobile()) {\n zoomLevel = 3;\n } else {\n zoomLevel = 4;\n }\n lat = -28.926;\n lng = 134.175;\n break;\n }\n\n map.setCenter({ lat: lat, lng: lng });\n map.setZoom(zoomLevel);\n },\n\n goTo: function(_lat, _lng) {\n lat = new Number(_lat);\n lng = new Number(_lng);\n map.setCenter(new google.maps.LatLng(lat, lng));\n map.setZoom(15);\n },\n\n initList: function(mapList) {\n function initGeneric(elem) {\n var _map = new Core.Map(elem);\n _map.init();\n\n if (!elem.dataset || !elem.dataset.lng || !elem.dataset.lat) {\n return;\n }\n\n _map.plotMarkers([{\n \"Longitude\": elem.dataset.lng,\n \"Latitude\": elem.dataset.lat,\n \"Name\": elem.dataset.name || '',\n }]);\n\n _map.goTo(elem.dataset.lat, elem.dataset.lng)\n }\n\n\n Array.from(mapList).forEach(initGeneric);\n },\n };\n\n return m;\n};\n","Core.MfaLogin = function () {\n var CLS_HIDE = 'd-none';\n var param = new URLSearchParams(window.location.search);\n var id = param.get('id');\n var $el = $('.mfaLogin');\n\n function handleOption() {\n $('.mfaLogin-option').on('click', function () {\n Core.ShowPageLoading(); \n var $btn = $(this); \n var authType = $btn.data('auth-type');\n var api = $btn.data('auth-api');\n var $box = $('.mfaLogin-box[data-auth-type=\"' + authType + '\"]');\n\n switch (authType) {\n case 'app':\n selectAuthApp(api, $box);\n break;\n case 'sms':\n selectAuthSms(api, $box);\n break;\n case 'email':\n default:\n selectAuthEmail(api, $box);\n break;\n }\n });\n }\n\n function selectAuthApp(api, $box) {\n $.ajax({\n url: api,\n data: { id: id },\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n $box.find('.mfaLogin-qrCode img').prop('src', data.qrCode);\n $box.find('.mfaLogin-code').html(data.code);\n $('.mfaLogin-box').addClass(CLS_HIDE);\n $box.removeClass(CLS_HIDE);\n $box.find('.mfaLogin-body').removeClass(CLS_HIDE);\n },\n error: function (xhr, status, error) {\n console.error({xhr, status, error});\n },\n complete: function () {\n Core.HidePageLoading();\n }\n });\n }\n\n function selectAuthSms(api, $box) {\n $.ajax({\n url: api,\n data: { id: id },\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n if (!data.isSuccess) return;\n\n $('.mfaLogin-box').addClass(CLS_HIDE);\n if (data.requiredPhone) {\n $box.find('.mfaLogin-body[data-step-sms=\"phone\"]').removeClass(CLS_HIDE);\n } else {\n $box.find('.mfaLogin-body[data-step-sms=\"otp\"]').removeClass(CLS_HIDE);\n $box.find('.mfaLogin-maskedPhone').html(data.mobileNumber);\n }\n\n $box.removeClass(CLS_HIDE);\n },\n error: function (xhr, status, error) {\n console.error({xhr, status, error});\n },\n complete: function () {\n Core.HidePageLoading();\n }\n });\n }\n\n function selectAuthEmail(api, $box) {\n $.ajax({\n url: api,\n data: { id: id },\n type: 'POST',\n dataType: 'json',\n success: function (data) { \n if (!data.isSuccess) return;\n\n $('.mfaLogin-box').addClass(CLS_HIDE);\n $box.find('.mfaLogin-body[data-step-email=\"otp\"]').removeClass(CLS_HIDE);\n $box.find('.mfaLogin-maskedEmail').html(data.email);\n $box.removeClass(CLS_HIDE);\n },\n error: function (xhr, status, error) {\n console.error({xhr, status, error});\n },\n complete: function () {\n Core.HidePageLoading();\n }\n });\n }\n\n function handleCancelButton() {\n $('.mfaLogin-btnCancel').on('click', function (e) {\n // if it's an anchor tag, redirect to href\n if ($(this).is(\"a\")) return;\n\n $('.mfaLogin-box, .mfaLogin-body').addClass(CLS_HIDE);\n $('.mfaLogin-btnResendCode').prop('disabled', true);\n $('.mfaLogin-error').html('');\n $('.mfaLogin-form input').val('');\n\n var $firstBox = $el.find('.mfaLogin-box:first');\n $firstBox.removeClass(CLS_HIDE);\n $firstBox.find('.mfaLogin-body').removeClass(CLS_HIDE);\n });\n }\n\n // Verify button for app and sms\n function handleVerifyButton() {\n $el.find('form.mfaLogin-form__verify').on('submit', function (e) {\n e.preventDefault();\n var $form = $(this);\n var $box = $form.closest('.mfaLogin-box');\n if (!$form.valid()) return;\n\n Core.ShowPageLoading();\n var $error = $box.find('.mfaLogin-error');\n var authType = $box.data('auth-type');\n var api = '';\n\n switch (authType) {\n case 'app':\n api = $el.data('verify-app-api');\n break; \n case 'sms':\n api = $el.data('verify-sms-api');\n break; \n case 'email':\n default:\n api = $el.data('verify-email-api');\n break;\n }\n var isSetup = $el.data('setup') === true || $el.data('setup') === \"true\";\n\n $.ajax({\n url: api,\n data: { \n id: id, \n verificationCode: $form.find('input[name=\"verificationCode\"]').val(),\n trustedDevice: $form.find('input[name=\"trustedDevice\"]').is(':checked'),\n },\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n if (data.isSuccess) {\n $error.addClass(CLS_HIDE);\n\n // is not setup, redirect to page\n if (isSetup) {\n $('.mfaLogin-box').addClass(CLS_HIDE);\n $('.mfaLogin-box[data-step=\"3\"], .mfaLogin-box[data-step=\"3\"] .mfaLogin-body').removeClass(CLS_HIDE); \n $('.mfaLogin-redirectLink').prop('href', data.urlPage); \n\n Core.HidePageLoading(); \n // Redirect to page after 5 seconds\n setTimeout(function () {\n window.location.href = data.urlPage;\n }, 5000);\n } else {\n window.location.href = data.urlPage;\n }\n\n return;\n } else {\n $error.html(data.message);\n $error.removeClass(CLS_HIDE);\n Core.HidePageLoading();\n }\n },\n error: function (xhr, status, error) {\n $error.html(status);\n $error.removeClass(CLS_HIDE);\n Core.HidePageLoading();\n }\n });\n });\n }\n\n function handleVerifyPhoneButton() {\n $el.find('form.mfaLogin-form__phone').on('submit', function (e) {\n e.preventDefault();\n var $form = $(this);\n var $box = $form.closest('.mfaLogin-box');\n if (!$form.valid()) return;\n\n Core.ShowPageLoading(); \n var $error = $box.find('.mfaLogin-error');\n var api = $('.mfaLogin').data('verify-phone-api');\n\n $.ajax({\n url: api,\n data: { \n id: id,\n mobileNumber: $box.find('#mobileNumber').val(),\n },\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n if (data.isSuccess) {\n $error.addClass(CLS_HIDE);\n $box.find('.mfaLogin-maskedPhone').html(data.mobileNumber);\n $box.find('.mfaLogin-body[data-step-sms=\"phone\"]').addClass(CLS_HIDE);\n $box.find('.mfaLogin-body[data-step-sms=\"otp\"]').removeClass(CLS_HIDE);\n enableResendCode(); \n } else {\n $error.html(data.message);\n $error.removeClass(CLS_HIDE);\n }\n },\n error: function (xhr, status, error) {\n $error.html(status);\n $error.removeClass(CLS_HIDE);\n },\n complete: function () {\n Core.HidePageLoading();\n }\n });\n });\n \n }\n\n function enableResendCode() {\n var $btn = $('.mfaLogin-btnResendCode');\n var timeout = $btn.data('timeout');\n setTimeout(() => {\n $btn.prop('disabled', false);\n $btn.removeClass(CLS_HIDE);\n }, timeout || 10000); // default to 10 seconds\n }\n\n function handleResendCode() {\n var resendClickCounter = 0;\n\n $('.mfaLogin-btnResendCode').on('click', function () { \n var $btn = $(this);\n var api = $('.mfaLogin').data('resend-code-api');\n var $box = $btn.closest('.mfaLogin-box');;\n var $error = $box.find('.mfaLogin-error');\n \n if (resendClickCounter > 4) {\n $btn.prop('disabled', true);\n $error.html('You have reached the maximum number of resend code. Please try again later.');\n $error.removeClass(CLS_HIDE);\n return;\n }\n\n Core.ShowPageLoading();\n $.ajax({\n url: api,\n data: { id: id },\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n $btn.prop('disabled', true);\n $btn.addClass(CLS_HIDE);\n if (data.isSuccess) {\n enableResendCode(); \n resendClickCounter++;\n } else {\n $error.html(data.message);\n $error.removeClass(CLS_HIDE);\n }\n },\n error: function (xhr, status, error) {\n console.error({xhr, status, error});\n },\n complete: function () {\n Core.HidePageLoading();\n }\n });\n });\n }\n\n function initForm() {\n $(\"input[type=checkbox]\").uniform();\n\n $el.find('form').each(function () {\n $(this).validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n return;\n\n $(\".mfaLogin-error\").html('');\n }\n });\n });\n }\n\n function handleRedirectBtn() {\n $('.mfaLogin-redirectLink').on('click', function (e) {\n Core.ShowPageLoading();\n });\n }\n\n var m = {\n init: function () {\n initForm();\n handleOption();\n handleCancelButton();\n handleVerifyButton();\n handleVerifyPhoneButton();\n handleResendCode();\n handleRedirectBtn();\n\n if ($el.data('setup') === false || $el.data('setup') === \"false\") {\n enableResendCode();\n }\n },\n };\n\n return m;\n};","Core.MyAccountSupplierInstaller = (function() {\n var $inputState = $(\".selectedState\");\n var $inputInState = $(\".selectedInState\");\n\n var $selectState = $(\"#dropdownState\");\n var $selectInState = $(\"#dropdownInState\");\n\n var $btnContinue = $(\"#btnSaveSupplierInstaller\");\n var selectDefaultDom = document.querySelector(\"#dropdownInState option\");\n var selectDefaultText = selectDefaultDom && selectDefaultDom.innerText || '';\n\n var map = null;\n\n function executeCallback(clb) {\n clb();\n };\n\n /*\n\n\n DATA\n\n\n */\n\n var d = {\n state: '',\n inState: '',\n\n subscriberList: {\n selectedState: [],\n selectedInState: [],\n },\n\n set selectedState(state) {\n this.state = state;\n this.selectedInState = '';\n\n d.subscriberList.selectedState.forEach(executeCallback);\n },\n\n get selectedState() {\n return this.state;\n },\n\n set selectedInState(inState) {\n this.inState = inState;\n\n d.subscriberList.selectedInState.forEach(executeCallback);\n },\n\n get selectedInState() {\n return this.inState;\n },\n\n subscribe(name, callback) {\n d.subscriberList[name].push(callback);\n }\n };\n\n\n /*\n\n\n METHODS\n\n\n */\n\n var m = {\n init: function() {\n this.loadVar();\n this.loadCallback();\n\n this.updateState();\n this.onStateChange();\n\n this.updateInState();\n\n this.updateDetails();\n\n this.checkBtn();\n this.initMap();\n this.goTo();\n this.initForm();\n },\n\n loadVar: function() {\n d.selectedState = $inputState.val();\n d.selectedInState = $inputInState.val();\n },\n\n loadCallback: function() {\n d.subscribe('selectedState', m.updateInState);\n\n d.subscribe('selectedInState', m.checkBtn);\n d.subscribe('selectedInState', m.updateDetails);\n d.subscribe('selectedInState', m.goTo);\n },\n\n /*\n\n\n STATE\n\n\n */\n\n updateState: function() {\n var selectedState = d.selectedState;\n\n if (selectedState === '' || selectedState === 'all') {\n return;\n }\n\n $selectState.data(\"kendoDropDownList\").value(selectedState);\n },\n\n onStateChange: function() {\n function updateDataState() {\n d.selectedState = $selectState.data(\"kendoDropDownList\").value();\n $inputState.val(d.selectedState);\n $inputInState.val(d.selectedInState);\n };\n\n $selectState.data(\"kendoDropDownList\").bind(\"change\", updateDataState);\n },\n\n\n /*\n\n\n IN STATE\n\n\n */\n\n getInStatesList: function() {\n var selectedState = d.selectedState;\n\n function isInState(item) {\n return item.State\n ? item.State.toLowerCase() === selectedState.toLowerCase()\n : false;\n }\n\n if (selectedState === '' || selectedState === 'all') {\n return [{Name: selectDefaultText, \"Id\": \"\"}];\n }\n\n\n if (typeof window.DataJson === 'undefined' || typeof window.DataJson.Data === 'undefined') {\n return [{Name: selectDefaultText, \"Id\": \"\"}];\n }\n\n\n var inStateList = window.DataJson.Data.filter(isInState);\n return [{Name: selectDefaultText, \"Id\": \"\"}].concat(inStateList);\n },\n\n getInState: function() {\n function isSelectedInState(item) {\n return item.Id === d.selectedInState;\n };\n\n return m.getInStatesList().find(isSelectedInState);\n },\n\n updateInState: function() {\n var selectedInState = d.selectedInState;\n var itemList = m.getInStatesList();\n\n $selectInState.kendoDropDownList({\n dataSource: itemList,\n dataTextField: \"Name\",\n dataValueField: \"Id\"\n });\n\n $selectInState.data(\"kendoDropDownList\").value(selectedInState);\n m.onInStateChange();\n },\n\n onInStateChange: function() {\n function updateDataInState() {\n d.selectedInState = $selectInState.data(\"kendoDropDownList\").value();\n $inputInState.val(d.selectedInState);\n };\n\n $selectInState.data(\"kendoDropDownList\").bind(\"change\", updateDataInState);\n },\n\n\n\n /*\n\n\n BUTTONS\n\n\n */\n\n checkBtn: function() {\n var hasValidInState = (d.selectedInState !== '' && d.selectedState !== '');\n $btnContinue.attr('disabled', !hasValidInState);\n },\n\n\n\n /*\n\n\n DETAILS\n\n\n */\n\n updateDetails: function() {\n var $desc = $('.desc');\n var $details = $('.details');\n var item = m.getInState();\n\n if (!item.AddressLine1) {\n $content = ' ';\n $desc.show();\n $details.html($content);\n $details.hide();\n return;\n }\n\n $content = '

' + item.Name + '

'\n + '

' + item.AddressLine1 + '

'\n + '

' + item.Suburb + '

'\n + '

' + item.State + ', ' + item.Postcode + '

'\n + '

Phone: ' + item.Phone + '

'\n + (item.BusinessHours ? '

Business Hours:

' + item.BusinessHours + '
' : '');\n\n $desc.hide();\n $details.html($content);\n $details.show();\n },\n\n /*\n\n\n MAP\n\n\n */\n\n initMap: function() {\n var $mapCanvas = $(\"#google-map-canvas\");\n\n if ($mapCanvas.length) {\n var data = (typeof window.DataJson === 'undefined' || typeof window.DataJson.Data === 'undefined')\n ? []\n : window.DataJson.Data;\n\n map = Core.Map($mapCanvas[0]);\n map.init();\n map.plotMarkers(data);\n }\n },\n\n goTo: function() {\n var item = m.getInState();\n\n (!item.AddressLine1)\n ? map.setState(d.selectedState)\n : map.goTo(item.Latitude, item.Longitude);\n },\n\n initForm: function() {\n var $form = $('.myAccountSupplierInstaller form');\n\n $form.on('submit', function(e) {\n e.preventDefault();\n if ($form.valid()) {\n $.ajax({\n url: $form.attr('action'),\n data: $form.serialize(),\n type: 'POST',\n dataType: 'json',\n success: function (data) {\n var _$validationMessage = $form.find('.frm-validation-msg');\n _$validationMessage.hide();\n\n if (data.Success) {\n window.location.href = data.SuccessUrl;\n }\n else {\n _$validationMessage.html('
' + data.ErrorMessage + '
').show();\n }\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n }\n });\n },\n };\n\n return m;\n})();\n","Core.NewsEvents = {\n Listing: function () {\n Core.NewsEvents.Cache = {\n $newsEventListingItems: $('#newsEventListingItems'),\n $topic: $('#topicFilter'),\n $trialBtn: $('#trial'),\n $groupPrice: $('#groupPrice'),\n $newsEventListing: $('#news-event-listing')\n };\n\n var _isLoading = false,\n _pageNumber = 0,\n _pageLinkId = Core.NewsEvents.Cache.$newsEventListing.data('pageid');\n\n Core.RenderTemplate('#tpl-NewsEventListing', jsonResult, Core.NewsEvents.Cache.$newsEventListingItems);\n\n Core.Cache.$window.scroll(function () {\n if (Core.Cache.$window.scrollTop() + Core.Cache.$window.height() >= Core.Cache.$footer.offset().top && !_isLoading) {\n\n if (jsonResult.ItemCount > 0 && (jsonResult.ItemCount !== Core.NewsEvents.Cache.$newsEventListingItems.children().length)) {\n _isLoading = true;\n Core.ShowPageLoading();\n _pageNumber += 1;\n $.ajax({\n url: '/newsandevents/list',\n data: { pageLinkId: _pageLinkId, topic: Core.NewsEvents.Cache.$topic.val(), pageNumber: _pageNumber },\n type: 'get',\n dataType: 'json',\n success: function (data) {\n var source = $('#tpl-NewsEventListing').html();\n var template = Handlebars.compile(source);\n\n Core.NewsEvents.Cache.$newsEventListingItems.append(template(data));\n _isLoading = false;\n Core.HidePageLoading();\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n }\n }\n });\n\n Core.NewsEvents.Cache.$topic.on('change', function (e) {\n var _topicId = Core.NewsEvents.Cache.$topic.val();\n var url = _topicId === 0 ? '' : '?category=' + _topicId;\n window.location = location.protocol + '//' + location.host + location.pathname + url;\n });\n },\n Details: function () {\n try {\n addthis.init();\n }\n catch (e) { }\n }\n};","/*\n * Notes\n *\n * Accordion states:\n * - white green no tick [to do] (portal-checkout__accordion-item)\n * - green no tick [current] (portal-checkout__accordion-item open)\n * - grey, green tick [done] (portal-checkout__accordion-item collapsible passed)\n * - grey, grey tick [re-do] (portal-checkout__accordion-item open passed)\n *\n */\nCore.PortalAccordion = {\n\tinit: function () {\n Core.PortalAccordion.Cache = {\n $accordionHeading: $('.portal-checkout__accordion-heading')\n }\n\n this.toggleAccordion();\n this.handleReviewEditBtn();\n },\n\n getItem: function(itemId) {\n var item = Array\n .from(Core.PortalAccordion.Cache.$accordionHeading)\n .find(function(item) { return item.parentElement.id === itemId});\n\n !item\n && console.log('Accordion item not found: #' + itemId);\n\n return item;\n },\n\n setToDone: function(itemId) {\n var item = Core.PortalAccordion.getItem(itemId);\n\n item\n && $(item.parentElement).addClass('collapsible passed');\n },\n\n clickItem: function(itemId) {\n var item = Core.PortalAccordion.getItem(itemId);\n\n item\n && Core.PortalAccordion.disableNextAll(item);\n },\n\n toggleAccordion: function () {\n Core.PortalAccordion.Cache.$accordionHeading.on('click', function(e){\n e.preventDefault();\n\n var $heading = $(this),\n $content = $heading.siblings('.portal-checkout__accordion-content'),\n $accordion = $heading.closest('.portal-checkout__accordion-item');\n \n if($accordion.hasClass('collapsible')) {\n if(!$accordion.hasClass('in-animate')) {\n $accordion.addClass('in-animate').toggleClass('open');\n\n ($accordion.hasClass('open'))\n ? $content.slideDown(0)\n : $content.slideUp(0);\n\n // disable current accordion before submit\n Core.PortalAccordion.collapsePrevAll($heading);\n Core.PortalAccordion.disableNextAll($heading);\n\n setTimeout(function(){ \n \t$accordion.removeClass('in-animate'); \n }, 100);\n\n Core.PortalAccordion.scrollToActive();\n }\n } \n });\n },\n\n collapsePrevAll: function(elem) {\n Core.PortalAccordion.collapseGenerator('prevAll')(elem);\n },\n collapseNextAll: function(elem) {\n Core.PortalAccordion.collapseGenerator('nextAll')(elem);\n },\n\n disableNextAll: function (elem, current) {\n var current = current || false;\n \tvar $el = Core.PortalAccordion.getAccordion(elem);\n\n $el.addClass('open').nextAll('.portal-checkout__accordion-item').removeClass(\"collapsible passed open\");\n \n if(current)\n \t$el.removeClass(\"collapsible passed\"); \n \n },\n\n getAccordion: function(elem) {\n return $(elem).hasClass('portal-checkout__accordion-item')\n ? $(elem)\n : $(elem).closest('.portal-checkout__accordion-item');\n },\n\n collapseGenerator: function(action) {\n return function(elem) {\n var $el = Core.PortalAccordion.getAccordion(elem);\n\n $el.addClass('open')[action]('.portal-checkout__accordion-item').removeClass(\"open\");\n }\n },\n\n scrollToActive: function () {\n \t$('html, body').animate({\n\t scrollTop: $(\".portal-checkout__accordion-item.open\").offset().top\n\t }, 500);\n },\n\n handleReviewEditBtn: function() {\n $('#checkoutPayment').on('click', '.reviewSubmit__editBtn', function(e) {\n e.preventDefault();\n var accordionId = $(this).data('accordion-id');\n\n if (accordionId) {\n $(\"#\" + accordionId).find('.portal-checkout__accordion-heading').trigger('click');\n }\n });\n },\n}\n","Core.PortalCheckout = {\n SHOW: 'show',\n REMOVE: 'remove',\n\n init: function () {\n Core.PortalCheckout.Cache = {\n $calendar: $('input.portal-checkout__purchase-calendar'),\n $accordionContent: $('.portal-checkout__accordion-content'),\n $checkoutQuantity: $('.portal-checkout__purchase-column--qty input:visible'),\n $inputQuantity: $(\".portal-checkout__purchase-qty\"),\n $selectUserCheckout: $('.btnSelectUser'),\n $clientDetailRadio: $('.portal-checkout__client-detail--radio input[type=radio]'),\n $shippingCostRadio: $('input[name=\"shippingCostOptions\"]'),\n $btnClientDetails: $('#btnClientDetails'),\n $btnCheckoutSize: $('#frmSaveCart .btn-checkout-size'),\n $hidNewClient: $('#hidNewClient'),\n\n // Hospital Process\n $hospitalLocationDetailsWrap: $('.portal-checkout__accordion-content__hospital-location-details'),\n $hospitalLocationDetails: $('.portal-checkout__location--list-details'),\n };\n\n $(\"input[type=checkbox], input[type=radio]\").uniform();\n\n // cart functions\n this.checkoutCalendar();\n this.initAndChangeNumericTextBox();\n this.removeProductFromCart();\n this.saveCartValidate();\n this.checkCartItem();\n\n // client functions\n this.userCheckoutSelected();\n this.updateUserListDisplay();\n this.saveClientSubmit();\n this.saveClientValidate();\n this.saveConfirmValidate();\n this.saveStaffValidate();\n this.favBtnHandle();\n this.handleBtnSubmit();\n this.handleClientRefrenceNo();\n this.hideClientMissingError();\n\n // Hospital Process\n this.handleHospitalLocationDetails();\n this.listenHomeMod();\n this.initComments();\n \n var stockIntegration = new Core.StockIntegration('checkout');\n stockIntegration.init();\n\n var resizeTimer;\n $(window).on('resize', function (e) {\n clearTimeout(resizeTimer);\n resizeTimer = setTimeout(function () {\n Core.PortalCheckout.updateClassRemove();\n }, 100);\n });\n },\n\n isEmptyCart: function() {\n return ($('#frmSaveCart').text().trim() === 'You do not have any items in your cart');\n },\n\n refreshItems: function() {\n var api = $('#frmSaveCart').data('refreshcartApi');\n\n if (!api) {\n return;\n }\n\n $.get(api, function (response) {\n $('#frmSaveCart').replaceWith(response);\n Core.PortalCheckout.init();\n\n Core.PortalCheckout.isEmptyCart()\n && Core.PortalAccordion.disableNextAll($('#checkoutCart'));\n });\n },\n\n listenHomeMod: function() {\n document.addEventListener('aidacare.home-mod-completed', Core.PortalCheckout.refreshItems);\n },\n\n initComments: function() {\n var btnCheck = Core.CheckoutCommentContinueBtnCheck();\n\n Array\n .from(document.querySelectorAll('[data-comment=\"true\"]'))\n .forEach(function(elem) {\n Core.CheckoutComment(elem, btnCheck).init();\n });\n },\n\n checkoutCalendar: function () {\n Core.PortalCheckout.Cache.$calendar.each(function () {\n var id = this.getAttribute('id');\n\n if (id) {\n if (Core.IsMobile()) {\n //set mobile native datepicker\n Core.PortalCheckout.initNativeDatepicker(this, id);\n } else {\n Core.PortalCheckout.initKendoDatepicker(this, id);\n }\n }\n });\n\n Core.PortalCheckout.setCalendarVal();\n },\n\n //init mobile native datepicker\n initNativeDatepicker: function (input, id) {\n var onChange = function ($this) {\n var $parent = $($this.parents('.inputwrap')[0])\n , $errorWrap = $parent.find('.inputwrap-error')\n , calVal = $this.val();\n\n if ($parent.hasClass('is-required')) {\n if (!calVal) {\n Core.PortalCheckout.insertErrorMsg($errorWrap, \"Required\");\n } else {\n $errorWrap.empty();\n }\n }\n\n //rent, start date handler\n if ($el.hasClass('has-endDate')) {\n var $endDate = $el.parents('.portal-checkout__purchase-column--startdate').siblings('.portal-checkout__purchase-column--enddate').find('input.endDate')\n , minVal = moment(calVal).add(1, 'd')._d;\n $endDate.attr('min', moment(minVal).format('YYYY-MM-DD'));\n }\n\n //rent, end-date handler\n if ($el.hasClass('endDate')) {\n var $startDate = $el.parents('.portal-checkout__purchase-column--enddate').siblings('.portal-checkout__purchase-column--startdate').find('input.startDate')\n , maxVal = moment(calVal).subtract(1, 'd')._d;\n $startDate.attr('max', moment(maxVal).format('YYYY-MM-DD'));\n }\n\n //rent-to-own\n var weekToOwn = $el.data('weekstoown')\n , newWeekToOwn;\n\n if (typeof weekToOwn !== \"undefined\") {\n var $span = $el.closest('tr').find('.portal-checkout__purchase-column--ownby span');\n if (weekToOwn > 0)\n newWeekToOwn = Core.PortalCheckout.weekCalculation(calVal, weekToOwn);\n else\n newWeekToOwn = Core.PortalCheckout.formatDate(calVal);\n\n $span.html(newWeekToOwn);\n }\n\n };\n\n var $el = $(\"#\" + id)\n , today = moment(new Date)\n , elVal = $el.val();\n\n $el.attr('type', 'date');\n $el.attr('min', moment().format('YYYY-MM-DD'));\n if (elVal) {\n //format from server side on loads\n var date = moment(elVal, 'DD/MM/YYYY');\n $el.val(date.format('YYYY-MM-DD'));\n }\n\n $el.on('change blur', function () {\n onChange($(this));\n });\n },\n\n initKendoDatepicker: function (input, id) {\n var isEndDate = input.classList.contains('endDate')\n , today = moment(new Date)\n , $el = $(\"#\" + id)\n , curVal = $el.val();\n\n $el.kendoDatePicker({\n format: \"dd/MM/yyyy\",\n start: Core.PortalCheckout.todayDate(),\n footer: \"\",\n min: isEndDate ? today.add(1, 'd')._d : today._d,\n change: function (e) {\n //use trigger blur so it only called once if calendar input change\n $(this.element).trigger('blur');\n }\n });\n\n //make the input readonly\n $el.prop('readonly', true);\n $el.on('click', function () {\n $(this).data('kendoDatePicker').open();\n });\n\n $el.on('blur', function (e) {\n Core.PortalCheckout.calendarOnBlur($(this));\n });\n },\n\n setCalendarVal: function () {\n Core.PortalCheckout.Cache.$calendar.each(function () {\n var id = this.getAttribute('id')\n , today = moment(new Date)\n , $el = $(\"#\" + id)\n , curVal = $el.val();\n\n var elObj = $el.data('kendoDatePicker');\n if (!Core.IsMobile() && curVal) {\n curVal = Core.IsMobile() ? moment(curVal, \"YYYY-MM-DD\") : moment(curVal, \"D/MM/YYYY\");\n //check if curval less than today\n if (curVal.diff(today) < 0) {\n elObj.value(today.format('DD/MM/YYYY'));\n $el.trigger('blur');\n } else {\n elObj.value(curVal.format('DD/MM/YYYY'));\n }\n }\n });\n },\n\n calendarOnBlur: function ($this) {\n var $parent = $($this.parents('.inputwrap')[0])\n , $errorWrap = $parent.find('.inputwrap-error');\n\n if ($parent.hasClass('is-required')) {\n if (!$this.val()) {\n $this.addClass(\"error\");\n Core.PortalCheckout.insertErrorMsg($errorWrap, \"Required\");\n } else {\n $this.removeClass(\"error\");\n }\n }\n\n //check if date is valid first\n var dateVal = moment($this.val(), 'DD/MM/YYYY', true);\n if ($this.val()) {\n if (!dateVal.isValid()) {\n $this.addClass(\"error\");\n Core.PortalCheckout.insertErrorMsg($errorWrap, \"Invalid date\");\n } else {\n $this.removeClass(\"error\");\n $errorWrap.empty();\n }\n }\n\n Core.PortalCheckout.calendarOnChange($this.data('kendoDatePicker'));\n },\n\n calendarOnChange: function ($this) {\n var $el = $this.element\n , $span = $($el).closest('tr').find('.portal-checkout__purchase-column--ownby span')\n , calVal = $this.value();\n\n if (!calVal) {\n $span.html('');\n return;\n }\n\n //rent, start date handler\n if ($el.hasClass('has-endDate')) {\n var $end = $el.parents('.portal-checkout__purchase-column--startdate').siblings('.portal-checkout__purchase-column--enddate').find('input.endDate');\n var $endDate = $end.data('kendoDatePicker');\n var endVal = moment(calVal).add(1, 'd');\n $endDate.min(endVal._d);\n return;\n }\n\n //rent, end-date handler\n if ($el.hasClass('endDate')) {\n var $start = $el.parents('.portal-checkout__purchase-column--enddate').siblings('.portal-checkout__purchase-column--startdate').find('input.startDate');\n var $startDate = $start.data('kendoDatePicker');\n var maxVal = moment(calVal).subtract(1, 'd');\n $startDate.max(maxVal._d);\n return;\n }\n\n //rent-to-own\n var weekToOwn = $el.data(\"weekstoown\")\n , newWeekToOwn;\n\n if (typeof weekToOwn !== \"undefined\") {\n if (weekToOwn > 0)\n newWeekToOwn = Core.PortalCheckout.weekCalculation(calVal, weekToOwn);\n else\n newWeekToOwn = Core.PortalCheckout.formatDate(calVal);\n\n $span.html(newWeekToOwn);\n }\n },\n\n clearCalendar: function (el) {\n var $errorWrap = $(el).find('.inputwrap-error')\n $(el).data(\"kendoDatePicker\").value(null);\n },\n\n insertErrorMsg: function ($el, txt) {\n $el.empty();\n $el.append($(\"\"));\n },\n\n handleBtnSubmit: function () {\n Core.PortalCheckout.Cache.$btnCheckoutSize.unbind();\n Core.PortalCheckout.Cache.$btnCheckoutSize.on('click', function (e) {\n e.preventDefault();\n var success = true;\n\n var generateErrorTxt = function ($el, txt) {\n Core.PortalCheckout.insertErrorMsg($el, txt);\n success = false;\n };\n\n var currentDate = new Date()\n , dateFormat = Core.IsMobile() ? \"YYYY-MM-DD\" : \"DD/MM/YYYY\";\n currentDate.setHours(0, 0, 0, 0);\n\n $('.rent-row').each(function () {\n var $this = $(this)\n , startObj = $this.find('input.startDate')[0]\n , $start = startObj.value;\n\n if ($start === \"\") {\n startObj.classList.add('error');\n generateErrorTxt($this.find('.start-date-error'), 'Required');\n return;\n } else {\n startObj.classList.remove('error');\n }\n\n var $from = moment($start, dateFormat, true);\n if (!$from.isValid()) {\n generateErrorTxt($this.find('.start-date-error'), 'Invalid date');\n return;\n }\n\n var endObj = $this.find('input.endDate')[0]\n , $end = endObj.value\n , $to = moment($end, dateFormat, true);\n if ($end && !$to.isValid()) {\n endObj.classList.add('error');\n generateErrorTxt($this.find('.end-date-error'), 'Invalid date');\n return;\n } else {\n endObj.classList.remove('error');\n }\n });\n\n $('.rent-own-row').each(function () {\n var $this = $(this)\n , startObj = $this.find('input.startDate')[0]\n , $start = startObj.value;\n if ($start === \"\") {\n startObj.classList.add('error');\n generateErrorTxt($this.find('.start-date-error'), 'Required');\n return;\n } else {\n startObj.classList.remove('error');\n }\n\n var $from = moment($start, dateFormat, true);\n if (!$from.isValid()) {\n generateErrorTxt($this.find('.start-date-error'), 'Invalid date');\n return;\n }\n });\n\n //go to first error\n var $error = $('.inputwrap-error label.error');\n if ($error.length > 0) {\n var offset = Core.IsMobile() ? 80 : 50;\n var scrollTop = $error.first().offset().top - offset;\n Core.ScrollToView(scrollTop);\n }\n\n if (success)\n $('#frmSaveCart').trigger('submit');\n });\n },\n\n getDynamicPrice: function(sku, qty) {\n // var url = 'https://run.mocky.io/v3/cc977cc6-69b0-4f0e-93a2-abe7e32a6586';\n var url = '/cart/getpricebyquantity';\n var data = { \"sku\": sku, \"qty\": qty };\n return $.post(url, data);\n },\n\n initAndChangeNumericTextBox: function () {\n function getSku(elem) {\n var inputCodeName = $(elem).attr('name');\n var sku = $('[name=\"' + inputCodeName.replace('Quantity', 'Code') + '\"]').val();\n\n return sku;\n }\n\n function setPrice(elem, newPrice) {\n $(elem).attr('price', newPrice);\n }\n\n function setLabelPrice(sku, newLabel) {\n $('[data-price-label=\"' + sku + '\"]').text(newLabel);\n }\n\n function onChangeQty() {\n var self = this;\n var elem = this.element;\n var sku = getSku(elem);\n var isDynamic = $(elem).data('dynamicPrice') || false;\n var qty = $(elem).val();\n\n // force to have value '1' if input is blank\n if (!qty) {\n qty = 1;\n this.value(1);\n }\n\n if (! isDynamic) {\n Core.PortalCheckout.updateTotalAndSubtotal(self);\n return;\n }\n\n Core.PortalCheckout.getDynamicPrice(sku, qty)\n .done(function(data) {\n if (data == null) {\n return;\n }\n\n data.unitPriceLabel\n && setLabelPrice(sku, data.unitPriceLabel);\n\n data.unitPrice\n && setPrice(elem, data.unitPrice);\n })\n .always(function() {\n Core.PortalCheckout.updateTotalAndSubtotal(self);\n });\n\n // check stock\n if (!!$('#portal-checkout').data('check-local-stock-api')) { \n var stockIntegration = new Core.StockIntegration('checkout');\n stockIntegration.updateStock(false, $(elem).closest('.portal-checkout__row'));\n }\n }\n\n Core.PortalCheckout.Cache.$inputQuantity.kendoNumericTextBox({\n min: 1,\n format: \"#\",\n decimals: 0,\n step: 1,\n change: onChangeQty,\n spin: onChangeQty\n });\n },\n\n /**\n * Show or remove the confirmation remove message.\n * This allow the user to stop the remove action.\n *\n * @param {jquery} $row - the row to attach or remove the message\n * @param {string} doShow Core.PortalCheckout.SHOW || .Core.PortalCheckout.REMOVE\n */\n showRemoveMessage: function ($row, doShow) {\n doShow = doShow === Core.PortalCheckout.SHOW; //set default to true\n\n if (doShow) {\n var removeMsgTmpl = '

This item has been removed from your cart.

';\n $row.find('td:first-child').append(removeMsgTmpl);\n $row.addClass('on-removed');\n } else {\n $row.find('.removeMessage').remove();\n $row.removeClass(function (index, css) {\n return (css.match(/(^|\\s)rorcls\\S+/g) || []).join(' ');\n });\n $row.removeClass('on-removed');\n }\n\n Core.PortalCheckout.updateClassRemove();\n },\n\n updateClassRemove: function () {\n var elements = $('tr.on-removed');\n\n // add new class name\n var cssStyleshets = [];\n for (var a = 0; a < elements.length; a++) {\n var el = $(elements[a]);\n var elHeight = el.outerHeight() / 2;\n el.addClass(\"rorcls-\" + a);\n cssStyleshets.push(\".rorcls-\" + a.toString() +\n \" .removeMessage{ height:\" + elHeight +\n \"px !important; top:\" + el.position().top +\n \"px; padding-top:\" + (elHeight - 10) +\n \"px !important; padding-bottom:10px !important;}\");\n }\n // remove existing stylesheets\n $('#overlayElementsStyles').remove();\n // add new stylesheets\n if (elements.length > 0) {\n $('').appendTo($('head'));\n }\n },\n\n /*\n\n After deleting a item on the cart check if there are\n still items that make the cart valid.\n\n Eg: if i've got only a service eg home modification\n doesn't make sense to have shipping which is\n stricly product related.\n\n to debug:\n document\n .addEventListener(\n 'aidacare.is-invalid-shipping',\n () => console.log('invalid shipment'))\n\n @event aidacare.is-invalid-shipping\n @var response\n @see response from ore.PortalCheckout.deleteItem\n\n */\n propagateIsInvalidShipping: function(response) {\n var dispatchInvalidShipping = function() {\n var custEvent = new CustomEvent('aidacare.is-invalid-shipping');\n document.dispatchEvent(custEvent);\n };\n\n var isInvalidShipping = function() {\n return response\n && response.IsInvalidShipping\n && response.IsInvalidShipping.toString().toLowerCase().trim() === 'true';\n }\n\n isInvalidShipping()\n && dispatchInvalidShipping();\n },\n\n removeProductFromCart: function () {\n $('.portal-checkout__purchase-remove').unbind('click');\n $('.portal-checkout__purchase-remove').on('click', function (e) {\n e.stopPropagation();\n\n var $el = $(this);\n var btnNext = document.querySelector('.btn-checkout-size');\n var $row = $el.closest(\"tr\");\n var $qtyInput = $row.find('input.portal-checkout__purchase-qty[type=text]:visible');\n var $hiddenQty = $row.find('input.portal-checkout__purchase-qty[type=text][id*=\"__Quantity\"]');\n\n $row.addClass('on-removed');\n $hiddenQty.data('default-qty', $qtyInput.val());\n\n Core.PortalCheckout.showRemoveMessage($row, Core.PortalCheckout.SHOW);\n btnNext.disabled = true;\n\n var doRemoveItem = function () {\n var id = $row.attr('data-id');\n Core.PortalCheckout.deleteItem(id, function (response) {\n Core.PortalCheckout.propagateIsInvalidShipping(response);\n\n // remove item from flyout\n var $rowFlyOut = $('#cart-playout').find('tr.table-yourcart-row-item[data-id=' + id + ']');\n Core.FlyoutButtons.removeItemRow($rowFlyOut);\n\n Core.PortalCheckout.refreshItems();\n });\n };\n\n var executeRemove = setTimeout(function () {\n //remove item\n doRemoveItem();\n\n //hide removeMessage\n Core.PortalCheckout.showRemoveMessage($row, Core.PortalCheckout.REMOVE);\n }, 2000);\n\n $row.find('.btn-undo').on('click', function () {\n //cancel out delete item\n clearTimeout(executeRemove);\n Core.PortalCheckout.showRemoveMessage($row, Core.PortalCheckout.REMOVE);\n btnNext.disabled = false;\n });\n });\n },\n\n removeItemRow: function ($row) {\n //remove item row\n var $wrap = $row.closest('.portal-checkout__purchase-item');\n $row.remove();\n\n //if there's no item left, delete whole section (buy, rent, or rent-to-own)\n if ($wrap.find('tr.portal-checkout__row').length === 0) {\n $wrap.remove();\n\n //remove total summary\n if ($('.buy-row').length === 0) $('.portal-checkout__purchase-shipping-summary--value-buy').parent().remove();\n if ($('.rent-row').length === 0) $('.portal-checkout__purchase-shipping-summary--value-rent').parent().remove();\n if ($('.rent-own-row').length === 0) $('.portal-checkout__purchase-shipping-summary--value-renttoown').parent().remove();\n }\n\n Core.PortalCheckout.checkCartItem();\n },\n\n calculateRow: function (inpObj) {\n var elem = $(inpObj.element);\n var price = elem.attr('price') || 0;\n\n return price * inpObj._value;\n },\n\n //calculate sub-total per section (buy, rent, or rent-to-own)\n //inpObj's value could be tableId (buy, rent, or rent-to-own)\n calculateSection: function (el) {\n var $parent = $(el).hasClass('portal-checkout__purchase-table') ? el : $(el.element);\n //var $parent = elem;\n if (!$parent.hasClass('portal-checkout__purchase-table')) {\n $parent = $parent.closest('.portal-checkout__purchase-table');\n }\n\n var $quantities = $parent.find('input.portal-checkout__purchase-qty[type=text][id*=\"__Quantity\"]')\n , amount = 0;\n\n for (var i = 0; i < $quantities.length; i++) {\n var $el = $($quantities[i])\n , qty = $el.closest('.portal-checkout__purchase-column').find('input[type=\"text\"].portal-checkout__purchase-qty:visible').val() || 0\n , price = $el.attr('price');\n\n amount += (price * qty);\n };\n\n return amount;\n },\n\n //update text total per row and subtotal per section\n updateTotalAndSubtotal: function (inpObj) {\n var elem = $(inpObj.element);\n var _self = Core.PortalCheckout\n , $col = elem.closest('.portal-checkout__purchase-column')\n , $subTotalHTML = $col.siblings('.portal-checkout__purchase-column--subtotal').find('span')\n , rowTotal = _self.formatMoney(_self.calculateRow(inpObj), 2, '$', ',', '.');\n\n $subTotalHTML.html(rowTotal);\n\n var $parents = elem.closest('.portal-checkout__purchase-table')\n , $totalHTML = $parents.find('.portal-checkout__purchase-totalprice span')\n , summaryTotal = _self.formatMoney(_self.calculateSection(inpObj), 2, '$', ',', '.');\n\n $totalHTML.html(summaryTotal);\n\n if ($parents.attr('id') == \"table-purchaseitems\") {\n $('.portal-checkout__purchase-shipping-summary--value-buy span').html(summaryTotal);\n }\n\n if ($parents.attr('id') == \"table-rentitems\") {\n $('.portal-checkout__purchase-shipping-summary--value-rent span').html(summaryTotal + \"/week\");\n }\n\n if ($parents.attr('id') == \"table-renttoownitem\") {\n $('.portal-checkout__purchase-shipping-summary--value-renttoown span').html(summaryTotal + \"/week\");\n }\n\n _self.updateAmountToBePaid();\n },\n\n //update Amount to be paid now\n updateAmountToBePaid: function () {\n var _self = Core.PortalCheckout\n , $tblPurchase = $('#table-purchaseitems')\n , $tblRent = $('#table-rentitems')\n , $tblRentOwn = $('#table-renttoownitem')\n , amount = 0;\n\n if ($tblPurchase.length) amount += _self.calculateSection($tblPurchase);\n if ($tblRent.length) amount += _self.calculateSection($tblRent);\n if ($tblRentOwn.length) amount += _self.calculateSection($tblRentOwn);\n\n $('#spnBuyTotal').html(_self.formatMoney(amount, 2, '$', ',', '.'));\n },\n\n deleteItem: function (id, successCb) {\n Core.ShowPageLoading();\n var postcode = \"\";\n var org = \"\";\n\n $.ajax({\n type: \"GET\",\n url: '/Cart/removefromcart',\n data: {\n code: id,\n postcode: postcode,\n organization: org,\n hideFreight: false,\n orderOrganization: \"\",\n therapistID: \"\"\n },\n success: function (response) {\n Core.CartFlyout.init();\n if (successCb) successCb(response);\n Core.HidePageLoading();\n },\n error: function (xhr, ajaxOptions, thrownError) {\n //todo: do something\n Core.HidePageLoading();\n }\n });\n },\n\n userCheckoutSelected: function () {\n $('.btnSelectUser').on('click', function () {\n\n var $el = $(this),\n $parent = $el.closest('tr'),\n $wrap = $el.closest('table');\n\n if (!$parent.hasClass('selected')) {\n $wrap.find('tr.selected').removeClass('selected');\n $parent.addClass('selected');\n }\n\n $(\"#AddNewClientContent\").slideDown();\n });\n },\n\n updateExistingClientAddNewClientRadio: function(radioName) {\n Array\n .from(document.querySelectorAll('[name=clientDetailRadio]'))\n .forEach(function(itm) {\n itm.checked = (itm.value === radioName);\n })\n\n $('[name=clientDetailRadio]').uniform();\n },\n\n hideClientMissingError: function() {\n $(\"#clientMissingError\").html('');\n $(\"#clientMissingError\").hide();\n },\n\n updateUserListDisplay: function () {\n Core.PortalCheckout.Cache.$clientDetailRadio.unbind();\n Core.PortalCheckout.Cache.$clientDetailRadio.on('change', function () {\n var $el = $(this),\n $label = $el.closest('.portal-checkout__client-detail--radio'),\n $content = $label.siblings('.portal-checkout__client-detail--content'),\n $hiddenValNewClient = $('#hidNewClient');\n\n if ($el.val() === \"Add New Client\") {\n $hiddenValNewClient.attr(\"value\", \"true\");\n $('#divSearchContact').slideUp();\n $('#divClientDetails').slideDown();\n $(\"#frmClientRefNo\").find(\"#ContactID\").val('');\n Core.PortalCheckout.resetForm($('#AddNewClientContent').find('form'));\n }\n else {\n $hiddenValNewClient.attr(\"value\", \"false\");\n $('#divSearchContact').slideDown();\n $('#divClientDetails').slideUp(0);\n }\n\n\n if ($('#ClientReferenceNumber').val() == \"\") {\n $('#checkOutClientDetailsReadonly').find('input[type=\"text\"],input[type=\"email\"], input[type=\"tel\"], textarea').prop('readonly', true);\n $('#checkOutClientDetailsReadonly').find('#DVADOB, #DVADOD').prop('disabled', true);\n $('#checkOutClientDetailsReadonly').find('input[type=\"checkbox\"], input[type=\"radio\"]').prop('disabled', true).uniform();\n $(\"#ClientReferenceNumber\").prop('readonly', false);\n\n // Comment out dropdown select cause we don't use state dropdown anymore.\n // $('#checkOutClientDetailsReadonly').find('select').prop('disabled', true);\n // $('#checkOutClientDetailsReadonly').find('select').each(function(index, elem) {\n // $(elem).data(\"kendoDropDownList\")\n // && ( $(elem).data(\"kendoDropDownList\").enable(false)\n // , $(elem).data(\"kendoDropDownList\").value(''));\n // });\n // $('#checkOutClientDetailsReadonly').find('select').data(\"kendoDropDownList\").enable(false);\n }\n\n Core.PortalCheckout.hideClientMissingError();\n $(\"#clientRefrenceNumberError\").html('');\n\n Core.PortalCheckout.updateExistingClientAddNewClientRadio($el.val());\n });\n },\n\n resetForm: function ($form) {\n $form.find('input:text, input:password, input[type=tel], input[type=email], select, textarea').val('');\n $form.find('input:radio, input:checkbox')\n .prop('checked', false).prop('selected', false);\n },\n\n saveClientSubmit: function () {\n $(\"#btnClientDetails\").unbind();\n $(\"#btnClientDetails\").on('click', function (e) {\n var behalf = $('[data-id=\"onBehalfOrganization\"]').val();\n $('#OnBehalfOrganization').val(behalf);\n\n if ($(\"#hidSelectedContactID\").val() === \"\" && $(\"[name= clientDetailRadio][value='Existing Client']\").is(\":checked\")) {\n\n if (!$(\".existingClientSearch\").find(\".error\").length) {\n $(\".existingClientSearch\").append(\"\");\n Core.PortalCheckout.hideClientMissingError();\n }\n\n $(\"html, body\").animate({ scrollTop: $(\"[name= clientDetailRadio]\").offset().top - 30 }, 300);\n e.preventDefault();\n }\n else if ($(\"#divClientDetails:visible\").length === 0) {\n\n $(\"#clientMissingError\").html(\"Please add client\");\n $(\"#clientMissingError\").show();\n $(\"html, body\").animate({ scrollTop: $(\"[name= clientDetailRadio]\").offset().top - 30 }, 300);\n e.preventDefault();\n }\n // TODO: validate autocomplete\n else {\n\n if ($(\".existingClientSearch\").find(\".error\").length) {\n $(\".existingClientSearch .error\").remove();\n }\n Core.PortalCheckout.hideClientMissingError();\n\n var isSaveContactValid = $('#frmSaveContact').valid();\n var isSaveStaffValid = $('#frmSaveStaff').valid();\n\n // STR -- DVA ERAP validation\n\n var isDVAValid = Core.DVAInformation.isValid({\n dvaCardType: \"#DVACardType\",\n dvaDOB: \"#DVADOB\",\n dvaRCF: \"#yes_rcf\",\n\n dvaFundingOther: '#yes_DVAFundingOther',\n dvaFundingOtherType: '#DVAFundingOtherType',\n\n // dvaADL: \"#DVAActivityOfDailyLiving\",\n // dvaBEH: \"#DVABehaviour\",\n // dvaCHC: \"#DVAComplexHealthCare\"\n });\n\n var isDVADischargedValid = Core.DVAInformation.isValidDischarged({\n dvaDOD: \"#DVADOD\",\n dvaHospitalDischarge: \"#DVAHospitalDischarge\",\n });\n\n // END -- DVA ERAP validation\n\n\n if (isSaveStaffValid && isDVAValid && isDVADischargedValid) {\n $(\"#frmSaveContact\").trigger('submit');\n $(\"#frmSaveStaff\").trigger('submit');\n }\n }\n });\n },\n\n saveConfirmSubmit: function () {\n $(\"#btnConfirmDetails\").unbind();\n $(\"#btnConfirmDetails\").on('click', function (e) {\n if ($('#frmConfirmOrder').valid() && $('#frmConfirmOrder').valid()) {\n $(\"#frmConfirmOrder\").trigger('submit');\n }\n });\n },\n\n saveCartValidate: function () {\n $(\"#frmSaveCart\").validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n success = true;\n else {\n $(\"div.validation-summary-errors\").html('');\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n },\n 300);\n }\n }\n });\n },\n\n saveClientValidate: function () {\n $(\"#frmSaveContact\").validate({\n ignore: ':hidden',\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n if (!validator.numberOfInvalids())\n success = true;\n // scroll to view handled on DVAInformation.js\n // else {\n // $(\"div.validation-summary-errors\").html('');\n // $('html, body').animate({\n // scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n // }, 300);\n // }\n }\n });\n },\n\n saveConfirmValidate: function () {\n $(\"#frmConfirmOrder\").validate({\n ignore: ':hidden',\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n success = true;\n else {\n $(\"div.validation-summary-errors\").html('');\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n },\n 300);\n }\n }\n });\n },\n\n saveStaffValidate: function () {\n $(\"#frmSaveStaff\").validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n success = true;\n else {\n $(\"div.validation-summary-errors\").html('');\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n },\n 300);\n }\n }\n });\n },\n\n triggerCheckout: function () {\n Core.PortalCheckout.Cache.$btnCheckoutSize.unbind();\n Core.PortalCheckout.Cache.$btnCheckoutSize.on('click', function (e) {\n e.preventDefault();\n if ($('.futureDate').val() === \"\") {\n $('.futureDate').closest('.form-input').append(\"\");\n return false;\n }\n var currentDate = new Date();\n var selectedDate = new Date($('.futureDate').val());\n\n if (selectedDate < currentDate) {\n $('.futureDate').closest('.form-input').append(\"\");\n return false;\n }\n });\n },\n\n showNotificationPopup: function (popupLabel, contentText, type) {\n var typeClass;\n\n switch (type) {\n case \"warning\":\n typeClass = \"warning-popup-content\";\n break;\n case \"error\":\n typeClass = \"error-popup-content\";\n break;\n case \"valid\":\n typeClass = \"valid-popup-content\";\n break;\n default:\n typeClass = false;\n break;\n }\n\n var kendoWindow = $(\"
\").kendoWindow({\n actions: [\"Close\"],\n title: popupLabel,\n resizable: false,\n modal: true,\n deactivate: function () {\n this.destroy();\n }\n });\n\n var template = kendo.template($(\"#notificationTemplate\").html());\n\n kendoWindow.data(\"kendoWindow\")\n .content(template(contentText))\n .center().open();\n\n if (typeClass != false) {\n kendoWindow\n .parent()\n .addClass(typeClass)\n .end();\n }\n\n kendoWindow\n .find(\".btnNotifOk\")\n .on('click', function () {\n kendoWindow.data(\"kendoWindow\").close();\n })\n .end();\n },\n\n todayDate: function () {\n var today = new Date();\n var dd = today.getDate();\n var mm = today.getMonth() + 1;\n var yyyy = today.getFullYear();\n\n if (dd < 10) {\n dd = '0' + dd;\n }\n if (mm < 10) {\n mm = '0' + mm;\n }\n var today = dd + '/' + mm + '/' + yyyy;\n return today;\n },\n\n weekCalculation: function (date, weeks) {\n var newdate = new Date(date);\n var numOfDays = weeks * 7;\n newdate.setDate(newdate.getDate() + numOfDays);\n return ('0' + newdate.getDate()).slice(-2) + \"/\" + ('0' + (newdate.getMonth() + 1)).slice(-2) + \"/\" + newdate.getFullYear();\n },\n\n formatDate: function (date) {\n function pad(s) { return (s < 10) ? '0' + s : s; }\n var d = new Date(date);\n return [pad(d.getDate()), pad(d.getMonth() + 1), d.getFullYear()].join('/');\n },\n\n formatMoney: function (number, places, symbol, thousand, decimal) {\n number = number || 0;\n places = !isNaN(places = Math.abs(places)) ? places : 2;\n symbol = symbol !== undefined ? symbol : \"$\";\n thousand = thousand || \",\";\n decimal = decimal || \".\";\n var negative = number < 0 ? \"-\" : \"\",\n i = parseInt(number = Math.abs(+number || 0).toFixed(places), 10) + \"\",\n j = (j = i.length) > 3 ? j % 3 : 0;\n return symbol + negative + (j ? i.substr(0, j) + thousand : \"\") + i.substr(j).replace(/(\\d{3})(?=\\d)/g, \"$1\" + thousand) + (places ? decimal + Math.abs(number - i).toFixed(places).slice(2) : \"\");\n },\n\n disabledButton: function (button) {\n $(button).addClass('disabled').prop('disabled', true);\n },\n\n enabledButton: function (button) {\n $(button).removeClass('disabled').prop('disabled', false);\n },\n\n checkCartItem: function () {\n //check if any iten exist, if not grey out continue button\n if ($('.portal-checkout__row').length === 0) {\n $('#frmSaveCart .btn-checkout-size').prop('disabled', true);\n } else {\n $('#frmSaveCart .btn-checkout-size').prop('disabled', false);\n }\n },\n\n favBtnHandle: function () {\n $('.portal-checkout__purchase-favourite').unbind('click');\n $('.portal-checkout__purchase-favourite').on('click', function () {\n Core.PortalCheckout.favouriteItem($(this).children(), function (response) {\n console.log(response);\n });\n });\n },\n\n favouriteItem: function ($btnFav, successCb) {\n Core.ShowPageLoading();\n var _$this = $btnFav,\n _$item = _$this.parents('tr'),\n _isFavourite = _$this.hasClass('icon-cart-fav'),\n $errorBox = $('#divCart .portal-error');\n\n var _apiUrl = _isFavourite ? '/cart/removefromfavourites' : '/cart/addtofavourites';\n\n $.ajax({\n url: _apiUrl,\n data: { code: _$item.data('id') },\n type: 'get',\n dataType: 'json',\n success: function (data) {\n if (data.WasSuccess) {\n Core.ShowErrorMessage($errorBox, null, false);\n\n if (_isFavourite) {\n _$this.removeClass('icon-cart-fav').addClass('icon-fav');\n _$this.parent().removeClass('active').attr('title', Core.Config.FavouriteText.Add);\n }\n else {\n _$this.removeClass('icon-fav').addClass('icon-cart-fav');\n _$this.parent().addClass('active').attr('title', Core.Config.FavouriteText.Remove);\n }\n } else {\n Core.ShowErrorMessage($errorBox, {\n title: Core.Config.FavouriteText.ErrorTitle,\n message: data.Result\n });\n }\n\n if (successCb) successCb(data);\n Core.HidePageLoading();\n },\n error: function (xhr, status, error) {\n Core.ShowErrorMessage($errorBox, {\n title: Core.Config.FavouriteText.ErrorTitle,\n message: [\n xhr.responseText,\n \"Status: \" + xhr.status,\n \"Error: \" + error\n ]\n });\n Core.HidePageLoading();\n }\n });\n },\n\n /*\n\n @TODO remove after integration Core.PortalCheckoutClientSearch\n\n */\n handleSelectClient: function () {\n $('#clientDetailListTable .pccdlt-row').on('click', function (e) {\n var form = $(this).find('.pccdlt-acts form');\n $(form).trigger('submit');\n });\n },\n\n handleClientRefrenceNo: function () {\n $('#ClientRefNo').on('change', function (e) {\n $(\"#frmClientRefNo\").trigger('submit');\n });\n },\n\n\n /**\n\n\n Hospital Location Details\n\n\n */\n\n handleHospitalLocationDetails: function () {\n function isNull(el) {\n return !(el.html() + '').trim();\n }\n\n function getLocationData(locationID) {\n return (typeof window.hospitalLocationsData[locationID] !== 'undefined')\n ? window.hospitalLocationsData[locationID]\n : { name: '-', addr: '-', suburb: '-', state: '-', postcode: '-'};\n }\n\n function updateLocationDetailsForm(data) {\n details.find('#locationAddr').val(data.addr);\n details.find('#locationSuburb').val(data.suburb);\n details.find('#locationPostcode').val(data.postcode);\n\n details.find('#locationState').val(data.state);\n\n details.find('#locationState').data(\"kendoDropDownList\") &&\n details.find('#locationState').data(\"kendoDropDownList\").value(data.state);\n }\n\n function updateLocationDetails(val) {\n var data = getLocationData(val);\n\n updateLocationDetailsForm(data);\n }\n\n function onLocationChange(e) {\n updateLocationDetails(e.currentTarget.value);\n }\n\n var wrap = Core.PortalCheckout.Cache.$hospitalLocationDetailsWrap;\n var select = wrap.find('#LocationDetails');\n var details = Core.PortalCheckout.Cache.$hospitalLocationDetails;\n var pageLoadValue = select.val();\n\n if (isNull(wrap) || ! window.hospitalLocationsData) {\n return;\n }\n\n select.on('change', onLocationChange);\n\n pageLoadValue\n && updateLocationDetails(pageLoadValue);\n },\n};\n\nCore.PortalCheckoutTermsAndConditions = {\n init: function () {\n Core.PortalCheckoutTermsAndConditions.Cache = {\n $termAndConditionLink: $('.termAndConditionPopup'),\n $btnContinueShipping: $('#btnContinueShipping'),\n $btnAgreeShippingPopup: $('#btnAgreeShippingPopup'),\n $btnCancelPopup: $('#btnCancelShippingPopup'),\n $termsCheckbox: $('#termsAndConditionsCheckbox'),\n $btnPay: $('#btnPayNow'),\n $poNumber: $('.poNumber'),\n $formPayment: $('#frmConfirmOrder')\n };\n\n this.setPopup();\n this.handleTacCheckbox();\n this.handlePOChange();\n this.btnAgreeClickHandle();\n this.btnCancelClickHandle();\n this.btnSubmitHandle();\n },\n\n btnAgreeClickHandle: function () {\n Core.PortalCheckoutTermsAndConditions.Cache.$btnAgreeShippingPopup.on('click', function (e) {\n e.stopPropagation();\n Core.PortalCheckoutTermsAndConditions.checkTacCheckbox(true);\n Core.PortalCheckoutTermsAndConditions.showPopup($('#tacPopup'), false);\n });\n },\n\n btnCancelClickHandle: function () {\n Core.PortalCheckoutTermsAndConditions.Cache.$btnCancelPopup.on('click', function (e) {\n e.stopPropagation();\n Core.PortalCheckoutTermsAndConditions.checkTacCheckbox(false);\n Core.PortalCheckoutTermsAndConditions.showPopup($('#tacPopup'), false);\n });\n },\n\n handleTacCheckbox: function () {\n Core.PortalCheckoutTermsAndConditions.Cache.$termsCheckbox.on('change', function (e) {\n //keep chekbox unchanged\n var isChecked = this.checked;\n this.checked = !isChecked;\n $.uniform.update('#termsAndConditionsCheckbox');\n\n Core.PortalCheckoutTermsAndConditions.showPopup($('#tacPopup'), true);\n });\n },\n\n checkTacCheckbox: function (isSelected) {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n _self.Cache.$termsCheckbox.prop('checked', isSelected);\n _self.Cache.$btnContinueShipping.prop('disabled', !isSelected);\n $.uniform.update('#termsAndConditionsCheckbox');\n\n (_self.isPONumberRequired() && ! _self.isPONumberValid())\n ? _self.enablePayBtn(false)\n : _self.enablePayBtn(isSelected);\n },\n\n isPONumberRequired: function() {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n return _self.Cache.$poNumber &&\n _self.Cache.$poNumber.prop('required');\n },\n\n isPONumberValid: function() {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n return _self.Cache.$poNumber &&\n _self.Cache.$poNumber.val().length > 0;\n },\n\n /**\n * If the T&C section is present then use it during validation.\n *\n * Comunity portal for eg. doesn't have T&C.\n *\n * @return Boolean\n */\n isTermChecked: function() {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n return (_self.Cache.$termsCheckbox.length > 0)\n ? _self.Cache.$termsCheckbox.prop('checked')\n : true;\n },\n\n handlePOChange: function() {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n _self.Cache.$poNumber &&\n _self.Cache.$poNumber.keyup(function() {\n var invalidPO = (_self.isPONumberRequired() && ! _self.isPONumberValid());\n var invalidCheck = !_self.isTermChecked();\n\n (invalidPO || invalidCheck)\n ? _self.enablePayBtn(false)\n : _self.enablePayBtn(true);\n });\n },\n\n enablePayBtn: function (doEnable) {\n $('#btnPayNow').prop('disabled', !doEnable);\n\n if (typeof doEnable === \"undefined\" || doEnable === null) {\n doEnable = true;\n }\n\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n if (doEnable) _self.Cache.$btnPay.removeClass('disabled').prop('disabled', false);\n else _self.Cache.$btnPay.addClass('disabled').prop('disabled', true);\n },\n\n initPopup: function ($popup, title) {\n var _self = Core.PortalCheckoutTermsAndConditions;\n var _width = 660, //Core.Config.CartNotification.Width,\n _height = 350;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n $popup.kendoWindow({\n title: title,\n width: _width,\n //height: _height,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap',\n animation: false,\n });\n\n var $closeBtn = $popup.find('.portal-modal__btn-close');\n\n if ($closeBtn) {\n $closeBtn.on('click', function () {\n _self.showPopup($popup, false);\n });\n }\n },\n\n showPopup: function ($popup, doShow) {\n doShow = doShow == undefined || null ? true : doShow; //set default to true/show\n\n var popupWindow = $popup.data(\"kendoWindow\");\n popupWindow.wrapper.addClass('k-window-custom');\n\n if (doShow) {\n popupWindow.center().open();\n } else {\n popupWindow.close();\n }\n },\n\n setPopup: function () {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n _self.initPopup($('#tacPopup'), \"TERMS & CONDITIONS\");\n _self.initPopup($('#cardChangePopup'), \"PAYMENT CONFIRMATION\");\n\n _self.Cache.$termAndConditionLink.on('click', function (e) {\n e.preventDefault();\n Core.PortalCheckoutTermsAndConditions.showPopup($('#tacPopup'), true);\n });\n },\n\n checkDateValid: function () {\n var today = moment();\n var $selMonth = $('#paymentExpDate').data('kendoDropDownList');\n var $selYear = $('#paymentExpYear').data('kendoDropDownList');\n var selectedDate = moment($selYear.value() + '-' + $selMonth.value() + '-' + '01', 'YY-MM-DD');\n var isValid = selectedDate.isSameOrAfter(today, 'month');\n\n if (isValid) {\n $selMonth.wrapper && $selMonth.wrapper[0].classList.remove('error');\n $selYear.wrapper && $selYear.wrapper[0].classList.remove('error');\n $('#paymentExpError').addClass('hidden');\n }\n else {\n $selMonth.wrapper && $selMonth.wrapper[0].classList.add('error');\n $selYear.wrapper && $selYear.wrapper[0].classList.add('error');\n $('#paymentExpError').removeClass('hidden');\n }\n\n return isValid;\n },\n\n btnSubmitHandle: function () {\n var _self = Core.PortalCheckoutTermsAndConditions;\n\n _self.Cache.$btnPay.on('click', function (e) {\n e.preventDefault();\n var isCreditCard = $('input[name=\"checkoutPaymentMethod\"]:checked').val() === \"CreditCard\";\n\n if (!isCreditCard) {\n _self.Cache.$formPayment.trigger('submit');\n } else {\n var isDateValid = _self.checkDateValid();\n if (_self.Cache.$formPayment.valid() && isDateValid) {\n _self.showPopup($('#cardChangePopup'), true);\n } else {\n //go to first error\n var $error = $('.portal-checkout__cc-details input.error');\n if ($error.length > 0) {\n var offset = Core.IsMobile() ? 80 : 50;\n var scrollTop = $error.first().offset().top - offset;\n Core.ScrollToView(scrollTop);\n }\n }\n }\n\n });\n\n $('#btnAgreeCardChange').on('click', function () {\n _self.Cache.$formPayment.trigger('submit');\n //show error box\n });\n }\n};\n\nCore.PortalCheckoutCheckboxToggle = {\n init: function () {\n Core.PortalCheckoutCheckboxToggle.Cache = {\n $toggleCbTrigger: $('#divClientDetails .toggle-cb-trigger')\n }\n\n this.handleToggleCheckbox();\n this.checkCheckbox();\n },\n\n handleToggleCheckbox: function () {\n Core.PortalCheckoutCheckboxToggle.Cache.$toggleCbTrigger.on('click', function () {\n Core.PortalCheckoutCheckboxToggle.toggleCheckbox($(this));\n });\n },\n\n toggleCheckbox: function ($el, cb) {\n var $targetName = $el.attr(\"id\"),\n $targetTrigger = $el.find('input[type=\"checkbox\"]'),\n $targetContent = $('div[data-toggle=\"' + $targetName + '\"]'),\n isChecked = $targetTrigger.is(':checked');\n\n if (isChecked) {\n $targetContent.slideDown();\n } else {\n $targetContent.slideUp();\n Core.PortalCheckoutCheckboxToggle.clearForm($targetContent);\n }\n\n if (cb) cb(isChecked);\n },\n\n clearForm: function ($el) {\n $el.find(':input').each(function () {\n switch (this.type) {\n case 'password':\n case 'text':\n case 'textarea':\n case 'file':\n case 'select-multiple':\n case 'date':\n case 'number':\n case 'tel':\n case 'email':\n $(this).val('');\n break;\n case 'checkbox':\n case 'radio':\n this.checked = false;\n break;\n case 'select-one':\n var kDropdown = $(this).data(\"kendoDropDownList\");\n if (kDropdown) kDropdown.select(0);\n else $(this).prop('selectedIndex', 0);\n break;\n }\n });\n },\n\n checkCheckbox: function () {\n Core.PortalCheckoutCheckboxToggle.Cache.$toggleCbTrigger.each(function () {\n var $el = $(this),\n $targetName = $el.attr(\"id\"),\n $targetTrigger = $el.find('input[type=\"checkbox\"]'),\n $targetContent = $('div[data-toggle=\"' + $targetName + '\"]'),\n isChecked = $targetTrigger.is(':checked');\n\n if (isChecked) $targetContent.show();\n else $targetContent.hide();\n });\n\n }\n};\n\nCore.PortalCheckoutToggleRadioContent = {\n resetRadio: function ($radio) {\n var radioList = \".portal-radio__listbox-options-item\";\n $radio.parents('.portal-checkout__listbox-options').find(radioList).removeClass('is-selected');\n $radio.parents(radioList).addClass('is-selected');\n },\n\n //clicking on the box\n handleRadioClick: function ($radioWrap) {\n $radioWrap.on('click', function (e) {\n if (e.target.getAttribute('type') == 'radio') return;\n\n var $this = $(this)\n , $radioGroup = $this.find('.toggle-radiogroup-content')\n , radioName = $radioGroup.prop('name');\n\n $radioGroup.trigger('change');\n $('input[name=\"' + radioName + '\"]').prop('checked', false); //unchecked all first\n $radioGroup.prop('checked', true);\n $.uniform.update('input[name=\"' + radioName + '\"]');\n });\n }\n\n};\n\nfunction getToggleSel(el) {\n return $(el).data('toggle');\n}\n\nfunction updateDeliveryOptionPrices(optionList) {\n function updateSingleOption(option) {\n if (!option || !option.id || !option.price) {\n return;\n }\n\n var elRadio = document.querySelector('[data-id=\"' + option.id + '\"]');\n elRadio\n && (elRadio.dataset['price'] = option.price);\n\n var elLabel = document.querySelector('[data-price=\"' + option.id + '\"]');\n elLabel\n && (elLabel.innerText = option.price);\n };\n\n optionList.forEach(updateSingleOption);\n}\n\nfunction updateElem(id, value) {\n var el = document.querySelector(id);\n\n el && (el.innerText = value);\n}\n\nfunction getSelectedPrice() {\n var priceElList = document.querySelectorAll('.toggle-radiogroup-content[data-price]');\n\n var selectedPrice = Array.from(priceElList).filter(function(el) { return el.checked === true; });\n\n return selectedPrice\n && selectedPrice[0]\n && selectedPrice[0].dataset\n && selectedPrice[0].dataset.price\n ? selectedPrice[0].dataset.price\n : '';\n}\n\nfunction updateShippingTotal() {\n var selectedPrice = getSelectedPrice();\n if (selectedPrice === '') {\n return;\n }\n\n updateElem('#shippingTotal', selectedPrice);\n updateElem('#spnShippingTotal', selectedPrice);\n}\n\nfunction resetShippingTotal() {\n updateElem('#shippingTotal', '$--.--');\n updateElem('#spnShippingTotal', '$--.--');\n updateElem('span[data-price]', '$--.--');\n}\n\nfunction getDeliveryPriceFromApi(postcode) {\n var elApi = document.querySelector('[data-postcodeapi]');\n\n elApi &&\n elApi.dataset &&\n elApi.dataset.postcodeapi &&\n ($.ajax({\n type: \"GET\",\n url: elApi.dataset.postcodeapi,\n data: {\n postcode: postcode\n },\n success: function (response) {\n //[{id: \"c199888c-1f44-4cbd-8b9c-ebe59111a641\", price: \"$40.00\"}]\n updateDeliveryOptionPrices(response)\n updateShippingTotal();\n }\n }));\n}\n\nCore.PortalCheckoutUpdateShippingCost = {\n init: function () {\n Core.PortalCheckoutUpdateShippingCost.Cache = {\n $shippingCostRadio: $('input[name=\"shippingCostOptions\"]'),\n $deliverTo: $('input[name=\"deliveryTo\"]'),\n $addAlternateContact: $('input[name=\"NewContactInfo\"]'),\n $dynamicPostcode: $('input.dynamic-postcode'),\n }\n\n updateShippingTotal();\n\n this.updateShippingCost();\n this.updateDeliveryTo();\n this.updateContactInfo();\n },\n\n updateShippingCost: function () {\n Core.PortalCheckoutUpdateShippingCost.Cache.$shippingCostRadio.on('change', function () {\n var $el = $(this);\n var price = $el.data('price');\n\n $('#spnShippingTotal').html(price);\n $('#shippingTotal').html(price);\n $('#hidPrice').val(price);\n $(\"#hidShippingOptionId\").val($el.data('id'));\n $('#hidShippingMethod').val($el.data('shippingmethod'));\n $('#hidUrgent').val($el.data('urgent'));\n });\n },\n\n updateDeliveryTo: function() {\n var $dt = Core.PortalCheckoutUpdateShippingCost.Cache.$deliverTo;\n var $dynamicPostcode = Core.PortalCheckoutUpdateShippingCost.Cache.$dynamicPostcode;\n\n function getFormElem(id) {\n var wrap = document.querySelector(id + '.allow-disabled');\n\n if (!wrap) {\n return [];\n }\n\n var formElemList = wrap.querySelectorAll('.form-input input, .form-input textarea, .form-input select');\n return formElemList;\n }\n\n function toggleDisableElem(disabled) {\n return function(formElemList) {\n Array.from(formElemList).forEach(function(elem) {\n elem.disabled = disabled;\n\n !elem.classList.contains('select-disabled') &&\n $(elem).data(\"kendoDropDownList\") &&\n $(elem).data(\"kendoDropDownList\").enable(!disabled);\n });\n };\n }\n\n var setDisabled = toggleDisableElem(true);\n var setEnabled = toggleDisableElem(false);\n\n function hideEl(index, $el) {\n var id = getToggleSel($el);\n $(id).addClass('d-none');\n\n setDisabled(getFormElem(id));\n };\n\n function hideAll() {\n $dt.each(hideEl);\n };\n\n function showEl($el) {\n var id = getToggleSel($el);\n $(id).removeClass('d-none');\n setEnabled(getFormElem(id));\n };\n\n function updateDeliveryOptionsPrice($el) {\n var id = getToggleSel($el);\n var postcode = $(id).find('.postcode').val();\n var dynamic = $(id).find('.dynamic-postcode');\n\n postcode &&\n ( resetShippingTotal()\n , getDeliveryPriceFromApi(postcode));\n\n dynamic &&\n dynamic.length > 0 &&\n resetShippingTotal();\n };\n\n function onDeliveryToChange(e) {\n var el = $(e.currentTarget);\n hideAll();\n showEl(el);\n\n updateDeliveryOptionsPrice(el);\n };\n\n function onPostcodeChangeUpdateDelivery(e) {\n var postcode = e.currentTarget.value;\n\n postcode &&\n postcode.length === 4 &&\n getDeliveryPriceFromApi(postcode);\n }\n\n $dt.on('change', onDeliveryToChange);\n $dynamicPostcode.on('keyup', onPostcodeChangeUpdateDelivery);\n },\n\n updateContactInfo: function() {\n var wrap = document.querySelector('[data-toggle=\"toggleAlternativeContactCB\"]:not(.disable-not-allowed)');\n var $wrap = $(wrap);\n var $ac = Core.PortalCheckoutUpdateShippingCost.Cache.$addAlternateContact;\n var formElemList = wrap ? wrap.querySelectorAll('.form-input input, .form-input textarea') : [];\n\n function toggleElem(disabled) {\n return function() {\n Array.from(formElemList).forEach(function(elem) { elem.disabled = disabled; });\n };\n }\n\n var setDisabled = toggleElem(true);\n var setEnabled = toggleElem(false);\n\n\n function doToggleFormDisable() {\n ($wrap.hasClass('toggle-cb-content'))\n ? setDisabled()\n : setEnabled();\n }\n\n function onDeliveryToContactPersonChange() {\n $wrap.toggleClass('toggle-cb-content');\n doToggleFormDisable();\n }\n\n $ac.on('change', onDeliveryToContactPersonChange);\n doToggleFormDisable();\n }\n};\n\nCore.PortalPlayoutCart = {\n init: function () {\n Core.PortalCheckout.Cache = {\n $togglePlayout: $('a#toggle-cart')\n };\n\n this.toggleCartPlayout();\n },\n\n toggleCartPlayout: function () {\n Core.PortalCheckout.Cache.$togglePlayout.on('click', function (e) {\n e.preventDefault();\n var $el = $(this),\n $cartDesktop = $el.siblings('.cart-playout'),\n $cartMobile = $('#cart-playout-mobile');\n\n if ($cartDesktop.css('display') === \"block\") {\n $cartDesktop.css('display', 'none');\n } else {\n $cartDesktop.css('display', 'block');\n }\n\n if ($cartMobile.css('display') === \"block\") {\n $cartMobile.slideUp(300);\n } else {\n $cartMobile.slideDown(300);\n }\n\n });\n }\n};\n\nCore.FlyoutButtons = {\n init: function () {\n Core.FlyoutButtons.Cache = {\n $togglePlayoutClose: $('#cart-playout .cart-playout--close'),\n $togglePlayoutCloseMobile: $('#cart-playout-mobile .cart-playout--close'),\n $removeItem: $('.table-yourcart .table-btnremove')\n };\n\n this.togglePlayoutClose();\n this.togglePlayoutCloseMobile();\n this.removeCartItem();\n },\n\n togglePlayoutClose: function () {\n Core.FlyoutButtons.Cache.$togglePlayoutClose.on('click', function (e) {\n e.preventDefault();\n\n // for desktop\n $(this).parents('.cart-playout').slideToggle(0);\n\n // for mobile\n var $cartMobile = $('#cart-playout-mobile');\n if ($cartMobile.css('display') === \"block\") {\n $cartMobile.css('display', 'none');\n } else {\n $cartMobile.css('display', 'block');\n }\n });\n },\n\n togglePlayoutCloseMobile: function () {\n Core.FlyoutButtons.Cache.$togglePlayoutCloseMobile.on('click', function (e) {\n e.preventDefault();\n\n // for desktop\n Core.FlyoutButtons.Cache.$togglePlayoutClose.parents('.cart-playout').slideToggle(0);\n\n // for mobile\n var $cartMobile = $('#cart-playout-mobile');\n if ($cartMobile.css('display') === \"block\") {\n $cartMobile.slideUp(300);\n } else {\n $cartMobile.slideDown(300);\n }\n });\n },\n\n removeCartItem: function () {\n Core.FlyoutButtons.Cache.$removeItem.on('click', function (e) {\n e.stopPropagation();\n var $el = $(this),\n id = $el.attr('data-id'),\n $table = $el.closest('.table-yourcart');\n\n Core.PortalCheckout.deleteItem(id, function (response) {\n Core.PortalCheckout.propagateIsInvalidShipping(response);\n\n Core.PortalCheckout.refreshItems();\n Core.FlyoutButtons.removeItemRow($el.closest('tr.table-yourcart-row-item'));\n });\n\n });\n },\n\n removeItemRow: function ($row) {\n var $table = $row.closest('.table-yourcart');\n $row.remove();\n\n //if there's no item left, delete whole section (buy, rent, or rent-to-own)\n if ($table.find('tr.table-yourcart-row-item').length === 0) {\n $table.remove();\n }\n }\n};\n\nCore.CartFlyout = {\n init: function () {\n Core.CartFlyout.Cache = {\n $flyoutCart: $(\"#cart-playout\"),\n $flyoutCartMobile: $(\"#cart-playout-mobile\"),\n $cartAmount: $(\"a#toggle-cart .amount\")\n }\n\n this.loadCartFlyout();\n this.initListenerClearCart();\n },\n initListenerClearCart: function() {\n var _self = this;\n var clearCart = function() { _self.clearCart() };\n\n document.removeEventListener('aidacare.clearcart', clearCart);\n document.addEventListener('aidacare.clearcart', clearCart);\n },\n\n loadCartFlyout: function () {\n $.ajax({\n type: \"GET\",\n url: '/Cart/GetItems',\n data: {\n cart: \"Default\"\n },\n success: function (response) {\n var portalCartObject = response;\n\n Core.CartFlyout.Cache.$flyoutCart.html(\"\");\n var portalCartTemplate = Handlebars.compile($('#portalCartTemplate').html());\n var portalCartHTML = portalCartTemplate(portalCartObject);\n var productsPurchasedLen = portalCartObject.length;\n\n Core.CartFlyout.Cache.$flyoutCart.append(portalCartHTML);\n\n setTimeout(function () {\n var $totalOfProduct = $('.toggle-cart tr.table-yourcart-row-item');\n if ($totalOfProduct.length > 0) {\n var sum = 0;\n for (var a = 0; a < $totalOfProduct.length; a++) {\n sum = sum + parseInt($($totalOfProduct[a]).attr(\"data-qty\"));\n }\n Core.CartFlyout.Cache.$cartAmount.html(sum).show();\n } else {\n Core.CartFlyout.resetCart();\n }\n\n Core.CartFlyout.Cache.$flyoutCartMobile.html(Core.CartFlyout.Cache.$flyoutCart.html());\n Core.FlyoutButtons.init();\n }, 100);\n }\n });\n },\n\n hideCartAmount: function() {\n $(\"a#toggle-cart .amount\").html(\"\").hide();\n },\n\n setYourCartEmpty: function() {\n var YOUR_CART_IS_EMPTY_HTML = '
Your cart is empty.
';\n $('.cart-playout--content').html(YOUR_CART_IS_EMPTY_HTML);\n },\n\n resetCart: function() {\n Core.CartFlyout.hideCartAmount();\n Core.CartFlyout.setYourCartEmpty();\n },\n\n clearCart: function() {\n var _self = this;\n $.post('/cart/removeall').done(function() { _self.resetCart(); });\n },\n};\n\nHandlebars.registerHelper('portalCartObjectTypeLabel', function (portalCartObject, label) {\n for (var i = 0; i < portalCartObject.length; i++) {\n if (portalCartObject[i]['PriceType'] == label) {\n return true;\n }\n }\n\n return false;\n});\n\nHandlebars.registerHelper('portalCartObjectType', function (portalCartObject, type) {\n if (portalCartObject.PriceType == type) {\n return true;\n }\n return false;\n});\n\nHandlebars.registerHelper('portalCartObjectTypeTotal', function (portalCartObject, label) {\n var total = 0;\n\n for (var i = 0; i < portalCartObject.length; i++) {\n if (portalCartObject[i]['PriceType'] == label) {\n total += portalCartObject[i]['LineItemTotal'];\n }\n }\n\n return Core.PortalCheckout.formatMoney(total, 2, '$', ',', '.');\n});\n","/*\n * API_STATUS := OK | ERROR\n * RESPONSE_STATUS := OK | BAD_FORMAT\n *\n * {\n * \"clients\":[\n * {\n * \"contactId\":\"60cb3c52-564e-44f5-a4f8-4d96e13572b0\",\n * \"name\":\"Doe, John\",\n * \"address\":\"1/15 Jarrah Drive\",\n * \"clientReferenceNumber\":\"12345ABC\",\n * \"phone\":\"0412377404\"\n * },\n * ],\n * \"hasMore\":true\n * }\n *\n */\nCore.PortalCheckoutClientSearch = function(rootElem) {\n if (rootElem == null) {\n return;\n }\n\n /*\n\n DATASET\n\n */\n\n function hasDataset(elem, name) {\n return elem &&\n elem.dataset &&\n typeof elem.dataset[name] !== 'undefined';\n }\n\n function warnData(msg) {\n console.warn(msg);\n }\n\n function getDataset(elem, name) {\n return hasDataset(elem, name)\n ? elem.dataset[name]\n : warnData('Data attribute for ' + name + ' missing');\n }\n\n\n /*\n\n UTILS\n\n */\n\n function HandleSessionExpired(callback) {\n $.get('/account/IsSessionExpired', function(response) {\n if (response == true) {\n window.location.href = '/logout';\n }\n else if (callback) {\n callback();\n }\n });\n }\n\n\n /*\n\n\n HTML TMPL\n\n\n */\n\n function tableWrapTmpl(content, label) {\n return '
' +\n '
' +\n '
' +\n '
'+\n '
' + label + '
' +\n '
Client Name
' +\n '
Phone
' +\n '
Address
' +\n '
' +\n\n content +\n '
' +\n '
';\n }\n\n function pagination(content) {\n return `
\n
\n ${content}\n
\n
\n ${content}\n
\n
`;\n }\n\n function youReachedTheEndOfTheList() {\n return pagination('You reached the end of the list');\n }\n\n function showMoreResults(pageNum) {\n return pagination('');\n }\n\n function rowTmpl(client) {\n return `
\n
\n
\n \n
\n
\n\n
\n
${client.clientReferenceNumber}
\n
\n
\n
${client.name}
\n
\n
${client.phone}
\n
${client.address}
\n\n
\n

\n ${client.clientReferenceNumberLabel || \"Client Ref #\"}: ${client.clientReferenceNumber}\n

\n

\n Client Name: ${client.name}\n

\n

\n Phone Number: ${client.phone}\n

\n

\n Address: ${client.address}\n

\n
\n
`;\n }\n\n function getTableBody(clientList, hasMore, nextPage) {\n function genFnNextPage(nextPage) {\n return function(client) {\n client['page'] = nextPage - 1;\n return client;\n }\n }\n\n var clientListHtml = clientList\n .map(genFnNextPage(nextPage))\n .map(rowTmpl)\n .join('');\n var footer = hasMore\n ? showMoreResults(nextPage)\n : youReachedTheEndOfTheList();\n\n return clientListHtml + footer;\n }\n\n function apiErrorTmpl() {\n return '
Sorry, an error occurred during the search.
Try Later
';\n }\n\n function noResultsTable() {\n return '
No results available
';\n }\n\n function resultsTable(clients, hasMore) {\n var content = getTableBody(clients, hasMore, 2);\n var label = clients[0].clientReferenceNumberLabel || \"Client Ref #\";\n return tableWrapTmpl(content, label);\n }\n\n\n\n var el = {\n root: rootElem,\n input: rootElem.querySelector('[data-input]') || warnData('Please add [data-input] attribute'),\n btn: rootElem.querySelector('[data-btn]'|| warnData('Please add [data-btn] attribute')),\n results: rootElem.querySelector('[data-results]')|| warnData('Please add [data-results] attribute'),\n };\n\n var data = {\n searchApi: getDataset(el.root, 'searchApi'),\n selectApi: getDataset(el.root, 'selectApi'),\n contactId: '',\n pageNum: 0,\n };\n\n var m = {\n init: function() {\n function isNull(item) {\n return item == null;\n }\n\n function checkAllValid(previousValue, currentValue) {\n return previousValue && !isNull(currentValue);\n }\n\n function isAllValid() {\n return [data.searchApi, data.selectApi, el.input, el.btn, el.results].reduce(checkAllValid, true);\n }\n\n if (!isAllValid()) {\n return;\n }\n\n m.boot();\n },\n\n boot: function() {\n m.searchListeners();\n },\n\n // -- STR -- Search Client -----------------------\n searchListeners: function() {\n el.btn.addEventListener('click', m.doSearchClient)\n el.input.addEventListener('keydown', function(e) {\n (e.key === \"Enter\") && m.doSearchClient()\n });\n },\n\n doSearchClient: function() {\n function onFail(data) {\n m.showSearchApiError();\n }\n\n function onSuccess(data) {\n m.updateResults(data);\n m.onSelectClient(1);\n m.onShowMore();\n }\n\n function onDone() {\n Core.HidePageLoading();\n m.showResults();\n }\n\n Core.ShowPageLoading();\n\n var payload = { Keywords: el.input.value };\n\n $.post(data.searchApi, payload, onSuccess)\n .fail(onFail)\n .always(onDone);\n },\n\n showResults: function() {\n document.location.host.indexOf('localhost') === -1\n ? HandleSessionExpired(function() {\n $(el.results).slideDown();\n })\n : $(el.results).slideDown();\n },\n\n showSearchApiError: function() {\n el.results.innerHTML = apiErrorTmpl();\n },\n\n updateResults: function(data) {\n el.results.innerHTML = (data && data.clients && data.clients.length > 0)\n ? resultsTable(data.clients, data.hasMore)\n : noResultsTable();\n },\n // -- END -- Search Client -----------------------\n\n\n onShowMore: function() {\n function onClick(e) {\n var nextPage = $(e.currentTarget).data(\"page\");\n nextPage = parseInt(nextPage);\n\n m.doShowMore(nextPage);\n }\n\n Array\n .from(el.root.querySelectorAll('[data-btn-show-more]'))\n .forEach(function(elm) {\n elm.addEventListener('click', onClick)\n });\n },\n\n doShowMore: function(nextPage) {\n function onFail(data) {\n Array\n .from(el.root.querySelectorAll('[data-pagination]'))\n .forEach(function(elm) {\n elm.innerHTML = pagination(apiErrorTmpl());\n });\n }\n\n function onSuccess(data) {\n m.appendResults(data, nextPage);\n m.onSelectClient(nextPage);\n m.onShowMore();\n }\n\n function onDone() {\n Core.HidePageLoading();\n }\n\n Core.ShowPageLoading();\n\n var payload = { Keywords: el.input.value, PageNumber: nextPage };\n\n $.post(data.searchApi, payload, onSuccess)\n .fail(onFail)\n .always(onDone);\n },\n\n\n appendResults: function(data, nextPage) {\n var pagination = el.root.querySelector('[data-pagination]');\n var results = (data && data.clients && data.clients.length > 0)\n && getTableBody(data.clients, data.hasMore, nextPage + 1);\n\n pagination\n && results\n && $(pagination).replaceWith(results);\n },\n\n // -- STR -- Select Client -----------------------\n onSelectClient: function(page) {\n function onClick(e) {\n var contactId = $(e.currentTarget).data(\"contactId\");\n\n m.doSelectClient(contactId);\n }\n\n Array\n .from(el.root.querySelectorAll('[data-row-page=\"' + page + '\"]'))\n .forEach(function(elm) {\n elm.addEventListener('click', onClick)\n });\n },\n\n doSelectClient: function(contactId) {\n function onFail(data) {\n m.showSearchApiError();\n }\n\n function onSuccess(data) {\n m.updateClientDetails(data, contactId);\n }\n\n function onDone() {\n Core.HidePageLoading();\n }\n\n Core.ShowPageLoading();\n\n var payload = { ContactID: contactId };\n\n $.post(data.selectApi, payload, onSuccess)\n .fail(onFail)\n .always(onDone);\n },\n\n updateClientDetails: function(data, contactId) {\n data.contactId = contactId;\n\n //show detail when checkbox is checked\n var cbIsChecked = function ($el) {\n var id = $el.closest('.portal-checkout__cb-control').attr('id')\n , $target = $('div[data-toggle=\"' + id + '\"]');\n if ($target) $target.slideDown();\n };\n\n var initAddressAutocomplete = function() {\n var $autocomplete = $('.addressAutocomplete');\n if ($autocomplete.length > 0) {\n Core.Engine.handleAddressAutocomplete();\n }\n };\n\n var clientDetails = document.querySelector('#checkOutClientDetailsReadonly');\n clientDetails\n ? $(clientDetails).html(data)\n : console.warning('#checkOutClientDetailsReadonly not present details not updated');\n\n $(\"#hidSelectedContactID\").val(contactId);\n\n $(\".pccdlt-body\").removeClass('selected');\n $(\"[data-contact-id=\" + contactId + \"]\").addClass('selected');\n\n $(\".portal-checkout__client-detail--item-addnew-client input[type=checkbox], .portal-checkout__client-detail--item-addnew-client input[type=radio]\").uniform();\n Core.PortalCheckoutCheckboxToggle.init();\n $('#divClientDetails select:not(.kendo-ignore,.kendo-initialized)').kendoDropDownList().addClass('kendo-initialized');\n\n //check checkbox\n $('#NewShippingAddress').prop('checked') && cbIsChecked($('#NewShippingAddress'));\n $('#NewContactInfo').prop('checked') && cbIsChecked($('#NewContactInfo'));\n\n $('#divClientDetails').slideDown();\n $('#divSearchResult').slideUp();\n $(\"#frmClientRefNo\").find(\"#ContactID\").val(contactId);\n\n initAddressAutocomplete();\n\n setTimeout(function () {\n Core.DVAInformation.init({\n domActivites: \"#DVAActivityOfDailyLiving\",\n domBehaviour: \"#DVABehaviour\",\n domComplexHealthCare: \"#DVAComplexHealthCare\",\n })\n }, 500);\n },\n // -- END -- Select Client -----------------------\n\n };\n\n m.init();\n\n return m;\n};\n","Core.PortalCheckoutClinicalJustification = {\n init: function() {\n Core.PortalCheckoutClinicalJustification.handleSubmit();\n },\n handleSubmit: function() {\n var _self = Core.PortalCheckoutClinicalJustification;\n var $form = $('#frmClinicalJustification');\n var $errorWrapper = $form.find('.error-wrapper');\n var $btn = $form.find('.buttonblock button');\n\n $btn.on('click', function(e) {\n e.preventDefault();\n if (_self.isValid()) {\n $errorWrapper.addClass('d-none');\n $form.submit();\n } else {\n $errorWrapper.removeClass('d-none');\n }\n });\n },\n isValid:function() {\n var $form = $('#frmClinicalJustification');\n var isRequiredValidation = $form.find('#IsRequiredValidation').val();\n\n if (isRequiredValidation && isRequiredValidation.toLowerCase() === 'true') {\n // check if instructions or attached file is provided\n var hasInstructions = !!$form.find('#clinicalJustificationInstructions').val();\n var hasFiles = $form.find('.fileUpload-fileList input[type=hidden]').length > 0;\n\n var isValid = hasInstructions || hasFiles;\n return isValid;\n } \n \n return true;\n }\n};\n","Core.PortalCheckoutHomeModification = (function() {\n var NS = 'checkoutHomeModification';\n var fileUploadObj = null;\n var map = null;\n var pop = null;\n\n function executeCallback(clb) {\n clb();\n };\n\n function countFiles() {\n return document.querySelectorAll('#checkoutHomeModification .fileUpload-fileList input[type=hidden]').length;\n }\n\n function OptionsError() {\n return {\n show() {\n if ($( \".error-options\" ).length) {\n return;\n }\n\n $('.fileUpload').append('');\n },\n\n clear() {\n $('.error-options').remove();\n }\n }\n }\n\n var v = {};\n\n /*\n\n\n DATA\n\n\n */\n\n var d = {\n state: '',\n installer: '',\n instructions: '',\n fileCounter: 0,\n subscriberList: {\n selectedState: [],\n selectedInstaller: [],\n textInstructions: [],\n files: [],\n },\n\n set selectedState(state) {\n this.state = state;\n this.selectedInstaller = '';\n\n d.subscriberList.selectedState.forEach(executeCallback);\n },\n\n get selectedState() {\n return this.state;\n },\n\n set selectedInstaller(installer) {\n this.installer = installer;\n\n d.subscriberList.selectedInstaller.forEach(executeCallback);\n },\n\n get selectedInstaller() {\n return this.installer;\n },\n\n set textInstructions(instructions) {\n this.instructions = instructions;\n\n d.subscriberList.textInstructions.forEach(executeCallback);\n },\n\n get textInstructions() {\n return this.instructions;\n },\n\n set files(count) {\n this.fileCounter = count;\n\n d.subscriberList.files.forEach(executeCallback);\n },\n\n get files() {\n return this.fileCounter;\n },\n\n subscribe(name, callback) {\n d.subscriberList[name].push(callback);\n }\n };\n\n\n /*\n\n\n METHODS\n\n\n */\n\n var m = {\n init: function() {\n m.initFilesUpload();\n\n m.loadVar();\n m.loadCallback();\n\n m.updateState();\n m.onStateChange();\n\n m.updateInstallerSelect();\n\n m.updateDetails();\n\n m.onTextInstructionsChange();\n m.onFilesChange();\n m.initMap();\n m.goTo();\n\n m.listenBtnClick();\n m.initModal();\n m.setValidators();\n\n m.onBtnClick();\n m.initDrawingTool();\n },\n\n initFilesUpload: function() {\n var uploaderList = Array.from(document.querySelectorAll('#checkoutHomeModification .fileUpload'));\n\n uploaderList.forEach(function(elem) {\n fileUploadObj = new Core.FileUpload(elem);\n fileUploadObj.init();\n });\n },\n\n loadVar: function() {\n d.selectedState = $(\".selectedState\").val();\n d.selectedInstaller = $(\".selectedInstaller\").val();\n d.textInstructions = $(\"#homeModificationInstructions\").val();\n d.files = countFiles();\n },\n\n loadCallback: function() {\n d.subscribe('selectedState', m.updateInstallerSelect);\n d.subscribe('selectedState', m.isValidState);\n\n d.subscribe('selectedInstaller', m.updateDetails);\n d.subscribe('selectedInstaller', m.goTo);\n\n d.subscribe('textInstructions', m.isValidOptions);\n d.subscribe('files', m.isValidOptions);\n },\n\n setValidators: function() {\n v['state'] = new SelectValidator(\"#dropdownInstallerState\");\n v['installer'] = new SelectValidator(\"#dropdownInstallerInState\");\n v['options'] = {\n isValid: function() {\n var error = new OptionsError();\n var hasOption = (m.hasTextInstructions() || m.hasFiles());\n\n hasOption\n ? error.clear()\n : error.show();\n\n return hasOption;\n }\n }\n },\n\n isValidState: function() {\n setTimeout(v['state'].isValid, 100);\n },\n\n isValidInstaller: function() {\n setTimeout(v['installer'].isValid, 100);\n },\n\n isValidOptions: function() {\n setTimeout(v['options'].isValid, 100);\n },\n\n\n\n /*\n\n\n STATE\n\n\n */\n\n updateState: function() {\n var selectedState = d.selectedState;\n\n if (selectedState === '' || selectedState === 'all') {\n return;\n }\n\n $('#dropdownInstallerState').data(\"kendoDropDownList\").value(selectedState);\n },\n\n onStateChange: function() {\n function updateDataState() {\n d.selectedState = $(\"#dropdownInstallerState\").data(\"kendoDropDownList\").value();\n $(\".selectedState\").val(d.selectedState);\n $(\".selectedInstaller\").val(d.selectedInstaller);\n };\n\n $(\"#dropdownInstallerState\").data(\"kendoDropDownList\").bind(\"change\", updateDataState);\n },\n\n\n\n /*\n\n\n INSTALLERS\n\n\n */\n\n getInstallersList: function() {\n var selectedState = d.selectedState;\n\n function isInstallerInState(installer) {\n return installer.State\n ? installer.State.toLowerCase() === selectedState.toLowerCase()\n : false;\n }\n\n if (selectedState === '' || selectedState === 'all') {\n return [{Name: \"Pick an installer\", \"Id\": \"\"}];\n }\n\n\n if (typeof window.InstallersJson === 'undefined' || typeof window.InstallersJson.Installers === 'undefined') {\n return [{Name: \"Pick an installer\", \"Id\": \"\"}];\n }\n\n\n var installerListInState = window.InstallersJson.Installers.filter(isInstallerInState);\n return [{Name: \"Pick an installer\", \"Id\": \"\"}].concat(installerListInState);\n },\n\n getInstaller: function() {\n function isSelectedInstaller(installer) {\n return installer.Id === d.selectedInstaller;\n };\n\n return m.getInstallersList().find(isSelectedInstaller);\n },\n\n updateInstallerSelect: function() {\n var selectedInstaller = d.selectedInstaller;\n var installerList = m.getInstallersList();\n\n $(\"#dropdownInstallerInState\").kendoDropDownList({\n dataSource: installerList,\n dataTextField: \"Name\",\n dataValueField: \"Id\"\n });\n\n $(\"#dropdownInstallerInState\").data(\"kendoDropDownList\").value(selectedInstaller);\n m.onInstallerChange();\n },\n\n onInstallerChange: function() {\n function updateDataInstaller() {\n d.selectedInstaller = $(\"#dropdownInstallerInState\").data(\"kendoDropDownList\").value();\n $(\".selectedInstaller\").val(d.selectedInstaller);\n m.isValidInstaller();\n };\n\n $(\"#dropdownInstallerInState\").data(\"kendoDropDownList\").bind(\"change\", updateDataInstaller);\n },\n\n\n\n /*\n\n\n INSTRUCTIONS\n\n\n */\n\n onTextInstructionsChange: function() {\n function updateDataTextInstructions() {\n d.textInstructions = $(\"#homeModificationInstructions\").val();\n m.isValidOptions();\n };\n\n $(\"#homeModificationInstructions\").on(\"keyup\", updateDataTextInstructions);\n },\n\n\n\n /*\n\n\n FILES\n\n\n */\n\n onFilesChange: function() {\n function updateDataFiles() {\n d.files = countFiles();\n m.isValidOptions();\n };\n\n document.addEventListener(`${NS}.fileUploaded`, updateDataFiles);\n document.addEventListener(`${NS}.fileDeleted`, updateDataFiles);\n },\n\n\n hasMinimumRequirements: function() {\n var hasOption = (m.hasTextInstructions() || m.hasFiles());\n\n return m.hasValidInstaller() && hasOption;\n },\n\n hasValidInstaller: function() {\n return (d.selectedInstaller !== '' && d.selectedState !== '');\n },\n\n hasTextInstructions: function() {\n return (d.textInstructions.length > 0);\n },\n\n hasFiles: function() {\n return (d.files > 0);\n },\n\n\n\n /*\n\n\n BUTTONS\n\n\n */\n\n checkBtn: function() {\n $(\"#btnContinueHomeMod\").attr('disabled', ! m.hasMinimumRequirements());\n },\n\n onBtnClick: function() {\n var isSubmitted = false;\n var setIsSubmittedFalse = function() {\n isSubmitted = false;\n }\n\n var onClick = function() {\n m.isValidState();\n m.isValidInstaller();\n m.isValidOptions();\n\n if (! m.hasMinimumRequirements()) {\n return;\n }\n\n // reorder file list names to send to server\n var $list = $('#checkoutHomeModification .fileUpload .fileUpload-fileList');\n $list.find('.fileUpload-file').each(function(i, item) {\n var $file = $(item);\n $file.find('.UploadedFiles').prop('name', `UploadedFiles[${i}]`);\n $file.find('.UploadedOriginalFileNames').prop('name', `UploadedOriginalFileNames[${i}]`);\n });\n\n !isSubmitted &&\n ( isSubmitted = true\n , setTimeout(setIsSubmittedFalse, 500)\n , $('#frmHomeModification').trigger('submit')\n );\n };\n\n var btn = document.querySelector(\"#btnContinueHomeMod\");\n btn && btn.addEventListener('click', onClick);\n },\n\n\n\n /*\n\n\n DETAILS\n\n\n */\n\n updateDetails: function() {\n var $desc = $('.home-mod-option-desc');\n var $details = $('.home-mod-details');\n var installer = m.getInstaller();\n\n if (!installer || !installer.AddressLine1) {\n $content = ' ';\n $desc.show();\n $details.html($content);\n $details.hide();\n return;\n }\n\n $content = '

' + installer.Name + '

'\n + '

' + installer.AddressLine1 + '

'\n + '

' + installer.Suburb + '

'\n + '

' + installer.State + ', ' + installer.Postcode + '

'\n + '

Phone: ' + installer.Phone + '

'\n + (installer.BusinessHours ? '

Business Hours:

' + installer.BusinessHours + '
' : '');\n\n $desc.hide();\n $details.html($content);\n $details.show();\n },\n\n\n\n /*\n\n\n MAP\n\n\n */\n\n initMap: function() {\n var $mapCanvas = $(\"#google-map-canvas-home-mod\");\n\n if ($mapCanvas.length) {\n var data = (typeof window.InstallersJson === 'undefined' || typeof window.InstallersJson.Installers === 'undefined')\n ? []\n : window.InstallersJson.Installers;\n\n map = Core.Map($mapCanvas[0]);\n map.init();\n map.plotMarkers(data);\n }\n },\n\n goTo: function() {\n var installer = m.getInstaller();\n\n (!installer || !installer.AddressLine1)\n ? map.setState(d.selectedState)\n : map.goTo(installer.Latitude, installer.Longitude);\n },\n\n\n /*\n\n\n HOME MOD BUTTONS\n - listenBtnClick init both btns listners\n\n\n */\n\n listenBtnClick: function() {\n m.onClickBtnContinueHomeMod();\n m.onClickBtnNoHomeModRequired();\n },\n\n onClickBtnContinueHomeMod: function() {\n $(\"#btnContinueHomeMod\").on('click', function(e) {\n e.preventDefault();\n\n $('.homeMods').val('true');\n\n $(\"#btnContinueHomeMod\").unbind('click').trigger('click');\n setTimeout(m.onClickBtnContinueHomeMod, 250);\n });\n },\n\n onClickBtnNoHomeModRequired: function() {\n $(\"#btnNoHomeModRequired\").on('click', function(e) {\n e.preventDefault();\n\n if (m.isModalNoHomeMod()) {\n m.showModal();\n return;\n }\n\n $('.homeMods').val('false');\n m.doClickNoHomeModRequired();\n });\n },\n\n // unbind click and bind event\n // required to submit the no home mode form\n doClickNoHomeModRequired: function() {\n $(\"#btnNoHomeModRequired\").unbind('click').trigger('click');\n setTimeout(m.onClickBtnNoHomeModRequired, 250);\n },\n\n /*\n\n on ajax_homemods_OnComplete\n we fire `aidacare.home-mod-completed`\n portalCheckout will listen and refresh the cart items\n Core.PortalCheckoutHomeModification.homeModCompletedEvent()\n\n */\n homeModCompletedEvent: function() {\n var event = new Event('aidacare.home-mod-completed');\n document.dispatchEvent(event);\n\n // remove error message\n setTimeout(() => {\n var error = new OptionsError();\n error.clear();\n \n // remove files and notes if no home mod required clicked\n if ($('.homeMods').val().toLowerCase() === 'false') {\n $('#checkoutHomeModification .fileUpload-fileList').empty();\n $(\"#homeModificationInstructions\").val('');\n $('.drawingTool-canvas').drawr('clear');\n }\n }, 1000);\n },\n\n\n /*\n\n\n NO HOME MOD MODAL\n - if only product in the cart is home mod\n - if user click yes (which means remove)\n then we do remove and refresh the page\n\n\n */\n\n isModalNoHomeMod: function() {\n return $('#btnNoHomeModRequired').data(\"confirm\") || m.hasMinimumRequirements();\n },\n\n showModal: function() {\n pop.data(\"kendoWindow\").center().open();\n },\n\n initModal: function() {\n pop = $('#confirm')\n .kendoWindow({\n title: \"CONFIRM NO HOME MOD\",\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n pinned: true,\n draggable: false,\n animation: false,\n });\n\n $('[data-name=\"no\"]').on('click', function() {\n pop.data(\"kendoWindow\").close();\n });\n\n $('[data-name=\"yes\"]').on('click', function() {\n pop.data(\"kendoWindow\").close();\n $('.homeMods').val('false');\n\n m.doClickNoHomeModRequired();\n });\n },\n\n initDrawingTool: function() {\n var $fileUploadEl = $('#checkoutHomeModification .fileUpload');\n\n if ($(\"#homeMod-draw\").length > 0) {\n var drawingTool = new Core.DrawingTool(\"#homeMod-draw\");\n drawingTool.init(fileUploadObj, $fileUploadEl);\n }\n },\n };\n\n return m;\n})();\n","Core.PortalCheckoutPayment = {\n init: function() {\n Core.PortalCheckoutPayment.Cache = {\n $radio: $('.toggle-radiogroup-content[name=\"checkoutPaymentMethod\"]')\n };\n\n this.handleRadio();\n this.initCCInput();\n this.initTooltip();\n this.setBtnPaymentText($('.toggle-radiogroup-content[name=\"checkoutPaymentMethod\"]:checked').val());\n Core.PortalCheckoutToggleRadioContent.handleRadioClick($('#divPayment .portal-radio__listbox-options-item'));\n },\n\n handleRadio: function() {\n var _self = Core.PortalCheckoutPayment;\n var _termConditionCheckbox = Core.PortalCheckoutTermsAndConditions;\n\n _self.Cache.$radio.on('change', function() {\n var $el = $(this),\n name = $el.attr(\"name\"),\n $group = $('[data-content=\"' + name + '\"]'),\n $target = $group.find($el.attr(\"data-target\"));\n\n $termscondition = $el.attr(\"data-termscondition\");\n $submittext = $el.attr(\"data-submittext\");\n\n if ($termscondition == \"False\") {\n $(\".portal-checkout__termsconditions\").hide();\n $(\"#btnPayNow\").removeClass('disabled').prop('disabled', false);\n }\n else {\n $(\".portal-checkout__termsconditions\").show();\n if (!_termConditionCheckbox.isTermChecked()) {\n $(\"#btnPayNow\").removeClass('disabled').prop('disabled', true);\n }\n }\n\n _self.setBtnPaymentText(this.value, $submittext);\n Core.PortalCheckoutToggleRadioContent.resetRadio($el);\n\n $group.find('.portal-checkout__radiogroup-item.active').removeClass('active');\n $target.addClass('active');\n });\n },\n\n setBtnPaymentText: function (payMethod, submitext) {\n var $btn = $(\"#btnPayNow\");\n\n // https://levogroup.atlassian.net/browse/AD-462\n if (payMethod === \"CreditCard\") {\n $btn.text(submitext);\n } else {\n $btn.text(submitext);\n }\n\n // if(payMethod === \"ChargeToAccount\") {\n // var roles = $('#userRole').val();\n\n // if(!roles) {\n // console.warn(\"Couldn't find '#userRole' element. Returned early.\");\n // return;\n // }\n\n // roles = roles.split(\";\");\n\n // //https://levogroup.atlassian.net/browse/AD-137\n // //check if only 'therapist'\n // if(roles.length == 1 && roles[0] == 'Therapist') {\n // btnText = \"Send for Approval\";\n // }\n // else if (roles.indexOf(\"Approver\") != -1){\n // btnText = \"Submit Now\";\n // }\n // }\n\n //$(\"#btnPayNow\").text(btnText);\n },\n\n initCCInput: function() {\n //console.log('init cc input');\n var cleave = new Cleave('#paymCCno', {\n creditCard: true,\n onCreditCardTypeChanged: function (type) {\n //console.log(type);\n }\n });\n },\n\n initTooltip: function() {\n $('#cvvTooltip').kendoTooltip({\n width: 200,\n position: \"top\",\n show: function(e) {\n this.popup.element.addClass('portal-tooltip text-center');\n }\n });\n },\n\n generateDummydata: function() {\n $('#checkoutPayment .portal-checkout__accordion-heading').on('dblclick', function() {\n $('#cardHolderName').val('Aidacare');\n $('#paymCCno').val('1234123412341234');\n $('#paymCCcvv').val('123');\n $(\"#paymentExpYear\").data(\"kendoDropDownList\").select(1);\n $(\"#paymentExpDate\").data(\"kendoDropDownList\").select(1);\n });\n\n $('#checkoutPayment .portal-checkout__accordion-content').on('dblclick', function() {\n $('#cardHolderName').val('Aidacare');\n $('#paymCCno').val('4564710000000004');\n $('#paymCCcvv').val('847');\n $(\"#paymentExpYear\").data(\"kendoDropDownList\").select(1);\n $(\"#paymentExpDate\").data(\"kendoDropDownList\").select(1);\n });\n }\n};\n","Core.PortalCheckoutShipping = {\n init: function() {\n Core.PortalCheckoutShipping.Cache = {\n $toggleRadioContent: $('.toggle-radiogroup-content[name=\"shippingCostOptions\"]'),\n $btnContinueShipping: $('#btnContinueShipping'),\n $btnSaveAsDraft: $('#btnSaveAsDraft'),\n $btnRequestQuote: $('#btnRequestQuote')\n };\n\n // this.onStateChange();\n // this.updateSupplierSelect();\n this.handleSelectStore();\n this.handleStoreLocation();\n this.checkShippingMethod();\n this.handleBtnSubmit();\n this.handleRadio();\n\n Core.PortalCheckoutToggleRadioContent.handleRadioClick($('#divShipping .portal-radio__listbox-options-item'));\n },\n\n isPickup: function() {\n var pickup = $('input[name=\"shippingCostOptions\"]:checked').data('pickup');\n\n if (pickup) {\n return pickup.toLowerCase() === 'true';\n }\n\n return false;\n },\n\n handleSelectStore: function() {\n $('#dropdownStoreLocation').on('change', function() {\n var $wrap = $(this).closest('.form-input');\n var $selObj = $(this).data('kendoDropDownList');\n $('#hidStoreId').val(this.value);\n\n if(this.value) {\n $selObj.wrapper && $selObj.wrapper[0].classList.remove('error');\n $wrap.find('label.error').remove();\n } else {\n $selObj.wrapper && $selObj.wrapper[0].classList.add('error');\n if($wrap.find('label.error').length === 0) Core.AppendErrorLabel($wrap, \"Please select store\");\n }\n });\n },\n\n handleStoreLocation: function () {\n $('[data-StoreLocationDropDown]').on('change', function () {\n var $wrap = $(this).closest('.form-input');\n var $selObj = $(this).data('kendoDropDownList');\n $('#hidStoreStorePaidShippingId').val(this.value);\n\n if (this.value) {\n $wrap.find('label.error').remove();\n } else {\n if ($wrap.find('label.error').length === 0) Core.AppendErrorLabel($wrap, \"Please select store\");\n }\n });\n },\n\n onStateChange: function() {\n // get default value from selectedState (Home mod)\n var selectedState = $('.selectedState').val();\n $(\"#dropdownSupplierState\").data(\"kendoDropDownList\").value(selectedState);\n\n $(\"#dropdownSupplierState\").on(\"change\", function() {\n Core.PortalCheckoutShipping.updateSupplierSelect();\n });\n },\n\n updateSupplierSelect: function() {\n var installerList = Core.PortalCheckoutShipping.getSupplierList();\n\n $(\"[data-storelocationdropdown]\").kendoDropDownList({\n dataSource: installerList,\n dataTextField: \"Name\",\n dataValueField: \"Id\"\n });\n\n $(\"[data-storelocationdropdown]\").data(\"kendoDropDownList\").value('');\n },\n\n // render options from selected State\n getSupplierList: function() {\n var selectedState = $(\"#dropdownSupplierState\").val() || $('.selectedState').val(); // get default value from selectedState (Home mod)\n\n function isInstallerInState(installer) {\n return installer.State\n ? installer.State.toLowerCase() === selectedState?.toLowerCase()\n : false;\n }\n\n if (selectedState === '' || selectedState === 'all') {\n return [{Name: \"Pick a supplier\", \"Id\": \"\"}];\n }\n\n if (typeof window.StoreJson === 'undefined') {\n return [{Name: \"Pick a supplier\", \"Id\": \"\"}];\n }\n\n var installerListInState = window.StoreJson.filter(isInstallerInState);\n return [{Name: \"Pick a supplier\", \"Id\": \"\"}].concat(installerListInState);\n },\n\n handleRadio: function() {\n var _self = Core.PortalCheckoutShipping;\n\n _self.Cache.$toggleRadioContent.on('change', function() {\n var $el = $(this),\n name = $el.attr(\"name\"),\n $group = $('[data-content=\"' + name + '\"]'),\n $target = $group.find($el.attr(\"data-target\"));\n\n Core.PortalCheckoutToggleRadioContent.resetRadio($el);\n\n $group.find('.portal-checkout__radiogroup-item.active').removeClass('active');\n $target.addClass('active');\n $(\"#shippingOption\").val($el.data('id'));\n\n if ($el.data('price').toLowerCase() === \"free\") {\n Core.PortalCheckoutShipping.initMap();\n Core.PortalCheckoutShipping.initStoreDropdown();\n } else {\n Core.PortalCheckoutShipping.initStoreLocationDropdown();\n }\n });\n },\n\n validateShipping: function() {\n if (Core.PortalCheckoutShipping.isPickup()) {\n $('#hidStoreStorePaidShippingId').val('');\n var $store = $('#dropdownStoreLocation');\n var $selObj = $store.data('kendoDropDownList');\n\n if(!$store.val()) {\n var $wrap = $store.closest('.form-input');\n\n if($wrap.find('label.error').length === 0) {\n $selObj.wrapper && $selObj.wrapper[0].classList.add('error');\n Core.AppendErrorLabel($wrap, \"Please select store\");\n }\n return false;\n } else {\n $selObj.wrapper && $selObj.wrapper[0].classList.remove('error');\n }\n\n } else {\n $('#hidStoreId').val('');\n var id = \"store-\" + $(\"#shippingOption\").val();\n $store = $('#' + id);\n var $storeLength = $store.length;\n\n if ($storeLength==0) {\n return true;\n }\n $wrap = $store.closest('.form-input');\n if (!$store.val()) {\n if ($wrap.find('label.error').length === 0) {\n Core.AppendErrorLabel($wrap, \"Please select store\");\n }\n else {\n $wrap.find('label.error').show();\n }\n return false;\n } else {\n if ($wrap.find('label.error').length > 0) {\n $wrap.find('label.error').remove();\n }\n }\n }\n\n return true;\n },\n\n checkShippingMethod: function() {\n var _self = Core.PortalCheckoutShipping;\n\n //if free ship is selected\n if(_self.isPickup()) {\n _self.initMap();\n _self.initStoreDropdown();\n\n var storeIdx = $('#dropdownStoreLocation option:selected').index();\n if(storeIdx) {\n Core.PortalPickupStores.Locator.showStoreInfo(storeIdx - 1);\n Core.PortalPickupStores.Locator.Map.setZoom(15);\n }\n }\n },\n\n initMap: function() {\n var $mapCanvas = $(\"#google-map-canvas\");\n if ($mapCanvas.length && !$mapCanvas.hasClass('inited')) {\n Core.PortalPickupStores.Locator.init();\n }\n },\n\n initStoreDropdown: function() {\n var $dropdownStoreLocation = $('#dropdownStoreLocation');\n if ($dropdownStoreLocation.length && $dropdownStoreLocation.data('role') != \"dropdownlist\") {\n $dropdownStoreLocation.kendoDropDownList();\n }\n },\n\n initStoreLocationDropdown: function () {\n var $dropdownStoreLocation = $('[data-StoreLocationDropDown]');\n if ($dropdownStoreLocation.length && $dropdownStoreLocation.data('role') != \"dropdownlist\") {\n $dropdownStoreLocation.kendoDropDownList();\n }\n\n // var $dropdownState = $(\"#dropdownSupplierState\");\n // if ($dropdownState.length && $dropdownState.data('role') != \"dropdownlist\") {\n // $dropdownState.kendoDropDownList();\n // }\n },\n\n onClickSaveDraftButton: function() {\n var self = Core.PortalCheckoutShipping;\n var $btnSaveAsDraft = self.Cache.$btnSaveAsDraft;\n var $form = $('#frmSaveShipping');\n\n var isValidForm = function() {\n return self.validateShipping() && $form.valid();\n };\n\n var submitForm = function() {\n var action = $('#frmSaveShipping').attr('action').replace(\"SaveShipping\", 'SaveAsDraft')\n $form.attr('action', action);\n $form.attr('data-ajax-success', \"ajax_draf_OnSuccess\");\n $form.attr('data-ajax-failue', \"ajax_draf_OnFailure\");\n $form.attr('data-ajax-complete', \"ajax_draf_OnComplete\");\n\n $form.trigger('submit');\n };\n\n var onClickBtn = function(e) {\n e.stopPropagation();\n self.showValidation();\n\n isValidForm()\n && Core.ModalSaveDraft.show().onSaveDraft(submitForm);\n };\n\n $btnSaveAsDraft.on('click', onClickBtn);\n },\n\n handleBtnSubmit: function() {\n var _self = Core.PortalCheckoutShipping;\n\n _self.Cache.$btnContinueShipping.on('click', function (e) {\n e.stopPropagation();\n _self.showValidation();\n\n var $form = $('#frmSaveShipping');\n if(_self.validateShipping() && $form.valid()) {\n //console.log('submit');\n $form.trigger('submit');\n }\n });\n\n _self.onClickSaveDraftButton();\n\n _self.Cache.$btnRequestQuote.on('click', function (e) {\n e.stopPropagation();\n _self.showValidation();\n\n var $form = $('#frmSaveShipping');\n if (_self.validateShipping() && $form.valid()) {\n //console.log('submit');\n var action = $('#frmSaveShipping').attr('action').replace(\"SaveShipping\", 'RequestQuote')\n $form.attr('action', action);\n $form.attr('data-ajax-success', \"ajax_draf_OnSuccess\");\n $form.attr('data-ajax-failue', \"ajax_draf_OnFailure\");\n $form.attr('data-ajax-complete', \"ajax_draf_OnComplete\");\n\n $form.trigger('submit');\n }\n });\n },\n\n showValidation: function() {\n if (!$(\"[name=shippingCostOptions]\").is(\":checked\")) {\n if (!$(\".portal-checkout__listbox-options\").find(\".error\").length) {\n $(\".portal-checkout__listbox-options\")\n .append(\n \"\");\n }\n\n var $offset = $(\"[name=shippingCostOptions]\").offset();\n var offset = $offset ? $offset.top : 0;\n\n $(\"html, body\").animate({ scrollTop: offset - 30 }, 300);\n\n return;\n }\n\n if ($(\".portal-checkout__listbox-options\").find(\".error\").length)\n $(\".portal-checkout__listbox-options .error\").remove();\n }\n};\n\nCore.ModalSaveDraft = {\n show: function() {\n var _width = Core.IsMobile()\n ? Core.Cache.$window.width()\n : Core.Config.CartNotification.Width;\n\n var tmpl = `\n
\n
\n \n \n \n \n \n \n
\n Do you want to save the order as a draft?
\n Once saved as a draft, the order can be retrieved and edited from your dashboard.\n
\n
\n
\n \n \n
\n
\n `;\n\n $popup = $(tmpl).kendoWindow({\n width: _width,\n visible: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap',\n title: 'SAVE AS DRAFT',\n animation: false,\n close: function () {\n $('body').css('overflowY', '');\n }\n });\n\n $('body').css('overflowY', 'hidden');\n $popup.data(\"kendoWindow\").center();\n $popup.data(\"kendoWindow\").open();\n\n $(\".k-overlay\").on('click', function () {\n $popup.data(\"kendoWindow\").close();\n });\n\n $(\".k-window-action > span.k-i-close, .k-window [data-btn='cancel']\").on('click', function (e) {\n e.preventDefault();\n $popup.data(\"kendoWindow\").close();\n });\n\n $(\"[data-btn='save']\").on('click', function() {\n Core.ModalSaveDraft.Cache\n && Core.ModalSaveDraft.Cache.onSaveDraft\n && Core.ModalSaveDraft.Cache.onSaveDraft();\n\n $popup.data(\"kendoWindow\").close();\n });\n\n return this;\n },\n\n onSaveDraft: function(callback) {\n Core.ModalSaveDraft.Cache = {\n onSaveDraft: callback\n };\n },\n};\n","Core.PortalLogin = {\n init: function () {\n Core.PortalLogin.Cache = {\n $cbShowPassword: $(\".showPassword\"),\n $inputPassword: $(\"#password\"),\n };\n\n // this.showHidePassword();\n\n // functions below are used on DVA registration. Initiation happen on step 3\n // this.handleTacCheckbox();\n // this.initPopup();\n },\n\n showHidePassword: function () {\n Core.PortalLogin.Cache.$cbShowPassword.on(\"change\", function () {\n if (Core.PortalLogin.Cache.$inputPassword.attr(\"type\") == \"password\")\n Core.PortalLogin.Cache.$inputPassword.attr(\"type\", \"text\");\n else Core.PortalLogin.Cache.$inputPassword.attr(\"type\", \"password\");\n });\n },\n\n handleTacCheckbox: function () {\n var $checkbox = $(\"#register #termsAndConditionsCheckbox\");\n var $tacLink = $(\"#register a.termAndConditionPopup\");\n\n $checkbox.on(\"change\", function (e) {\n //keep chekbox unchanged\n var isChecked = this.checked;\n this.checked = !isChecked;\n $.uniform.update(\"#termsAndConditionsCheckbox\");\n\n Core.PortalLogin.showPopup($(\"#tacPopup\"), true);\n });\n\n $tacLink.on('click', function(e) {\n e.preventDefault();\n Core.PortalLogin.showPopup($(\"#tacPopup\"), true);\n });\n },\n\n handleTacButtons: function(btnId, isSelected) {\n var $popup = $(\"#tacPopup\");\n var $checkbox = $(\"#register #termsAndConditionsCheckbox\");\n var $btnRegister = $('#btn-register2');\n\n $popup.find(btnId).on('click', function (e) {\n e.stopPropagation();\n $checkbox.prop('checked', isSelected);\n $.uniform.update('#termsAndConditionsCheckbox');\n\n if (isSelected) $btnRegister.removeClass('disabled').prop('disabled', false);\n else $btnRegister.addClass('disabled').prop('disabled', true);\n\n Core.PortalLogin.showPopup($popup, false);\n });\n },\n\n initPopup: function (title) {\n var _self = Core.PortalLogin;\n var _width = 660;\n var $popup = $(\"#tacPopup\");\n\n if ($popup.length === 0) return;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n $popup.kendoWindow({\n title: \"TERMS & CONDITIONS\",\n width: _width,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n actions: [\"Close\"],\n pinned: true,\n draggable: false,\n animation: false,\n appendTo: \"#page-wrap\",\n });\n\n _self.handleTacButtons('#btnCancelPopup', false);\n _self.handleTacButtons('#btnAgreePopup', true);\n },\n\n showPopup: function ($popup, doShow) {\n doShow = doShow == undefined || null ? true : doShow; //set default to true/show\n\n var popupWindow = $popup.data(\"kendoWindow\");\n\n if (doShow) {\n popupWindow.center().open();\n } else {\n popupWindow.close();\n }\n },\n};\n","Core.PortalPickupStores = {\n Locator: {\n init: function () {\n\n Core.PortalPickupStores.Locator.Cache = {\n $map: $('#google-map-canvas')\n };\n\n var _self = this;\n\n _self.Map = null;\n _self.Markers = [];\n _self.InfoWindows = [];\n\n _self.data = window.StoreJson;\n\n Handlebars.registerHelper(\"storesGetIndex\", function (arr, options) {\n return $.map(arr, function (item, index) {\n item.$idx = index;\n return options.fn(item);\n }).join('');\n });\n\n if(Core.PortalPickupStores.Locator.Cache.$map.length) {\n this.setStartingPoint();\n this.createMap();\n }\n\n Core.Cache.$document.on(\"change\", '#dropdownStoreLocation', function (e) {\n\n e.preventDefault();\n var sIndex = this.selectedIndex;\n if (sIndex > 0) {\n var $store = window.StoreJson[this.selectedIndex-1];\n $content = '

' + $store.Name + '

'\n + '

' + $store.AddressLine1 + '

'\n + '

' + $store.Suburb + '

'\n + '

' + $store.State + ', ' + $store.Postcode + '

'\n + '

Phone: ' + $store.Phone + '

'\n + '

Business Hours:

' + $store.BusinessHours + '
';\n\n $('.shipping-option-desc').hide();\n $('.store-address-details').html($content);\n $('.store-address-details').show();\n\n _self.showStoreInfo(this.selectedIndex-1);\n _self.Map.setZoom(15);\n }\n else\n {\n $content = ' ';\n $('.shipping-option-desc').show();\n $('.store-address-details').html($content);\n $('.store-address-details').hide();\n\n //show default map\n _self.setStartingPoint();\n _self.Map.setCenter({ lat: lat, lng: longitude });\n _self.Map.setZoom(Core.IsMobile() ? 3 : 4);\n }\n \n });\n },\n\n setStartingPoint: function () {\n switch (window.CurrentState) {\n case 'act':\n if (Core.IsMobile()) {\n zoomLevel = 6;\n } else {\n zoomLevel = 7;\n }\n lat = -35.308;\n longitude = 149.124;\n break;\n case 'nsw':\n zoomLevel = 6;\n lat = -33.253;\n longitude = 148.921;\n break;\n case 'vic':\n zoomLevel = 7;\n\t\t\t if ( Core.IsMobile()) {\n\t\t\t\t\t lat = -37.471;\n\t\t\t\t\t\tlongitude = 144.785;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlat = -36.390;\n\t\t\t\t\t\tlongitude = 144.235;\n\t\t\t\t\t}\n break;\n case 'qld':\n zoomLevel = 6;\n\t\t\t\t\tif (Core.IsMobile()) {\n\t\t\t\t\t\tlat = -25.917;\n\t\t\t\t\t\tlongitude = 151.702;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlat = -23.803;\n\t\t\t\t\t\tlongitude = 145.571;\n\t\t\t\t\t}\n break;\n case 'sa':\n\t\t\t\t\tif (Core.IsMobile()){\n\t\t\t\t\t\tzoomLevel = 5;\n\t\t\t\t\t\tlat = -30.000;\n\t\t\t\t\t\tlongitude = 136.209;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tzoomLevel = 6;\n\t\t\t\t\t\tlongitude = 134.989;\n\t\t\t\t\t\tlat = -31.566;\n\t\t\t\t\t}\n break;\n case 'wa':\n\t\t\t\t\tif ( Core.IsMobile() ) {\n\t\t\t\t\t\tzoomLevel = 5;\n\t\t\t\t\t\tlat = -31.14;\n\t\t\t\t\t\tlongitude = 115.159;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tzoomLevel = 6;\n\t\t\t\t\t\tlat = -30.422;\n\t\t\t\t\t\tlongitude = 117.0266;\n\t\t\t\t\t}\n break;\n case 'tas':\n zoomLevel = 7;\n lat = -41.965;\n longitude = 146.628;\n break;\n case 'nt':\n zoomLevel = 5;\n lat = -19.491;\n longitude = 133.550;\n break;\n default:\n if (Core.IsMobile()) {\n zoomLevel = 3;\n } else {\n zoomLevel = 4;\n }\n lat = -28.926;\n longitude = 134.175;\n break;\n }\n },\n\n createMap: function () {\n var canvas = document.getElementById(\"google-map-canvas\");\n\n var options = {\n disableDefaultUI: true,\n scrollWheel: false,\n draggable: true,\n streetViewControl: false,\n zoom: zoomLevel,\n zoomControl: true,\n zoomControlOptions: {\n style: google.maps.ZoomControlStyle.SMALL,\n position: google.maps.ControlPosition.RIGHT_TOP\n },\n minZoom: 1,\n center: new google.maps.LatLng(lat, longitude),\n mapTypeId: google.maps.MapTypeId.ROADMAP\n };\n\n this.Map = new google.maps.Map(canvas, options);\n this.plotMarkers();\n canvas.classList.add('inited');\n },\n\n plotMarkers: function () {\n var _self = this;\n\n $.each(_self.data, function (i, store) {\n _self.Markers[i] = new google.maps.Marker({\n position: new google.maps.LatLng(store.Latitude, store.Longitude),\n map: _self.Map,\n title: store.Name,\n icon: Core.Config.StoreFinder.MarkerIconPath\n });\n\n\t\t\t\tvar _$infoContent = Core.PortalPickupStores.Locator._storeContent(store);\n\n _self.InfoWindows[i] = new google.maps.InfoWindow({\n content: _$infoContent\n });\n\n google.maps.event.addListener(_self.Markers[i], 'click', function () {\n _self.showStoreInfo(i);\n _self.Map.setZoom(15);\n });\n\n\t\t\t\tCore.PortalPickupStores.Locator._styleWindow(_self.InfoWindows[i]);\n });\n },\n \n showStoreInfo: function (idx) {\n for (var i = 0; i < this.InfoWindows.length; i++) {\n if (i !== idx) {\n if (this.InfoWindows[i] !== null) {\n this.InfoWindows[i].close();\n }\n }\n else if (this.InfoWindows[idx] !== null) {\n //this.InfoWindows[idx].open(this.Map, this.Markers[idx]);\n this.Map.setCenter(this.Markers[idx].position);\n }\n }\n },\n\n\t\t_styleWindow: function(info){\n // *\n // START INFOWINDOW CUSTOMIZE.\n // The google.maps.event.addListener() event expects\n // the creation of the infowindow HTML structure 'domready'\n // and before the opening of the infowindow, defined styles are applied.\n // *\n google.maps.event.addListener(info, 'domready', function () {\n var $iwCloseBtn = $('.gm-style-iw').next();\n var $img = $iwCloseBtn.find('img');\n\n if ($img.filter('.custom').length === 0) {\n $img.hide();\n $iwCloseBtn\n .css({opacity: '1', right: '15px', top: '15px', width: '35px', height: '35px'})\n .append('');\n }\n });\n\t\t},\n\t\t// Generates popup content\n\t\t_storeContent: function(store){\n\n\t\t\t// Get the Title\n\t\t\tvar _$infoContent = '';\n\t\t\tif(typeof store.Name === 'string')\n\t\t\t\t_$infoContent = '

' + store.Name + '

';\n\t\t\telse if(typeof store.Title === 'string')\n\t\t\t\t_$infoContent = '

' + store.Title + '

';\n\n\t\t\t// Body Content\n if (typeof store.AddressLine1 == 'string' && store.AddressLine1.length > 0) {\n _$infoContent = _$infoContent + store.AddressLine1 + '
';\n }\n if (typeof store.Suburb == 'string' && store.Suburb.length > 0) {\n _$infoContent = _$infoContent + store.Suburb + '
';\n }\n if (typeof store.State == 'string' && store.State.length > 0) {\n _$infoContent = _$infoContent + store.State + ', ';\n }\n if (typeof store.Postcode == 'string' && store.Postcode.length > 0) {\n _$infoContent = _$infoContent + store.Postcode;\n }\n if (typeof store.Phone == 'string' && store.Phone.length > 0) {\n _$infoContent = _$infoContent + '

Phone: ' + store.Phone;\n }\n if (typeof store.Fax == 'string' && store.Fax.length > 0) {\n _$infoContent = _$infoContent + '
Fax: ' + store.Fax;\n }\n if (typeof store.Email == 'string' && store.Email.length > 0) {\n _$infoContent = _$infoContent + '
Email: ' + store.Email;\n }\n\t\t\tif ( typeof store.Url === 'string' )\n\t\t\t\t_$infoContent = _$infoContent + '

View More
';\n\t\t\treturn _$infoContent;\n\t\t}\n },\n Details: {\n init: function () {\n\n var _location = document.getElementById(\"location-map\"),\n _latlng = new google.maps.LatLng(_location.getAttribute(\"data-latitude\"), _location.getAttribute(\"data-longitude\")),\n _mapOptions = {\n zoom: Core.Config.StoreFinder.MapDetailZoomLevel,\n center: _latlng,\n mapTypeId: google.maps.MapTypeId.ROADMAP,\n styles: [{\n featureType: \"poi\",\n elementType: \"labels\",\n stylers: [ { visibility: \"off\" } ]\n }, ]\n };\n\n var _map = new google.maps.Map(document.getElementById(\"map-canvas\"), _mapOptions);\n\n\n var Marker = new google.maps.Marker({\n position: _latlng,\n clickable: true,\n map: _map,\n icon: Core.Config.StoreFinder.MarkerIconPath\n });\n\n\n\t\t\tvar _$infoContent = Core.PortalPickupStores.Locator._storeContent(StoreJson);\n\n var InfoWindow = new google.maps.InfoWindow({\n content: _$infoContent\n });\n\n google.maps.event.addListener(Marker, 'click', function () {\n InfoWindow.open(_map, Marker);\n _map.setCenter(Marker.position);\n _self.Map.setZoom(15);\n });\n\t\t\tCore.PortalPickupStores.Locator._styleWindow(InfoWindow);\n }\n }\n};\n","Core.ProductCompare = {\n init: function () {\n $('.icon-close').on('click', function () {\n\n var _$this = $(this),\n _classToDelete = _$this.parents('td').attr(\"class\"),\n _table = _$this.parents('table'),\n _productCode = _$this.parents('td').attr(\"data-code\");\n\n _table.find('.' + _classToDelete).remove();\n\n if (_table.find('tr').first().children().length === 1) {\n _table.remove();\n $('#compare-empty').show();\n $('#compareTools').hide();\n }\n });\n\n try {\n addthis.init();\n }\n catch (e) { }\n }\n};","Core.ProductDetail = {\n init: function () {\n var _config = Core.Config.ProductDetail.Gallery;\n Core.ProductDetail.Cache = {\n $mainImg: $('#main-img'),\n $galleryThumbs: $('#gallery-thumnbs'),\n $productZoom: $('#product-zoom'),\n $360SpinnerButton: $('#spinnerInit'),\n $360Spinner: $('#magic360Spinner'),\n $rentalForm: $('#rental-form'),\n $trialForm: $('#trial-form'),\n $variants: $('#variants'),\n $variantSelections: $('#variantSelections'),\n $trialButton: $('.trial'),\n $rentButton: $('.rent'),\n $confirmationWindow: $('#confirmation-notification'),\n $addToQuoteButton: $('.addToQuote'),\n $scrollToTabs: $('.tab-check'),\n $favouriteBtn: $('#add-to-favourites'),\n $selectedVariantTitle: $('.product-details__variant--title'),\n $selectedVariantPrice: $('.product-details__variant--price span.price'),\n $selectedVariantListPrice: $('.product-details__variant--price span.was-price'),\n $selectedVariantCartBtn: $('.product-details__variant--cart'),\n $selectedVariantCompareBtn: $('.product-details__variant--compare'),\n $productTitle: '',\n $productPrice: '',\n $productListPrice: '',\n gallerySettings: {\n slideMargin: Core.Config.ProductDetail.Gallery.SlideMargin,\n slideWidth: _config.SlideWidth,\n minSlides: _config.MinSlides,\n maxSlides: _config.MaxSlides,\n moveSlides: _config.MoveSlides,\n auto: _config.Auto,\n speed: _config.Speed,\n pager: _config.Pager,\n infiniteLoop: _config.InfiniteLoop,\n hideControlOnEnd: _config.HideControlOnEnd,\n useCSS: _config.UseCSS\n },\n };\n\n $('.datepicker').kendoDatePicker({\n format: \"dd/MM/yyyy\"\n });\n\n try {\n addthis.init();\n }\n catch (e){}\n\n //product variant display\n if (this.Cache.$variants.length > 0) {\n this.variants.init();\n }\n\n //product variant selction display\n if (this.Cache.$variantSelections.length > 0) {\n this.variantSelection.init();\n }\n\n //image & 360 gallery\n Core.ProductDetail.Cache.$galleryThumbs.imagesLoaded(function() {\n Core.ProductDetail.gallery.init();\n });\n\n //trial\n this.trial();\n\n //rent\n this.rent();\n\n //scroll links to tabs\n this.scrollToTabs();\n\n //add|remove favourite\n this.favourites();\n this.viewMore();\n\n this.arrangeLayout();\n // this.setProductDetailHeight();\n var stockIntegration = new Core.StockIntegration('pdp');\n stockIntegration.init();\n\n var resizeTimer;\n $(window).on('resize', function (e) {\n clearTimeout(resizeTimer);\n resizeTimer = setTimeout(function () {\n Core.ProductDetail.arrangeLayout();\n // Core.ProductDetail.setProductDetailHeight();\n }, 100);\n });\n\n },\n variants: {\n init: function () {\n\n var _$groupPrice = $('#groupPrice');\n\n function updateVariantQuantity() {\n\n if (this.value() === null) {\n this.value(1);\n }\n\n var _sku = $(this.element).data('id'),\n _qty = this.value(),\n _groupPrice = 0;\n\n for (var i = 0; i < window.selectedVariants.length; i++) {\n if (window.selectedVariants[i]['sku'] == _sku) {\n window.selectedVariants[i].qty = _qty;\n break;\n }\n }\n\n for (var x = 0; x < selectedVariants.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n }\n\n if (_groupPrice === 0) {\n _$groupPrice.text(Core.Config.POA.Text).show();\n }\n else {\n _$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n }\n\n }\n\n if($('.product-details__variant--qty').length) {\n $('.product-details__variant--qty').kendoNumericTextBox({\n format: \"#\",\n step: 1,\n change: updateVariantQuantity,\n spin: updateVariantQuantity\n });\n }\n\n $('.related-products__accordion-tab').on('click', function () {\n var _$this = $(this);\n _$this.children('span').toggleClass('icon-plus-grey').toggleClass('icon-minus-grey');\n _$this.siblings('.related-products__accordion-content').slideToggle();\n });\n\n $('.related-products').each(function () {\n var _$firstAccordion = $(this).find('.related-products__accordion').first().children().first();\n _$firstAccordion.children().first().trigger('click');\n _$firstAccordion.find('ul').children().first().find('.related-products__accordion-tab').trigger('click');\n });\n }\n },\n variantSelection: {\n init: function () {\n var _$groupPrice = $('#groupPrice');\n window.selectedSkus = [];\n var selectionColour = $('#selection_colour').find('img');\n selectionColour.on('click', $.proxy(this.filter, this));\n selectionColour.on('click', function () {\n var _$this = $(this);\n if (_$this.closest('ul').hasClass('disabled')) {\n } else {\n $('img.selected').removeClass('selected');\n $(this).addClass('selected');\n }\n });\n\n $('.product-details__selection').find('select').on('change', $.proxy(this.filter, this));\n\n function updateVariantQuantity() {\n\n if (this.value() === null) {\n this.value(1);\n }\n\n var _sku = window.selectedSkus[0].Code,\n _qty = this.value(),\n _groupPrice = 0;\n\n for (var i = 0; i < window.selectedVariants.length; i++) {\n if (window.selectedVariants[i]['sku'] == _sku) {\n window.selectedVariants[i].qty = _qty;\n break;\n }\n }\n\n for (var x = 0; x < selectedVariants.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n }\n\n if (_groupPrice === 0) {\n _$groupPrice.text(Core.Config.POA.Text).show();\n }\n else {\n _$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n }\n }\n\n var _$selectionQuantity = $('#selection_qty');\n\n //init quantity input\n if(_$selectionQuantity.length) {\n _$selectionQuantity.kendoNumericTextBox({\n format: \"#\",\n step: 1,\n change: updateVariantQuantity,\n spin: updateVariantQuantity\n });\n\n this.numerictextbox = _$selectionQuantity.data(\"kendoNumericTextBox\");\n this.numerictextbox.enable(false);\n }\n\n Core.ProductDetail.Cache.$productTitle = Core.ProductDetail.Cache.$selectedVariantTitle.html();\n Core.ProductDetail.Cache.$productPrice = Core.ProductDetail.Cache.$selectedVariantPrice.text();\n Core.ProductDetail.Cache.$productListPrice = Core.ProductDetail.Cache.$selectedVariantListPrice.text();\n },\n renderProductDetail: function(data) {\n var $complexVar = $('#complexVariant');\n var isWholesale = Core.Util.isWholesale();\n data.IsDVA = Core.ProductDetail.isDVA();\n\n if($complexVar.hasClass('is-portalsite')) {\n var template = isWholesale ? \n kendo.template($(\"#productDetailVariantWholesaleTemplate\").html()) :\n kendo.template($(\"#productDetailVariantTemplate\").html()); \n \n var render = template(data);\n $complexVar.html(render);\n\n $('#complexVariant .product-details__variant--qty').kendoNumericTextBox({\n format: \"#\",\n step: 1,\n change: Core.ProductDetail.updateVariantQuantity,\n spin: Core.ProductDetail.updateVariantQuantity\n });\n\n if (!!$('#product-detail').data('check-local-stock-api')) {\n var stockIntegration = new Core.StockIntegration('pdp');\n stockIntegration.checkStockAsyncPdp(true);\n\n /*\n $complexVar.find('.stock-checkBtn').on('click', function () {\n var $btn = $(this); \n stockIntegration.updateStock(false, $btn.closest('.product-details__variant'));\n });\n $complexVar.find('.stock-changeSuburbBtn').on('click', function () {\n var $btn = $(this);\n stockIntegration.changeSuburb($btn.closest('.product-details__variant'));\n });\n */\n }\n }\n },\n filter: function (e) {\n var _$filter = $(e.target),\n _variants = $('.product-details__selection').not('.product-details__quantity'),\n _$variantOption = _$filter.parents('.product-details__selection'),\n _variantOption = _$variantOption.data('id'),\n _$nextItem = _$variantOption.next(),\n _nextFilter = _$nextItem.data('id'),\n _noMoreFilters = _$nextItem.hasClass('product-details__quantity'),\n _selectOptions = [],\n _variantVal;\n\n if (_variantOption === 'Colour') {\n var _variantOptionUl = _$variantOption.find('ul:first-child');\n if (_variantOptionUl.length > 0) {\n if (_variantOptionUl.hasClass('disabled')) {\n return;\n }\n }\n }\n\n // Clear previous selections\n window.selectedVariants = [];\n window.selectedSkus = [];\n\n // Reset form components\n if(this.numerictextbox) {\n this.numerictextbox.enable(false);\n this.numerictextbox.value(1);\n }\n\n Core.AddToQuote.Cache.$groupPrice.hide();\n Core.AddToQuote.Cache.$groupCode.hide();\n\n Core.ProductDetail.Cache.$selectedVariantTitle.html(Core.ProductDetail.Cache.$productTitle);\n Core.ProductDetail.Cache.$selectedVariantPrice.text(Core.ProductDetail.Cache.$productPrice);\n if (Core.ProductDetail.Cache.$productPrice !== Core.ProductDetail.Cache.$productListPrice) {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text(Core.ProductDetail.Cache.$productListPrice);\n } else {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text('');\n }\n\n Core.ProductDetail.Cache.$selectedVariantCartBtn.addClass('disabled');\n Core.ProductDetail.Cache.$selectedVariantCompareBtn.addClass('disabled');\n Core.ProductDetail.Cache.$selectedVariantCartBtn.data('id', '');\n Core.ProductDetail.Cache.$selectedVariantCartBtn.data('price', '');\n\n $('.product-details__variant').removeClass('selected');\n $('.product-details__variant--cart').removeClass('added');\n if (selectedVariants.length === 0) {\n $(Core.AddToQuote.Cache.addToQuoteSelector).add(Core.AddToQuote.Cache.$rentBtn).add(Core.AddToQuote.Cache.$trialBtn).addClass('disabled');\n } else {\n $(Core.AddToQuote.Cache.addToQuoteSelector).add(Core.AddToQuote.Cache.$rentBtn).add(Core.AddToQuote.Cache.$trialBtn).removeClass('disabled');\n }\n\n //clear all filters after current filter\n if (!_noMoreFilters) {\n _$variantOption.nextAll().not('.product-details__quantity').each(function () {\n var _$option = $(this),\n _$dropdown = _$option.find('select'),\n _$colours = _$option.find('ul');\n\n // clear dropdowns\n if (_$dropdown.length > 0) {\n if (Core.HasKendoDropdowns()) {\n _$dropdown.data(\"kendoDropDownList\").enable(false);\n var _dataSource = _$dropdown.data(\"kendoDropDownList\").dataSource.data([]);\n _dataSource = _$dropdown.data(\"kendoDropDownList\").dataSource.add({\n \"text\": 'Select ' + _$option.data('id'),\n \"value\": 0\n });\n _$dropdown.data(\"kendoDropDownList\").select(0);\n _$dropdown.data(\"kendoDropDownList\").trigger(\"change\");\n } else {\n _$dropdown.prop('disabled', 'disabled');\n _$dropdown.children().remove();\n _$dropdown.append('');\n }\n }\n\n // clear colour selection\n if (_$colours.length > 0) {\n _$colours.addClass('disabled');\n _$colours.find('img').show();\n _$colours.find('img.selected').removeClass('selected');\n }\n _$option.data('value', '');\n\n });\n }\n\n // if colour store value against variant\n if (_variantOption === 'Colour') {\n _$variantOption.data('value', _$filter.data('code').toLowerCase());\n }\n\n //store all selected attributes\n var _selectedAttributes = [];\n _variants.each(function () {\n var _$variant = $(this),\n _variantOption = _$variant.data('id'),\n _variantVal;\n\n if (_variantOption === 'Colour') {\n if (_$variant.data('value')) {\n _variantVal = _$variant.data('value').toLowerCase();\n } else {\n _variantVal = '0';\n }\n }\n else {\n _variantVal = _$variant.find('select').val().toLowerCase();\n }\n\n if (_variantVal !== '0') {\n _selectedAttributes.push(_variantVal);\n }\n });\n\n var _currentSelectedOption = _$filter.find('option:selected'),\n _currentSelectedOptionValue = \"0\";\n if (_variantOption === 'Colour') {\n _currentSelectedOptionValue = _$variantOption.data('value');\n } else if (_currentSelectedOption.length > 0) {\n _currentSelectedOptionValue = _currentSelectedOption.val();\n }\n\n if (_currentSelectedOptionValue !== \"0\") {\n\n var _$dropdown = _$nextItem.find('select'),\n _$colours = _$nextItem.find('ul'),\n _$allColours = _variants.find('ul');\n\n function isInArray(value, array) {\n return array.indexOf(value) > -1;\n }\n\n var minSalePrice = 0;\n var maxSalePrice = 0;\n var minListPrice = 0;\n var maxListPrice = 0;\n\n if (!_noMoreFilters) {\n _$allColours.find('img').hide();\n }\n\n //add active skus and generate option items for next filter\n for (var i = 0; i < jsonResult.length; i++) {\n var sku = jsonResult[i];\n\n //check sku attributes matches chosen values\n var _activeSku = true;\n for (var x = 0; x < _selectedAttributes.length; x++) {\n if (sku.Attributes) {\n if (sku.Attributes[Object.keys(sku.Attributes)[x]].toLowerCase() !== _selectedAttributes[x]) {\n _activeSku = false;\n break;\n }\n }\n }\n\n if (_activeSku) {\n window.selectedSkus.push(sku);\n\n if (!_noMoreFilters) {\n //generate dropdownlist for next filter\n if (sku.Attributes) {\n if (!isInArray(sku.Attributes[_nextFilter], _selectOptions)) {\n var _attribute = sku.Attributes[_nextFilter];\n _selectOptions.push(_attribute);\n\n if (_$dropdown.length > 0) {\n if (Core.HasKendoDropdowns()) {\n var dataSource = _$dropdown.data(\"kendoDropDownList\").dataSource.add({\n \"text\": _attribute,\n \"value\": _attribute\n });\n } else {\n _$dropdown.append('');\n }\n }\n }\n\n var _attributeColour = sku.Attributes[\"Colour\"];\n if (_attributeColour && _$allColours.length > 0 && _attributeColour.length > 0) {\n var _img = _$allColours.find('img[data-code=\"' + _attributeColour + '\"]');\n if (_img.length > 0) {\n _img.show();\n }\n }\n }\n\n if (sku.SalePrice !== Core.Config.POA.Text) {\n var salePrice = Number(sku.SalePrice.replace(/[^0-9\\.]+/g, \"\"));\n if (minSalePrice == 0 || salePrice < minSalePrice) {\n minSalePrice = salePrice;\n }\n if (salePrice > maxSalePrice) {\n maxSalePrice = salePrice;\n }\n }\n\n if (sku.ListPrice !== Core.Config.POA.Text) {\n var listPrice = Number(sku.ListPrice.replace(/[^0-9\\.]+/g, \"\"));\n if (minListPrice == 0 || listPrice < minListPrice) {\n minListPrice = listPrice;\n }\n if (listPrice > maxListPrice) {\n maxListPrice = listPrice;\n }\n }\n } else {\n // no more filters, so enable qty and add variant if only 1 exists\n if (window.selectedSkus.length === 1) {\n //this.numerictextbox.enable(true);\n\n Core.ProductDetail.Cache.$selectedVariantTitle.html('' + window.selectedSkus[0].Name + '' + window.selectedSkus[0].Code + '');\n Core.ProductDetail.Cache.$selectedVariantPrice.text(window.selectedSkus[0].SalePrice);\n if (window.selectedSkus[0].SalePrice !== window.selectedSkus[0].ListPrice) {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text(window.selectedSkus[0].ListPrice);\n } else {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text('');\n }\n Core.ProductDetail.Cache.$selectedVariantCartBtn.removeClass('disabled');\n Core.ProductDetail.Cache.$selectedVariantCartBtn.show();\n Core.ProductDetail.Cache.$selectedVariantCompareBtn.removeClass('disabled');\n Core.ProductDetail.Cache.$selectedVariantCartBtn.data('id', window.selectedSkus[0].Code);\n Core.ProductDetail.Cache.$selectedVariantCartBtn.data('price', window.selectedSkus[0].Price);\n\n this.renderProductDetail(window.selectedSkus[0]);\n\n Core.ProductDetail.Cache.$selectedVariantCartBtn.trigger(\"click\");\n }\n }\n }\n }\n\n if (!_noMoreFilters) {\n //alert(\"MINS: \" + minSalePrice + \" MAXS\" + maxSalePrice + \"MINL: \" + minListPrice + \" MAXL\" + maxListPrice);\n var newSalePrice = \"$\" + minSalePrice.toFixed(2);\n if (minSalePrice == 0) {\n newSalePrice = Core.Config.POA.Text;\n }\n if (minSalePrice != maxSalePrice && maxSalePrice > 0) {\n newSalePrice = newSalePrice + \" - \" + \"$\" + maxSalePrice.toFixed(2);\n }\n Core.ProductDetail.Cache.$selectedVariantPrice.text(newSalePrice);\n\n var newListPrice = \"$\" + minListPrice.toFixed(2);\n if (minListPrice == 0) {\n newListPrice = Core.Config.POA.Text;\n }\n if (minListPrice != maxListPrice && maxListPrice > 0) {\n newListPrice = newListPrice + \" - \" + \"$\" + maxListPrice.toFixed(2);\n }\n if (newSalePrice !== newListPrice) {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text(newListPrice);\n } else {\n Core.ProductDetail.Cache.$selectedVariantListPrice.text('');\n }\n\n if (_$dropdown.length > 0) {\n if (Core.HasKendoDropdowns()) {\n _$dropdown.data(\"kendoDropDownList\").enable(true);\n } else {\n _$dropdown.prop('disabled', false);\n }\n }\n\n if (_$colours.length > 0) {\n _$colours.removeClass('disabled');\n }\n }\n } else {\n $('#complexVariant').html('');\n }\n\n //reset select options\n _selectOptions = [];\n }\n },\n gallery: {\n init: function () {\n if (Core.ProductDetail.Cache.$galleryThumbs.children().length > 1) {\n //render thumbnails\n Core.ProductDetail.Cache.$galleryThumbs.bxSlider(Core.ProductDetail.Cache.gallerySettings).css('visibility', 'visible');\n\n //thumbnail click event\n Core.ProductDetail.Cache.$galleryThumbs.find('span').on('click', $.proxy(this.thumbnailClick, this));\n } else {\n // hide thumbnails wrapper div\n Core.ProductDetail.Cache.$galleryThumbs.addClass('hidden');\n }\n\n if (!Core.IsMobile()) {\n //image zoom\n // Core.ProductDetail.Cache.$productZoom.on('mouseover', $.proxy(this.zoom, this));\n }\n else {\n //main image slide\n this.mobileGallery();\n }\n\n //360 image\n this.spinner360();\n },\n\n thumbnailClick: function (e) {\n e.preventDefault();\n\n Core.Cache.$body.children('.zoomContainer').remove();\n\n if (Core.ProductDetail.Cache.$360SpinnerButton.hasClass('active')) {\n window.magic360spinner.stop();\n Core.ProductDetail.Cache.$360Spinner.hide();\n Core.ProductDetail.Cache.$mainImg.show();\n Core.ProductDetail.Cache.$360SpinnerButton.removeClass('active');\n }\n\n var _$thumb = $(e.target).parent();\n _$thumb.addClass('active').parent().siblings().children().removeClass('active');\n\n Core.ProductDetail.Cache.$mainImg\n \t\t\t\t.find('img.main-image')\n .attr('src', _$thumb.data('mainimg'))\n .data('zoom-image', _$thumb.data('zoom-image'));\n\n /*if (_$thumb.data('zoom-image') === '') {\n Core.ProductDetail.Cache.$mainImg.find('button#product-zoom').hide();\n Core.Cache.$body.children('.zoomContainer').remove();\n } else {\n Core.ProductDetail.Cache.$mainImg.find('button#product-zoom').show();\n this.zoom();\n }*/\n\n },\n\n\t\t// Handle product Zoom\n /*zoom: function () {\n $('.main-image').elevateZoom({\n zoomType : \"inner\",\n zoomWindowFadeIn: 300,\n zoomWindowFadeOut: 300\n });\n },*/\n mobileGallery: function () {\n var $mainImage = Core.ProductDetail.Cache.$mainImg.children('img');\n\n function scrollGallery($current, direction) {\n var _$images = Core.ProductDetail.Cache.$galleryThumbs.find('li');\n\n $current.find('span').removeClass('active');\n\n var currentIndex = _$images.index($current);\n currentZoomIndex = currentIndex;\n\n var _$next;\n if (direction === 'next') {\n _$next = $current.next();\n\n if (currentIndex == (_$images.length - 1)) {\n _$next = _$images.first();\n }\n }\n else {\n _$next = $current.prev();\n\n if (currentIndex === 0) {\n _$next = _$images.last();\n }\n }\n\n loadNextImage(_$next);\n }\n\n function loadNextImage($next) {\n var _$span = $next.find('span');\n _$span.addClass('active');\n\n $mainImage.on('load', function () {\n }).attr('src', _$span.data('mainimg'));\n }\n\n $mainImage.touchwipe({\n wipeLeft: function () {\n scrollGallery(Core.ProductDetail.Cache.$galleryThumbs.find(\"span.active\").parent(), 'next');\n },\n wipeRight: function () {\n scrollGallery(Core.ProductDetail.Cache.$galleryThumbs.find(\"span.active\").parent(), 'previous');\n },\n preventDefaultEvents: false\n });\n\n if (Core.ProductDetail.Cache.$galleryThumbs.children().length < 2) {\n Core.ProductDetail.Cache.$mainImg.addClass('single-image');\n } else {\n $('.mobile-gallery-btn.btn-prev').on('click', function () {\n scrollGallery(Core.ProductDetail.Cache.$galleryThumbs.find(\"span.active\").parent(), 'previous');\n });\n $('.mobile-gallery-btn.btn-next').on('click', function () {\n scrollGallery(Core.ProductDetail.Cache.$galleryThumbs.find(\"span.active\").parent(), 'next');\n });\n }\n },\n spinner360: function () {\n var _scriptTag = document.createElement('script');\n _scriptTag.setAttribute('type', 'text/javascript');\n _scriptTag.setAttribute('src', '/site.resource/vendor/magic360spin/magic360.js');\n (document.getElementsByTagName('head')[0] || document.documentElement).appendChild(_scriptTag);\n\n Core.ProductDetail.Cache.$360SpinnerButton.on('click', function () {\n var _$this = $(this);\n if (!_$this.hasClass('active')) {\n window.magic360spinner.start();\n Core.ProductDetail.Cache.$360Spinner.show();\n //Core.ProductDetail.Cache.$mainImg.hide();\n _$this.addClass('active');\n }\n });\n }\n },\n trial: function () {\n\n Core.ProductDetail.Cache.$trialButton.on('click', function (e) {\n Core.ProductDetail.addProductsToFormField(e, Core.ProductDetail.Cache.$trialButton, Core.ProductDetail.Cache.$trialForm, Core.ProductDetail.Cache.$rentButton, Core.ProductDetail.Cache.$rentalForm);\n });\n\n Core.ProductDetail.Cache.$trialForm.on('submit', function (e) {\n Core.ProductDetail.formPost(e, Core.ProductDetail.Cache.$trialForm);\n });\n\n if (Core.GetParameterByName('trial')) {\n var code = Core.GetParameterByName('code');\n if (code.length > 0) {\n $('span.product-details__variant--cart[data-id=\"' + code + '\"]').trigger(\"click\");\n Core.ProductDetail.Cache.$trialButton.trigger(\"click\");\n }\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: $('.product-details__btn-group--price').offset().top\n }, 2000);\n }\n },\n rent: function () {\n\n Core.ProductDetail.Cache.$rentButton.on('click', function (e) {\n Core.ProductDetail.addProductsToFormField(e, Core.ProductDetail.Cache.$rentButton, Core.ProductDetail.Cache.$rentalForm, Core.ProductDetail.Cache.$trialButton, Core.ProductDetail.Cache.$trialForm);\n });\n\n Core.ProductDetail.Cache.$rentalForm.on('submit', function (e) {\n Core.ProductDetail.formPost(e, Core.ProductDetail.Cache.$rentalForm);\n });\n\n if (Core.GetParameterByName('rent')) {\n var code = Core.GetParameterByName('code');\n if (code.length > 0) {\n $('span.product-details__variant--cart[data-id=\"' + code + '\"]').trigger(\"click\");\n Core.ProductDetail.Cache.$rentButton.trigger(\"click\");\n }\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: $('.product-details__btn-group--price').offset().top\n }, 2000);\n }\n },\n addProductsToFormField: function (e, $btn, $form, $otherBtn, $otherForm) {\n if (!$btn.hasClass('disabled')) {\n var _productCode = $('span.added');\n var $btnParent = $btn.closest('.product-details__btn-group');\n\n var blkstr = [];\n $.each(_productCode, function (i, e) {\n var str = $(e).data('id');\n blkstr.push(str);\n });\n\n $form.show().find('.productCode').val(blkstr.join(\",\"));\n Core.ProductDetail.closeFormField($otherForm);\n\n $btn.addClass('selected');\n $otherBtn.removeClass('selected');\n\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: $btnParent.offset().top - 15\n }, 500);\n }\n else {\n e.preventDefault();\n }\n },\n closeFormField: function ($form) {\n $form.hide();\n },\n formPost: function (e, $form) {\n\n e.preventDefault();\n\n var _$validationMessage = $form.find('.frm-validation-msg');\n _$validationMessage.html(\"\");\n\n var _$isRentalForm = $form.attr('action').indexOf('rent') !== -1;\n\n var _$validator = $form.validate({\n focusInvalid: false,\n invalidHandler: function (form, validator) {\n\n if (!validator.numberOfInvalids())\n return;\n\n $('html, body').animate({\n scrollTop: $(validator.errorList[0].element.parentElement).offset().top - 30\n }, 300);\n\n }\n });\n\n if ($form.valid()) {\n\n Core.ShowPageLoading();\n\n if (selectedVariants.length > 0) {\n var _$productData = JSON.stringify(selectedVariants);\n if (_$isRentalForm) {\n Core.ProductDetail.Cache.$rentalForm.find('.productCode').val(_$productData);\n } else {\n Core.ProductDetail.Cache.$trialForm.find('.productCode').val(_$productData);\n }\n }\n\n $.ajax({\n url: $form.attr('action'),\n data: $form.serialize(),\n type: 'POST',\n dataType: 'json',\n success: function(data) {\n Core.HidePageLoading();\n var _$validationMessage = $form.find('.frm-validation-msg');\n _$validationMessage.hide();\n if (data.Success) {\n $form.hide();\n var _width = Core.Config.CartNotification.Width,\n _height = Core.Config.CartNotification.Height;\n\n if (Core.IsMobile()) {\n _width = Core.Cache.$window.width();\n }\n\n var _$confirmationWindow = Core.ProductDetail.Cache.$confirmationWindow.kendoWindow({\n width: _width,\n height: _height,\n visible: false,\n iframe: false,\n modal: true,\n resizable: false,\n pinned: true,\n draggable: false,\n appendTo: '#page-wrap'\n });\n\n var _$regLink = _$confirmationWindow.find(\"a.register\");\n if (_$regLink.length > 0) {\n var _$href = _$regLink.attr(\"href\");\n _$regLink.attr(\"href\", _$href + \"?quoteid=\" + data.QuoteId);\n }\n\n _$confirmationWindow.data(\"kendoWindow\").center().open();\n\n $(\".k-overlay\").on('click', function() {\n window.location.href = window.location.href;\n });\n\n $(\".k-window-action > span.k-i-close, .cart-notification-buttons > a.k-i-close\").on('click', function (e) {\n window.location.href = window.location.href;\n });\n\n } else {\n _$validationMessage.html('
' + data.ErrorMessage + '
').show();\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: _$validationMessage.offset().top - 40\n }, 500);\n }\n },\n error: function(xhr, ajaxOptions, thrownError) {\n //todo: do something\n }\n });\n } else {\n _$validator.focusInvalid();\n }\n },\n scrollToTabs: function () {\n Core.ProductDetail.Cache.$scrollToTabs.on('click', function (e) {\n e.preventDefault();\n var _$this = $(this),\n _$tab = $('.product-extras__tab a[data-check-name=\"' + _$this.data(\"check-name\") + '\"]');\n\n if (!_$tab.hasClass('active')) {\n _$tab.trigger('click');\n }\n\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: _$tab.offset().top\n }, 1000);\n });\n },\n favourites: function () {\n var _self = Core.ProductDetail;\n\n _self.Cache.$favouriteBtn.on('click', function (e) {\n Core.ShowPageLoading();\n\n var $this = $(this),\n _stateRemove = $this.hasClass('active'),\n _apiUrl = _stateRemove ? '/cart/removefromfavourites' : '/cart/addtofavourites',\n $errorBox = $('#product-detail .portal-error');\n\n $.ajax({\n url: _apiUrl,\n data: {\n code: _self.Cache.$favouriteBtn.data('id')\n },\n type: 'get',\n dataType: 'json',\n success: function (data) {\n //console.log(data);\n if(data.WasSuccess) {\n if (_stateRemove) {\n $this.attr('title', Core.Config.FavouriteText.Add).text(Core.Config.FavouriteText.Add);\n } else {\n $this.attr('title', Core.Config.FavouriteText.Remove).text(Core.Config.FavouriteText.Remove);\n }\n Core.ShowErrorMessage($errorBox, null, false);\n _self.Cache.$favouriteBtn.toggleClass('active');\n } else {\n Core.ShowErrorMessage($errorBox, {\n title: Core.Config.FavouriteText.ErrorTitle,\n message: data.Result\n });\n }\n\n Core.HidePageLoading();\n },\n error: function (xhr, status, error) {\n Core.ShowErrorMessage($errorBox, {\n title: Core.Config.FavouriteText.ErrorTitle,\n message: [\n xhr.responseText,\n \"Status: \" + xhr.status,\n \"Error: \" + error\n ]\n });\n Core.HidePageLoading();\n }\n });\n\n e.preventDefault();\n });\n },\n viewMore: function() {\n var productDescription = $('.product-details__description');\n var productDescriptionClass = $('.product-details__description.less');\n var descHeight = 240;\n\n if (productDescription.height() < descHeight) {\n $('.showLessMore').hide();\n } else {\n productDescriptionClass.css('height', descHeight + 'px');\n }\n\n $('.showLessMore a:first').on('click', function (e) {\n e.preventDefault();\n\n\n if (productDescription.hasClass('less')) {\n productDescription.removeClass('less');\n productDescriptionClass.css('height', 'inherit');\n $(e.target).text('Show less');\n $(e.target).attr('title', 'less');\n } else {\n productDescription.addClass('less');\n productDescriptionClass.css('height', descHeight + 'px');\n $(e.target).text('Show more');\n $(e.target).attr('title', 'more');\n if (Core.IsMobile()) {\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: $('.product-detail__title').offset().top - 20\n }, 1000);\n }\n }\n });\n },\n\n arrangeLayout: function () {\n //check if mobile\n var $desc = $('.product-details__column-description')\n , $trial = $('.product-details__column-availability');\n\n var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\n\n //check tablet\n if (width >= 600 && width < Core.Config.TabletWidth) {\n $desc.prependTo('.product-details__columnwrap');\n $trial.appendTo('.product-details__column-left');\n } else {\n //desktop and small mobile (less than 600px) /\n $desc.prependTo('.product-details__column-left');\n $trial.appendTo('.product-details__column-right');\n }\n },\n updateVariantQuantity: function() {\n //copy from above. this should be a global function since it's using more than place\n if (this.value() === null) {\n this.value(1);\n }\n\n var _$groupPrice = $('#groupPrice');\n var _sku = window.selectedSkus[0].Code,\n _qty = this.value(),\n _groupPrice = 0;\n\n for (var i = 0; i < window.selectedVariants.length; i++) {\n if (window.selectedVariants[i]['sku'] == _sku) {\n window.selectedVariants[i].qty = _qty;\n break;\n }\n }\n\n for (var x = 0; x < selectedVariants.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n }\n\n if (_groupPrice === 0) {\n _$groupPrice.text(Core.Config.POA.Text).show();\n }\n else {\n _$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n }\n },\n\n setProductDetailHeight: function() {\n var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\n\n if (width >= Core.Config.MobileWidth && width <= Core.Config.TabletWidth) {\n var h = $('.product-details__gallery-wrap').height();\n $('.product-details__block-details').css('height', h + 20 + \"px\");\n } else {\n $('.product-details__block-details').css('height', '');\n }\n\n },\n isDVA: function() {\n var isDVA = $(`#isDVA`).val() || '';\n return (isDVA.toString() === 'true');\n },\n};\n","Core.ProductListing = {\n init: function () {\n this.initAccordion();\n },\n variants: {\n init: function () {\n Core.ProductListing.Cache = {\n $variants: $('.product-details__variants')\n };\n\n //var _$groupPrice = $('#groupPrice');\n\n Core.AddToQuote.Cache.$groupPrice = $('#groupPrice');\n Core.AddToQuote.Cache.$groupCode = $('#groupCode');\n\n function updateVariantQuantity() { \n if (this.value() === null) {\n this.value(1);\n }\n\n // set selectedVariants if undefined\n if (typeof selectedVariants === 'undefined') {\n selectedVariants = [];\n }\n\n var _sku = $(this.element).data('id'),\n _qty = this.value(),\n _groupPrice = 0;\n\n for (var i = 0; i < window.selectedVariants?.length; i++) {\n if (window.selectedVariants[i]['sku'] == _sku) {\n window.selectedVariants[i].qty = _qty;\n break;\n }\n }\n\n for (var x = 0; x < selectedVariants?.length; x++) {\n _groupPrice += parseFloat(selectedVariants[x].price * selectedVariants[x].qty);\n }\n\n if (_groupPrice === 0) {\n Core.AddToQuote.Cache.$groupPrice.text(Core.Config.POA.Text).show();\n }\n else {\n Core.AddToQuote.Cache.$groupPrice.text('$' + _groupPrice.toFixed(2)).show();\n }\n\n // $(this.element).trigger('input');\n // $(this.element).trigger('blur'); // prevent call api twice after changing using spinner\n }\n\n /*\n var handleQtyChange = Core.Util.Debounce(function($row) { \n Core.ProductListing.checkLocalStockVariant($row); \n }, 300);\n */\n\n $(\".product-details__variant--qty\").each(function(index, element) {\n var $elem = $(element);\n var $row = $elem.closest('.plv__variant-row')\n\n // Check if element has been initialized\n if ($elem.hasClass('k-widget') ||\n $elem.hasClass('k-input') ||\n $elem.hasClass('k-numerictextbox') ||\n $elem.hasClass('k-input-inner')) {\n return;\n }\n\n $elem.kendoNumericTextBox({\n format: \"#\",\n step: 1,\n change: updateVariantQuantity,\n spin: updateVariantQuantity\n });\n \n /*\n if (`${$('#product-listing').data('list-view')}`?.toLowerCase() === 'true') {\n $row.find('.k-icon-button').on('click', function() {\n handleQtyChange($row);\n });\n\n $row.find('input.product-details__variant--qty').on('change', function() { \n handleQtyChange($row);\n });\n }\n */\n });\n }\n },\n clearSelections: function () {\n window.selectedVariants = [];\n },\n setItemHeight: function () {\n var $prodDetails = document.querySelectorAll('.product-details.is-portalsite');\n if ($prodDetails) Core.Util.setFakeRowHeights($prodDetails);\n },\n initAccordion: function () {\n if ($(\"#plv__panelbar\").length === 0) return;\n\n $(\"#plv__panelbar\").kendoPanelBar({\n expand: function(e) {\n var plp = Core.ProductListing;\n var $panelItem = $(e.item);\n plp.variants.init();\n plp.checkStockPanel($panelItem);\n },\n });\n },\n checkStockPanel: function($panelItem) {\n var CLS_HIDE = 'd-none';\n var CLS_CHECKED = 'has-checked';\n\n if ($panelItem.hasClass(CLS_CHECKED)) return;\n\n var $page = $('#product-listing');\n var api = $page.data('check-local-stock-api');\n var variants = [];\n\n var $rows = $panelItem.find('.plv__variant-row');\n var location = {\n suburb: $page.attr('data-suburb'),\n state: $page.attr('data-state'),\n postCode: $page.attr('data-postcode'),\n };\n\n $rows.each(function(i, row) {\n var $qty = $(row).find('input[name=\"qty\"]');\n variants.push({\n qty: $qty.val(),\n sku: $qty.data('id'),\n });\n });\n\n $.ajax({\n url: api,\n data: {\n variants: variants,\n location: location,\n setLocation: false,\n },\n type: 'POST',\n dataType: 'json',\n success: function(data) { \n $panelItem.addClass(CLS_CHECKED);\n \n if (data.isSuccess) {\n var stockData = data.stocks;\n \n if (stockData.length > 0) {\n stockData.forEach(function(item, index) {\n var $row = $panelItem.find(`.plv__variant-row[data-id=\"${item.sku}\"]`);\n if ($row.length === 0) return;\n \n // keep stock-national if no value\n if (Core.Util.isEmpty(item.value)) {\n return;\n }\n \n var $local = $row.find(`.stock-local`);\n $local.find('.stock-status').css('background-color', item.colour);\n $local.find('.stock-message').html(`${item.value}`);\n $local.addClass(CLS_CHECKED);\n $row.find(`.stock-national`)?.addClass(CLS_HIDE);\n });\n }\n } else {\n console.log('error', data.message);\n }\n },\n error: function(xhr, ajaxOptions, thrownError) { \n console.log('error', xhr, ajaxOptions, thrownError);\n }\n });\n },\n checkLocalStockVariant: function($row) {\n var $page = $('#product-listing');\n var api = $page.data('check-local-stock-api');\n if (!api) {\n console.log('Please provide the api url for stock check (data-check-local-stock-api)');\n return;\n }\n\n var $qty = $row.find('input[name=\"qty\"]');\n var variants = [{\n qty: $qty.val(),\n sku: $qty.data('id'),\n mainsku: $qty.data('id'),\n }];\n\n $.ajax({\n url: api,\n data: {\n variants: variants,\n setLocation: false,\n },\n type: 'POST',\n dataType: 'json',\n success: function(data) {\n if (data.isSuccess) {\n var item = data.stocks?.length > 0 && data.stocks[0];\n if (!item) return;\n\n var $local = $row.find(`.stock-local`);\n $local.find('.stock-status').css('background-color', item.colour);\n $local.find('.stock-message').html(item.value);\n $local.addClass(CLS_CHECKED);\n }\n },\n error: function(xhr, ajaxOptions, thrownError) {\n console.log('error', xhr, ajaxOptions, thrownError);\n }\n });\n \n },\n};","function SelectValidator(elemSelector) {\n var elem = (elemSelector instanceof HTMLSelectElement)\n ? elemSelector\n : document.querySelector(elemSelector);\n\n if (elem == null) {\n return;\n }\n\n var requiredMsg = (elem.dataset && elem.dataset.msgRequired) ? elem.dataset.msgRequired : 'Please select a value';\n var isRequired = (elem.dataset && elem.dataset.ruleRequired && elem.dataset.ruleRequired === 'true');\n\n function showError(errorMsg) {\n var div = elem.parentElement.parentElement;\n var span = div.querySelector('span.k-dropdownlist');\n var label = div.querySelector('label');\n\n span\n && span.classList\n && span.classList.add('error');\n\n label\n && $(label).remove();\n\n $(div).append('');\n }\n\n function clearError() {\n var div = elem.parentElement.parentElement;\n var span = div.querySelector('span.k-dropdownlist');\n\n span\n && span.classList\n && span.classList.remove('error');\n\n $(div).find('label').remove();\n }\n\n function isRequiredValid() {\n return (elem.value !== '');\n }\n\n if (isRequired) {\n $(elem).data(\"kendoDropDownList\") &&\n $(elem).data(\"kendoDropDownList\").bind(\"change\", function() {\n if ($(elem).data(\"kendoDropDownList\").value() !== '') {\n clearError();\n }\n });\n }\n\n var m = {\n isValid: function() {\n var isValid = true;\n\n if (isRequired && !isRequiredValid()) {\n showError(requiredMsg);\n return false;\n }\n\n clearError();\n return isValid;\n },\n elemSelector: elemSelector,\n };\n\n return m;\n};\n\n","/**\n * \n * @param {string} pageType values: pdp, checkout\n * @returns \n */\nCore.StockIntegration = function(pageType) {\n var PAGE_TYPE = {\n PDP: 'pdp',\n CHECKOUT: 'checkout',\n CO_AGEDCARE: 'co_agedcare',\n }\n var CLS_HIDE = 'd-none';\n var CLS_CHECKED = 'has-checked';\n var CLS_LOCATION = 'has-location';\n\n var currentSku = '';\n var currentMainSku = '';\n var $currentVariant = '';\n var $locationPopup = $('#stock-location-popup');\n var isPdp = pageType === 'pdp';\n var isAgedCare = Core.Util.isAgedCare();\n \n var $page = getPageType();\n var isWholesale = $page.hasClass('product-detail--wholesale');\n\n function getPageType() {\n switch (pageType) {\n case PAGE_TYPE.PDP:\n default:\n return $('#product-detail');\n case PAGE_TYPE.CHECKOUT:\n return $('#portal-checkout');\n case PAGE_TYPE.CO_AGEDCARE:\n return $('#cart');\n }\n }\n\n function getParentSelector($btn) {\n switch (pageType) {\n case PAGE_TYPE.PDP:\n default:\n var $parent = $btn.closest('.product-details__variant');\n return $parent.length > 0 ? $parent : $btn.closest('.product-details__columnwrap');\n case PAGE_TYPE.CHECKOUT:\n return $btn.closest('.portal-checkout__stock');\n case PAGE_TYPE.CO_AGEDCARE:\n return $btn.closest('.product-row');\n }\n }\n\n function handleCheckStock() {\n var $stockCheckBtn = $('.stock-checkBtn');\n if ($stockCheckBtn.length === 0) return;\n \n $stockCheckBtn.on('click', function(e) {\n var $btn = $(this);\n var $parent = getParentSelector($btn);\n \n setVariables($parent);\n \n // if postcode is already set, check stock directly\n if ($page.attr('data-postcode')) {\n checkStock(false);\n } else {\n openPopup();\n }\n });\n }\n\n function handleChangeSuburb() {\n var $changeSuburbBtn = $('.stock-changeSuburbBtn');\n if ($changeSuburbBtn.length === 0) return;\n\n $changeSuburbBtn.on('click', function(e) {\n e.preventDefault();\n var $btn = $(this);\n var $parent = getParentSelector($btn);\n setVariables($parent);\n openPopup();\n });\n }\n\n function setVariables($parent) {\n var sku = $parent.find('[name=\"qty\"]').data('id');\n var mainSku = $parent.find('.mainProdSku').val();\n\n currentSku = sku;\n currentMainSku = mainSku;\n $currentVariant = $parent;\n // value is empty on variant-selector, so set to global window variable\n window.currentSku = sku;\n window.currentMainSku = mainSku;\n window.$currentVariant = $parent;\n }\n\n function openPopup() {\n var popup = new ClientPopup($locationPopup, {title: 'Enter your postcode for local stock availability'});\n popup.init();\n }\n\n function handleSetLocation() {\n var $setLocationBtn = $('.stock-setLocationBtn');\n if ($setLocationBtn.length === 0) return;\n\n $setLocationBtn.on('click', function(e) {\n e.preventDefault();\n var $btn = $(this);\n var $form = $btn.closest('form');\n\n $page.attr({\n 'data-postcode': $form.find('.addressAutocomplete-postcode').val(),\n 'data-suburb': $form.find('.addressAutocomplete-suburb').val(),\n 'data-state': $form.find('.addressAutocomplete-state').val(),\n });\n\n if (!$form.valid()) return;\n\n $('.stock-local').addClass(CLS_LOCATION);\n checkStock(true);\n });\n }\n\n function checkStock(setLocation) {\n // get location from page element\n var api = $page.data('check-local-stock-api');\n if (!api) {\n console.log('Please provide the api url for stock check (data-check-local-stock-api)');\n return;\n }\n\n var _$currentVariant = $currentVariant || window.$currentVariant;\n var location = {\n suburb: $page.attr('data-suburb'),\n state: $page.attr('data-state'),\n postCode: $page.attr('data-postcode'),\n };\n\n if (!location.postCode) {\n openPopup();\n return;\n }\n\n // make sure it select the first one cause some producst has children within the current variant selector\n var $loader = _$currentVariant.find('.loading-overlay').first();\n var $wrap = _$currentVariant.find('.stock-wrap').first();\n var $local = $wrap.find('.stock-local');\n var $stockCheckBtn = _$currentVariant.find('.stock-checkBtn').first();\n var $error = setLocation ? $('.stock-setLocationError') : _$currentVariant.find('.stock-error').first(); \n\n if (setLocation) {\n Core.ShowPageLoading();\n } else {\n $stockCheckBtn.prop('disabled', true);\n $loader.removeClass(CLS_HIDE);\n }\n\n $error.addClass(CLS_HIDE);\n\n var variants = [];\n if (isPdp) {\n if (isWholesale) {\n $('#variants .product-details__variant--row').each(function(i, row) {\n variants.push({\n qty: row.querySelector('input[name=\"qty\"]')?.value || 1,\n sku: row.dataset.id,\n });\n });\n } else {\n variants.push({\n qty: 1,\n sku: currentSku || window.currentSku,\n mainsku: currentMainSku || window.currentMainSku,\n });\n }\n } else {\n // push all variants for checkout page\n if (isAgedCare) {\n $('.product-row').each(function(i, row) {\n variants.push({\n qty: row.querySelector('input[name=\"qty\"]')?.value || 1,\n sku: row.dataset.id,\n });\n });\n } else {\n $('.portal-checkout__row.buy-row').each(function(i, row) {\n variants.push({\n qty: row.querySelector('input.portal-checkout__purchase-qty')?.value || 1,\n sku: row.dataset.id,\n });\n });\n }\n }\n\n $.ajax({\n url: api,\n data: {\n variants: variants,\n location: location,\n setLocation: setLocation,\n },\n type: 'POST',\n dataType: 'json',\n success: function(data) { \n if (data.isSuccess) {\n var stockData = data.stocks.length > 0 && \n (isPdp && !isWholesale) ? data.stocks[0] : data.stocks; // get first item for pdp\n\n // Reset all local stock info\n if (setLocation) {\n $('.stock-local').removeClass(CLS_CHECKED);\n $('.stock-checkBtn').removeClass(CLS_HIDE);\n }\n \n if (isPdp) {\n isWholesale ? \n onSuccessCheckStock(location, stockData) :\n onSuccessCheckStockPdp(location, $local, stockData);\n } else {\n onSuccessCheckStock(location, stockData);\n }\n\n // Close popup \n if (setLocation) {\n $locationPopup.data('kendoWindow').close();\n Core.HidePageLoading();\n }\n } else {\n $error.html(data.message);\n $error.removeClass(CLS_HIDE);\n }\n },\n error: function(xhr, ajaxOptions, thrownError) { \n $error.removeClass(CLS_HIDE);\n console.log('error', xhr, ajaxOptions, thrownError);\n Core.HidePageLoading();\n },\n complete: function() {\n $stockCheckBtn.prop('disabled', false);\n $loader.addClass('d-none');\n }\n });\n }\n\n function onSuccessCheckStockPdp(location, $local, stockData) {\n // show error if value is empty\n if (stockData.value === '') {\n $local.find('.stock-error').removeClass(CLS_HIDE);\n return;\n }\n\n $('.stock-checkBtn').text(`Check local stock for ${location.suburb} ${location.postCode}`);\n $local.find('.stock-status').css('background-color', stockData.colour);\n $local.find('.stock-message').text(`${stockData.value} for ${location.suburb} ${location.postCode}`);\n $local.find('.stock-checkBtn').addClass(CLS_HIDE);\n $local.addClass(CLS_CHECKED);\n }\n\n // for checkout page, pdp-wholesale\n function onSuccessCheckStock(location, stockData) {\n if (isWholesale) {\n $('.stock-checkBtn').html(`Showing stock for ${location.suburb} ${location.postCode}`);\n $('.stock-checkBtn').addClass('pe-none');\n } else {\n $('.stock-checkBtn').html(`Check local stock for ${location.suburb} ${location.postCode}`);\n }\n \n if (stockData.length > 0) {\n stockData.forEach(function(item, index) {\n var $row = \n isWholesale ? $(`.product-details__variant--row[data-id=\"${item.sku}\"]`) :\n isAgedCare ? $(`.product-row[data-id=\"${item.sku}\"]`) : \n $(`.portal-checkout__row[data-id=\"${item.sku}\"]`);\n if ($row.length === 0) return;\n\n if (item.value === '') {\n $row.find('.stock-error').removeClass(CLS_HIDE);\n return;\n }\n\n var locationTemplate = isWholesale\n ? `${location.suburb} ${location.postCode}`\n : `${location.suburb} ${location.postCode}`;\n\n var $local = $row.find(`.stock-local`);\n $local.find('.stock-status').css('background-color', item.colour);\n $local.find('.stock-message').html(`${item.value} for ${locationTemplate}`);\n $local.addClass(CLS_CHECKED);\n $row.find('.stock-checkBtn').addClass(CLS_HIDE);\n $row.find('.stock-updateBtn').removeClass(CLS_HIDE);\n\n $local.on('click', '.stock-changeSuburbBtn', function(e) {\n e.preventDefault();\n var $btn = $(this);\n var $parent = getParentSelector($btn);\n setVariables($parent);\n openPopup();\n });\n });\n }\n }\n\n // async api call to check stock on page load\n function checkStockAsyncPdp(isComplexVariant) {\n if (!Core.Util.isCheckLocalStockAsync()) return;\n\n var api = $page.data('check-local-stock-api');\n if (!api) {\n console.log('Please provide the api url for stock check (data-check-local-stock-api)');\n return;\n }\n\n var location = {\n suburb: $page.attr('data-suburb'),\n state: $page.attr('data-state'),\n postCode: $page.attr('data-postcode'),\n };\n\n var variants = [];\n var $row = isComplexVariant ? $('#complexVariant .product-details__variant') : $('#variants .product-details__variant--row');\n $row.each(function(i, row) {\n variants.push({\n qty: row.querySelector('input[name=\"qty\"]')?.value || 1,\n sku: row.dataset.id,\n });\n });\n\n var retry = 0;\n var doCheckStock = function() {\n $.ajax({\n url: api,\n data: {\n variants: variants,\n location: location,\n setLocation: false,\n },\n type: 'POST',\n dataType: 'json',\n success: function(data) { \n if (data.isSuccess) {\n var stockData = data.stocks;\n \n if (stockData.length > 0) {\n stockData.forEach(function(item, index) {\n var $row = $(`.product-details__variant--row[data-id=\"${item.sku}\"]`);\n if ($row.length === 0) return;\n \n // keep stock-national if no value\n if (Core.Util.isEmpty(item.value)) {\n return;\n }\n \n var $local = $row.find(`.stock-local`);\n $local.find('.stock-status').css('background-color', item.colour);\n $local.find('.stock-message').html(`${item.value}`);\n $local.addClass(CLS_CHECKED);\n $row.find(`.stock-national`)?.addClass(CLS_HIDE);\n });\n }\n } else {\n console.log('error', data.message);\n retryCheckStock();\n }\n },\n error: function(xhr, ajaxOptions, thrownError) { \n console.log('error', xhr, ajaxOptions, thrownError);\n retryCheckStock();\n }\n });\n };\n\n var retryCheckStock = function() { \n if (retry === 0) {\n setTimeout(doCheckStock, 500);\n retry++;\n }\n };\n\n if (variants.length > 0) {\n doCheckStock();\n }\n }\n\n var m = {\n init: function() {\n handleCheckStock();\n handleChangeSuburb();\n handleSetLocation();\n checkStockAsyncPdp();\n },\n updateStock: function(setLocation, $parent) {\n setVariables($parent);\n checkStock(setLocation);\n },\n changeSuburb: function($parent) {\n setVariables($parent);\n openPopup();\n },\n checkStockAsyncPdp: checkStockAsyncPdp,\n };\n\n return m;\n};","Core.Stores = {\n Locator: {\n init: function () {\n\n Core.Stores.Locator.Cache = {\n $map: $('#google-map-canvas')\n };\n\n var _self = this;\n\n _self.Map = null;\n _self.Markers = [];\n _self.InfoWindows = [];\n\n _self.data = window.StoreJson;\n\n Handlebars.registerHelper(\"storesGetIndex\", function (arr, options) {\n return $.map(arr, function (item, index) {\n item.$idx = index;\n return options.fn(item);\n }).join('');\n });\n\n this.setStartingPoint();\n\n this.createMap();\n\n Core.RenderTemplate('#tpl-stores', _self.data, $('#store-results'));\n\n Core.Cache.$document.on(\"click\", '.btn-view-store', function (e) {\n\n e.preventDefault();\n\n _self.showStoreInfo($(this).data('id'));\n _self.Map.setZoom(15);\n\n Core.Cache.$body.add(Core.Cache.$html).animate({\n scrollTop: Core.Stores.Locator.Cache.$map.offset().top - 50\n }, 400);\n });\n },\n setStartingPoint: function () {\n switch (window.CurrentState) {\n case 'act':\n if (Core.IsMobile()) {\n zoomLevel = 6;\n } else {\n zoomLevel = 7;\n }\n lat = -35.308;\n longitude = 149.124;\n break;\n case 'nsw':\n zoomLevel = 6;\n lat = -33.253;\n longitude = 148.921;\n break;\n case 'vic':\n zoomLevel = 7;\n\t\t\t if ( Core.IsMobile()) {\n\t\t\t\t\t lat = -37.471;\n\t\t\t\t\t\tlongitude = 144.785;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlat = -36.390;\n\t\t\t\t\t\tlongitude = 144.235;\n\t\t\t\t\t}\n break;\n case 'qld':\n zoomLevel = 6;\n\t\t\t\t\tif (Core.IsMobile()) {\n\t\t\t\t\t\tlat = -25.917;\n\t\t\t\t\t\tlongitude = 151.702;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tlat = -23.803;\n\t\t\t\t\t\tlongitude = 145.571;\n\t\t\t\t\t}\n break;\n case 'sa':\n\t\t\t\t\tif (Core.IsMobile()){\n\t\t\t\t\t\tzoomLevel = 5;\n\t\t\t\t\t\tlat = -30.000;\n\t\t\t\t\t\tlongitude = 136.209;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tzoomLevel = 6;\n\t\t\t\t\t\tlongitude = 134.989;\n\t\t\t\t\t\tlat = -31.566;\n\t\t\t\t\t}\n break;\n case 'wa':\n\t\t\t\t\tif ( Core.IsMobile() ) {\n\t\t\t\t\t\tzoomLevel = 5;\n\t\t\t\t\t\tlat = -31.14;\n\t\t\t\t\t\tlongitude = 115.159;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tzoomLevel = 6;\n\t\t\t\t\t\tlat = -30.422;\n\t\t\t\t\t\tlongitude = 117.0266;\n\t\t\t\t\t}\n break;\n case 'tas':\n zoomLevel = 7;\n lat = -41.965;\n longitude = 146.628;\n break;\n case 'nt':\n zoomLevel = 5;\n lat = -19.491;\n longitude = 133.550;\n break;\n default:\n if (Core.IsMobile()) {\n zoomLevel = 3;\n } else {\n zoomLevel = 4;\n }\n lat = -28.926;\n longitude = 134.175;\n break;\n }\n },\n createMap: function () {\n var canvas = document.getElementById(\"google-map-canvas\");\n\n var options = {\n disableDefaultUI: true,\n scrollWheel: false,\n draggable: true,\n streetViewControl: false,\n zoom: zoomLevel,\n zoomControl: true,\n zoomControlOptions: {\n style: google.maps.ZoomControlStyle.SMALL,\n position: google.maps.ControlPosition.RIGHT_TOP\n },\n minZoom: 1,\n center: new google.maps.LatLng(lat, longitude),\n mapTypeId: google.maps.MapTypeId.ROADMAP\n };\n\n this.Map = new google.maps.Map(canvas, options);\n this.plotMarkers();\n\n },\n plotMarkers: function () {\n var _self = this;\n\n $.each(_self.data.Stores, function (i, store) {\n _self.Markers[i] = new google.maps.Marker({\n position: new google.maps.LatLng(store.Latitude, store.Longitude),\n map: _self.Map,\n title: store.Name,\n icon: store.IsAidacareStore ?\n Core.Config.StoreFinder.MarkerIconPath :\n Core.Config.StoreFinder.MarkerIconPathNetwork\n });\n\n\t\t\t\tvar _$infoContent = Core.Stores.Locator._storeContent(store);\n\n _self.InfoWindows[i] = new google.maps.InfoWindow({\n content: _$infoContent\n });\n\n google.maps.event.addListener(_self.Markers[i], 'click', function () {\n _self.showStoreInfo(i);\n _self.Map.setZoom(15);\n });\n\n\t\t\t\tCore.Stores.Locator._styleWindow(_self.InfoWindows[i]);\n });\n },\n showStoreInfo: function (idx) {\n for (var i = 0; i < this.InfoWindows.length; i++) {\n if (i !== idx) {\n if (this.InfoWindows[i] !== null) {\n this.InfoWindows[i].close();\n }\n }\n else if (this.InfoWindows[idx] !== null) {\n this.InfoWindows[idx].open(this.Map, this.Markers[idx]);\n this.Map.setCenter(this.Markers[idx].position);\n }\n }\n },\n\n\t\t_styleWindow: function(info){\n // *\n // START INFOWINDOW CUSTOMIZE.\n // The google.maps.event.addListener() event expects\n // the creation of the infowindow HTML structure 'domready'\n // and before the opening of the infowindow, defined styles are applied.\n // *\n google.maps.event.addListener(info, 'domready', function () {\n var $iwCloseBtn = $('.gm-style-iw').find('button[title=\"Close\"]');\n var $triangle = $('.gm-style-iw').next();\n var $img = $triangle.find('img');\n\n if ($img.filter('.custom').length === 0) {\n $img.hide();\n $triangle\n .css({opacity: '1', width: '25px', height: '25px', top: '-2px'});\n $iwCloseBtn\n .css({width: '35px', height: '35px', top: '12px', right: '12px'})\n .html('');\n }\n });\n\t\t},\n\t\t// Generates popup content\n\t\t_storeContent: function(store){\n\n\t\t\t// Get the Title\n\t\t\tvar _$infoContent = '';\n\t\t\tif(typeof store.Name === 'string')\n\t\t\t\t_$infoContent = '

' + store.Name + '

';\n\t\t\telse if(typeof store.Title === 'string')\n\t\t\t\t_$infoContent = '

' + store.Title + '

';\n\n\t\t\t// Body Content\n if (typeof store.AddressLine1 == 'string' && store.AddressLine1.length > 0) {\n _$infoContent = _$infoContent + store.AddressLine1 + '
';\n }\n if (typeof store.Suburb == 'string' && store.Suburb.length > 0) {\n _$infoContent = _$infoContent + store.Suburb + '
';\n }\n if (typeof store.State == 'string' && store.State.length > 0) {\n _$infoContent = _$infoContent + store.State + ', ';\n }\n if (typeof store.Postcode == 'string' && store.Postcode.length > 0) {\n _$infoContent = _$infoContent + store.Postcode;\n }\n if (typeof store.Phone == 'string' && store.Phone.length > 0) {\n _$infoContent = _$infoContent + '

Phone: ' + store.Phone;\n }\n if (typeof store.Fax == 'string' && store.Fax.length > 0) {\n _$infoContent = _$infoContent + '
Fax: ' + store.Fax;\n }\n if (typeof store.Email == 'string' && store.Email.length > 0) {\n _$infoContent = _$infoContent + '
Email: ' + store.Email;\n }\n\t\t\tif ( typeof store.Url === 'string' )\n\t\t\t\t_$infoContent = _$infoContent + '

View More
';\n\t\t\treturn _$infoContent;\n\t\t}\n },\n Details: {\n init: function () {\n var $store = document.getElementById('store-details')\n var _location = document.getElementById(\"location-map\"),\n _latlng = new google.maps.LatLng(_location.getAttribute(\"data-latitude\"), _location.getAttribute(\"data-longitude\")),\n _mapOptions = {\n zoom: Core.Config.StoreFinder.MapDetailZoomLevel,\n center: _latlng,\n mapTypeId: google.maps.MapTypeId.ROADMAP,\n styles: [{\n featureType: \"poi\",\n elementType: \"labels\",\n stylers: [ { visibility: \"off\" } ]\n }, ]\n };\n\n var _map = new google.maps.Map(document.getElementById(\"map-canvas\"), _mapOptions);\n\n\n var Marker = new google.maps.Marker({\n position: _latlng,\n clickable: true,\n map: _map,\n icon: $store.hasAttribute('data-is-aidacare-store') ?\n Core.Config.StoreFinder.MarkerIconPath :\n Core.Config.StoreFinder.MarkerIconPathNetwork\n });\n\n\n\t\t\tvar _$infoContent = Core.Stores.Locator._storeContent(StoreJson);\n\n var InfoWindow = new google.maps.InfoWindow({\n content: _$infoContent\n });\n\n google.maps.event.addListener(Marker, 'click', function () {\n InfoWindow.open(_map, Marker);\n _map.setCenter(Marker.position);\n _self.Map.setZoom(15);\n });\n\t\t\tCore.Stores.Locator._styleWindow(InfoWindow);\n }\n }\n};\n","(function () {\n var devices = {\n isIE11OrLess: function () {\n var docMode = document.documentMode;\n if (!docMode) return false;\n if (docMode <= 11) return true;\n }\n };\n\n function getInnerHeight($el) {\n var style = window.getComputedStyle($el, null);\n return parseInt(style.getPropertyValue(\"height\").split(\"px\")[0], 10);\n }\n\n /**\n * Ensures items in $items array are same height\n * @param $items\n * @param justClear\n */\n function sameHeightItems($items, justClear) {\n\n var h = 0;\n\n $.each($items, function (i, $el) {\n $el.removeAttribute(\"style\");\n });\n\n if (justClear) return;\n\n $.each($items, function (i, $el) {\n //let thisH: number = getInnerHeight($el);\n var thisH = devices.isIE11OrLess() ? $($el).height() : getInnerHeight($el);\n if (thisH > h) h = thisH;\n });\n\n $.each($items, function (i, $el) {\n $el.style.height = h + \"px\";\n });\n }\n\n /**\n * @description Takes a list of elements and ensures they are the same height on the same row. Styles are added within inline JS.\n * @param $list (element list) - list of elements to be used.\n * @param justClear\n */\n function setFakeRowHeights($list, justClear) {\n var offTop\n , prevTop\n , itemPerRow = 0\n , rowList = []\n , multiList = [];\n\n\n $.each($list, function (i, $tile) {\n //var offTop = $tile.offsetTop;\n var offTop = $($tile).offset().top;\n\n if (itemPerRow) {\n //push to multilist if it has reached the the total of items per row\n if (i % itemPerRow == 0) {\n multiList.push(rowList);\n rowList = [];\n }\n\n rowList.push($tile);\n\n } else {\n // if offsetTop is different, means it's a new line\n if (i > 0 && prevTop !== offTop) {\n //find total items per row first based on offsetTop\n itemPerRow = rowList.length;\n multiList.push(rowList);\n rowList = [];\n }\n\n rowList.push($tile);\n }\n\n prevTop = offTop;\n\n //push the rest of items to multilist\n if (i == $list.length - 1) multiList.push(rowList);\n\n });\n\n $.each(multiList, function (i, row) {\n if (row.length > 1) sameHeightItems(row, justClear);\n else sameHeightItems(row, true); //if only one tile is left, remove attribue 'style'\n });\n }\n\n function debounce(func, wait, immediate) {\n var timeout;\n\n return function() {\n var context = this, args = arguments;\n var later = function() {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n var callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n }\n\n function groupBy(arr, key) {\n return arr.reduce(function (rv, x) {\n (rv[x[key]] = rv[x[key]] || []).push(x);\n return rv;\n }, {});\n }\n\n function replaceNullValue(oriVal, newVal) {\n if(oriVal == \"\" || oriVal == null) newVal = newVal ? newVal : \"\";\n else newVal = oriVal;\n\n return newVal;\n }\n\n function renderErrorMsg($target, msg) {\n var tmpl = '
' + msg + '
';\n var $error = $target.find('.glbError');\n if ($error.length) $error.html(msg);\n else $target.prepend(tmpl);\n }\n\n function addIEClasses ($siteWrap) {\n // Just in case you need to browser sniff MS IE11 browser\n if (devices.isIE11OrLess()) $siteWrap.addClass('ie-msie11');\n }\n\n function isAgedCare() {\n return $('body').hasClass('is-agedCare');\n }\n\n function isWholesale() {\n return $('#product-detail').hasClass('product-detail--wholesale');\n }\n\n function isCheckLocalStockAsync() { \n return `${$('#product-detail').data('check-local-stock-async')}`?.toLowerCase() === \"true\";\n }\n\n function isPlp() {\n return $('#product-listing').length > 0;\n }\n\n function isOnMouse() {\n document.body.addEventListener('mousedown', function() {\n document.body.classList.add('using-mouse');\n });\n\n document.body.addEventListener('keydown', function() {\n document.body.classList.remove('using-mouse');\n });\n }\n\n function isElementInViewport (el) {\n\n // Special bonus for those using jQuery\n if (typeof jQuery === \"function\" && el instanceof jQuery) {\n el = el[0];\n }\n\n var rect = el.getBoundingClientRect();\n\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && /* or $(window).height() */\n rect.right <= (window.innerWidth || document.documentElement.clientWidth) /* or $(window).width() */\n );\n }\n\n function uploadBase64Image(base64String) {\n // Split the base64 string in data and contentType\n var block = base64String.split(\";\");\n // Get the content type\n var contentType = block[0].split(\":\")[1];\n // Get the real base64 content of the file\n var realData = block[1].split(\",\")[1];\n // Convert to blob\n var blob = b64toBlob(realData, contentType);\n // Create a FormData and append the file\n // var formData = new FormData();\n // formData.append(\"file\", blob);\n // Now you can send the form using fetch or XMLHttpRequest\n return blob;\n }\n\n function b64toBlob(b64Data, contentType, sliceSize) {\n contentType = contentType || '';\n sliceSize = sliceSize || 512;\n var byteCharacters = atob(b64Data);\n var byteArrays = [];\n for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n var slice = byteCharacters.slice(offset, offset + sliceSize);\n var byteNumbers = new Array(slice.length);\n for (var i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n var byteArray = new Uint8Array(byteNumbers);\n byteArrays.push(byteArray);\n }\n var blob = new Blob(byteArrays, {type: contentType});\n return blob;\n }\n\n function isEmpty(content) {\n return content === '' || content === null || content === 'null' || content === undefined || content === 'undefined';\n }\n\n var Utils = {\n Debounce: debounce\n , setFakeRowHeights: setFakeRowHeights\n , groupBy: groupBy\n , replaceNullValue: replaceNullValue\n , renderErrorMsg: renderErrorMsg\n , addIEClasses: addIEClasses\n , isAgedCare: isAgedCare\n , isWholesale: isWholesale\n , isOnMouse: isOnMouse\n , isElementInViewport: isElementInViewport\n , uploadBase64Image: uploadBase64Image\n , isCheckLocalStockAsync: isCheckLocalStockAsync\n , isEmpty: isEmpty\n , isPlp: isPlp\n };\n\n Core = Core || {};\n Core.Util = Utils;\n})();\n\n/*\nCore.Util = {\n // debouce - a la Underscore\n\n Debounce: function (func, wait, immediate) {\n var timeout;\n\n return function() {\n var context = this, args = arguments;\n var later = function() {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n var callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n }\n};\n*/\n"]}