/******************************************************************************* * Copyright 2018 Adobe * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ /** * Element.matches() * https://developer.mozilla.org/enUS/docs/Web/API/Element/matches#Polyfill */ if (!Element.prototype.matches) { Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector; } // eslint-disable-next-line valid-jsdoc /** * Element.closest() * https://developer.mozilla.org/enUS/docs/Web/API/Element/closest#Polyfill */ if (!Element.prototype.closest) { Element.prototype.closest = function(s) { "use strict"; var el = this; if (!document.documentElement.contains(el)) { return null; } do { if (el.matches(s)) { return el; } el = el.parentElement || el.parentNode; } while (el !== null && el.nodeType === 1); return null; }; } /******************************************************************************* * Copyright 2018 Adobe * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ /* global CQ */ (function() { "use strict"; var dataLayerEnabled; var dataLayer; var NS = "cmp"; var IS = "tabs"; var keyCodes = { END: 35, HOME: 36, ARROW_LEFT: 37, ARROW_UP: 38, ARROW_RIGHT: 39, ARROW_DOWN: 40 }; var selectors = { self: "[data-" + NS + '-is="' + IS + '"]', active: { tab: "cmp-tabs__tab--active", tabpanel: "cmp-tabs__tabpanel--active" } }; /** * Tabs Configuration * * @typedef {Object} TabsConfig Represents a Tabs configuration * @property {HTMLElement} element The HTMLElement representing the Tabs * @property {Object} options The Tabs options */ /** * Tabs * * @class Tabs * @classdesc An interactive Tabs component for navigating a list of tabs * @param {TabsConfig} config The Tabs configuration */ function Tabs(config) { var that = this; if (config && config.element) { init(config); } /** * Initializes the Tabs * * @private * @param {TabsConfig} config The Tabs configuration */ function init(config) { that._config = config; // prevents multiple initialization config.element.removeAttribute("data-" + NS + "-is"); cacheElements(config.element); that._active = getActiveIndex(that._elements["tab"]); if (that._elements.tabpanel) { refreshActive(); bindEvents(); } // Show the tab based on deep-link-id if it matches with any existing tab item id var deepLinkItemIdx = CQ.CoreComponents.container.utils.getDeepLinkItemIdx(that, "tab"); if (deepLinkItemIdx) { var deepLinkItem = that._elements["tab"][deepLinkItemIdx]; if (deepLinkItem && that._elements["tab"][that._active].id !== deepLinkItem.id) { navigateAndFocusTab(deepLinkItemIdx); } } if (window.Granite && window.Granite.author && window.Granite.author.MessageChannel) { /* * Editor message handling: * - subscribe to "cmp.panelcontainer" message requests sent by the editor frame * - check that the message data panel container type is correct and that the id (path) matches this specific Tabs component * - if so, route the "navigate" operation to enact a navigation of the Tabs based on index data */ CQ.CoreComponents.MESSAGE_CHANNEL = CQ.CoreComponents.MESSAGE_CHANNEL || new window.Granite.author.MessageChannel("cqauthor", window); CQ.CoreComponents.MESSAGE_CHANNEL.subscribeRequestMessage("cmp.panelcontainer", function(message) { if (message.data && message.data.type === "cmp-tabs" && message.data.id === that._elements.self.dataset["cmpPanelcontainerId"]) { if (message.data.operation === "navigate") { navigate(message.data.index); } } }); } } /** * Returns the index of the active tab, if no tab is active returns 0 * * @param {Array} tabs Tab elements * @returns {Number} Index of the active tab, 0 if none is active */ function getActiveIndex(tabs) { if (tabs) { for (var i = 0; i < tabs.length; i++) { if (tabs[i].classList.contains(selectors.active.tab)) { return i; } } } return 0; } /** * Caches the Tabs elements as defined via the {@code data-tabs-hook="ELEMENT_NAME"} markup API * * @private * @param {HTMLElement} wrapper The Tabs wrapper element */ function cacheElements(wrapper) { that._elements = {}; that._elements.self = wrapper; var hooks = that._elements.self.querySelectorAll("[data-" + NS + "-hook-" + IS + "]"); for (var i = 0; i < hooks.length; i++) { var hook = hooks[i]; if (hook.closest("." + NS + "-" + IS) === that._elements.self) { // only process own tab elements var capitalized = IS; capitalized = capitalized.charAt(0).toUpperCase() + capitalized.slice(1); var key = hook.dataset[NS + "Hook" + capitalized]; if (that._elements[key]) { if (!Array.isArray(that._elements[key])) { var tmp = that._elements[key]; that._elements[key] = [tmp]; } that._elements[key].push(hook); } else { that._elements[key] = hook; } } } } /** * Binds Tabs event handling * * @private */ function bindEvents() { var tabs = that._elements["tab"]; if (tabs) { for (var i = 0; i < tabs.length; i++) { (function(index) { tabs[i].addEventListener("click", function(event) { navigateAndFocusTab(index); }); tabs[i].addEventListener("keydown", function(event) { onKeyDown(event); }); })(i); } } } /** * Handles tab keydown events * * @private * @param {Object} event The keydown event */ function onKeyDown(event) { var index = that._active; var lastIndex = that._elements["tab"].length - 1; switch (event.keyCode) { case keyCodes.ARROW_LEFT: case keyCodes.ARROW_UP: event.preventDefault(); if (index > 0) { navigateAndFocusTab(index - 1); } break; case keyCodes.ARROW_RIGHT: case keyCodes.ARROW_DOWN: event.preventDefault(); if (index < lastIndex) { navigateAndFocusTab(index + 1); } break; case keyCodes.HOME: event.preventDefault(); navigateAndFocusTab(0); break; case keyCodes.END: event.preventDefault(); navigateAndFocusTab(lastIndex); break; default: return; } } /** * Refreshes the tab markup based on the current {@code Tabs#_active} index * * @private */ function refreshActive() { var tabpanels = that._elements["tabpanel"]; var tabs = that._elements["tab"]; if (tabpanels) { if (Array.isArray(tabpanels)) { for (var i = 0; i < tabpanels.length; i++) { if (i === parseInt(that._active)) { tabpanels[i].classList.add(selectors.active.tabpanel); tabpanels[i].removeAttribute("aria-hidden"); tabs[i].classList.add(selectors.active.tab); tabs[i].setAttribute("aria-selected", true); tabs[i].setAttribute("tabindex", "0"); } else { tabpanels[i].classList.remove(selectors.active.tabpanel); tabpanels[i].setAttribute("aria-hidden", true); tabs[i].classList.remove(selectors.active.tab); tabs[i].setAttribute("aria-selected", false); tabs[i].setAttribute("tabindex", "-1"); } } } else { // only one tab tabpanels.classList.add(selectors.active.tabpanel); tabs.classList.add(selectors.active.tab); } } } /** * Focuses the element and prevents scrolling the element into view * * @param {HTMLElement} element Element to focus */ function focusWithoutScroll(element) { var x = window.scrollX || window.pageXOffset; var y = window.scrollY || window.pageYOffset; element.focus(); window.scrollTo(x, y); } /** * Navigates to the tab at the provided index * * @private * @param {Number} index The index of the tab to navigate to */ function navigate(index) { that._active = index; refreshActive(); } /** * Navigates to the item at the provided index and ensures the active tab gains focus * * @private * @param {Number} index The index of the item to navigate to */ function navigateAndFocusTab(index) { var exActive = that._active; navigate(index); focusWithoutScroll(that._elements["tab"][index]); if (dataLayerEnabled) { var activeItem = getDataLayerId(that._elements.tabpanel[index]); var exActiveItem = getDataLayerId(that._elements.tabpanel[exActive]); dataLayer.push({ event: "cmp:show", eventInfo: { path: "component." + activeItem } }); dataLayer.push({ event: "cmp:hide", eventInfo: { path: "component." + exActiveItem } }); var tabsId = that._elements.self.id; var uploadPayload = { component: {} }; uploadPayload.component[tabsId] = { shownItems: [activeItem] }; var removePayload = { component: {} }; removePayload.component[tabsId] = { shownItems: undefined }; dataLayer.push(removePayload); dataLayer.push(uploadPayload); } } } /** * Reads options data from the Tabs wrapper element, defined via {@code data-cmp-*} data attributes * * @private * @param {HTMLElement} element The Tabs element to read options data from * @returns {Object} The options read from the component data attributes */ function readData(element) { var data = element.dataset; var options = []; var capitalized = IS; capitalized = capitalized.charAt(0).toUpperCase() + capitalized.slice(1); var reserved = ["is", "hook" + capitalized]; for (var key in data) { if (data.hasOwnProperty(key)) { var value = data[key]; if (key.indexOf(NS) === 0) { key = key.slice(NS.length); key = key.charAt(0).toLowerCase() + key.substring(1); if (reserved.indexOf(key) === -1) { options[key] = value; } } } } return options; } /** * Parses the dataLayer string and returns the ID * * @private * @param {HTMLElement} item the accordion item * @returns {String} dataLayerId or undefined */ function getDataLayerId(item) { if (item && item.dataset.cmpDataLayer) { return Object.keys(JSON.parse(item.dataset.cmpDataLayer))[0]; } else { return item.id; } } /** * Document ready handler and DOM mutation observers. Initializes Tabs components as necessary. * * @private */ function onDocumentReady() { dataLayerEnabled = document.body.hasAttribute("data-cmp-data-layer-enabled"); dataLayer = (dataLayerEnabled) ? window.adobeDataLayer = window.adobeDataLayer || [] : undefined; var elements = document.querySelectorAll(selectors.self); for (var i = 0; i < elements.length; i++) { new Tabs({ element: elements[i], options: readData(elements[i]) }); } var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; var body = document.querySelector("body"); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { // needed for IE var nodesArray = [].slice.call(mutation.addedNodes); if (nodesArray.length > 0) { nodesArray.forEach(function(addedNode) { if (addedNode.querySelectorAll) { var elementsArray = [].slice.call(addedNode.querySelectorAll(selectors.self)); elementsArray.forEach(function(element) { new Tabs({ element: element, options: readData(element) }); }); } }); } }); }); observer.observe(body, { subtree: true, childList: true, characterData: true }); } if (document.readyState !== "loading") { onDocumentReady(); } else { document.addEventListener("DOMContentLoaded", onDocumentReady); } window.addEventListener("hashchange", window.CQ.CoreComponents.container.utils.locationHashChanged, false); }()); $(document).ready(function(){ var anchor_tags = $("a[data-component-prefix]"); $(anchor_tags).each(function(index) { var anchor_element = $(this); var component_name = anchor_element.data( "component-prefix"); var link_path = anchor_element.attr('href') || anchor_element.attr('target') || anchor_element.data( "video") || anchor_element.data( "pn"); if(link_path) { link_path = link_path.split('?intcid=')[0]; if (link_path.includes('/content/dam')) { link_path = link_path.replace("/content/dam", ""); link_path = link_path.replace("/content", ""); link_path = link_path.replace("/?intcid=.*/i", ""); link_path = link_path.split('/').join(':'); anchor_element.attr('data-asset', component_name+link_path); } else { link_path = link_path.replace("/content", ""); link_path = link_path.replace("/?intcid=.*/i", ""); link_path = link_path.split('/').join(':'); link_path=link_path.replace(".html", ""); anchor_element.attr('data-id', component_name+link_path); } } }); var buttons = $("button[data-component-prefix]"); $(buttons).each(function(index) { var anchor_element = $(this); var component_name=anchor_element.data( "component-prefix"); var link_path= anchor_element.attr('href') || anchor_element.data( "target")|| anchor_element.data( "video") || anchor_element.data( "pn") || anchor_element.attr('id'); if(link_path) { if (link_path.includes('/content/dam')) { link_path = link_path.replace("/content/dam", ""); link_path = link_path.replace("/content", ""); link_path = link_path.replace("/?intcid=.*/i", ""); link_path = link_path.split('/').join(':'); link_path = link_path.replace("/?intcid=.*/i", ""); anchor_element.attr('data-asset', component_name + link_path); } else { link_path = link_path.replace("/content", ""); link_path = link_path.replace("/?intcid=.*/i", ""); link_path = link_path.split('/').join(':'); link_path = link_path.replace(".html", ""); anchor_element.attr('data-id', component_name + link_path); } } }); }); /* * ADOBE CONFIDENTIAL * * Copyright 2015 Adobe Systems Incorporated * All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Adobe Systems Incorporated and its suppliers, * if any. The intellectual and technical concepts contained * herein are proprietary to Adobe Systems Incorporated and its * suppliers and may be covered by U.S. and Foreign Patents, * patents in process, and are protected by trade secret or copyright law. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Adobe Systems Incorporated. * */ /* global CQURLInfo:false */ (function(window) { "use strict"; window.Granite = window.Granite || {}; window.Granite.HTTP = window.Granite.HTTP || {}; var contextPath = null; function detectContextPath() { // eslint-disable-next-line max-len var SCRIPT_URL_REGEXP = /^(?:http|https):\/\/[^/]+(\/.*)\/(?:etc\.clientlibs|etc(\/.*)*\/clientlibs|libs(\/.*)*\/clientlibs|apps(\/.*)*\/clientlibs|etc\/designs).*\.js(\?.*)?$/; try { if (window.CQURLInfo) { contextPath = CQURLInfo.contextPath || ""; } else { var scripts = document.getElementsByTagName("script"); for (var i = 0; i < scripts.length; i++) { var result = SCRIPT_URL_REGEXP.exec(scripts[i].src); if (result) { contextPath = result[1]; return; } } contextPath = ""; } } catch (e) { // ignored } } window.Granite.HTTP.externalize = window.Granite.HTTP.externalize || function(url) { if (contextPath === null) { detectContextPath(); } try { if (url.indexOf("/") === 0 && contextPath && url.indexOf(contextPath + "/") !== 0) { url = contextPath + url; } } catch (e) { // ignored } return url; }; })(this); /* * ADOBE CONFIDENTIAL * * Copyright 2015 Adobe Systems Incorporated * All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Adobe Systems Incorporated and its suppliers, * if any. The intellectual and technical concepts contained * herein are proprietary to Adobe Systems Incorporated and its * suppliers and may be covered by U.S. and Foreign Patents, * patents in process, and are protected by trade secret or copyright law. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Adobe Systems Incorporated. * */ (function(factory) { "use strict"; // GRANITE-22281 Check for multiple initialization if (window.Granite.csrf) { return; } window.Granite.csrf = factory(window.Granite.HTTP); }(function(http) { "use strict"; // AdobePatentID="P5296" function Promise() { this._handler = []; } Promise.prototype = { then: function(resolveFn, rejectFn) { this._handler.push({ resolve: resolveFn, reject: rejectFn }); }, resolve: function() { this._execute("resolve", arguments); }, reject: function() { this._execute("reject", arguments); }, _execute: function(result, args) { if (this._handler === null) { throw new Error("Promise already completed."); } for (var i = 0, ln = this._handler.length; i < ln; i++) { this._handler[i][result].apply(window, args); } this.then = function(resolveFn, rejectFn) { (result === "resolve" ? resolveFn : rejectFn).apply(window, args); }; this._handler = null; } }; function verifySameOrigin(url) { // url could be relative or scheme relative or absolute // host + port var host = document.location.host; var protocol = document.location.protocol; var relativeOrigin = "//" + host; var origin = protocol + relativeOrigin; // Allow absolute or scheme relative URLs to same origin return (url === origin || url.slice(0, origin.length + 1) === origin + "/") || (url === relativeOrigin || url.slice(0, relativeOrigin.length + 1) === relativeOrigin + "/") || // or any other URL that isn't scheme relative or absolute i.e relative. !(/^(\/\/|http:|https:).*/.test(url)); } var FIELD_NAME = ":cq_csrf_token"; var HEADER_NAME = "CSRF-Token"; var TOKEN_SERVLET = http.externalize("/libs/granite/csrf/token.json"); var promise; var globalToken; function logFailRequest(error) { if (window.console) { // eslint-disable-next-line no-console console.warn("CSRF data not available;" + "The data may be unavailable by design, such as during non-authenticated requests: " + error); } } function getToken() { var localPromise = new Promise(); promise = localPromise; var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState === 4) { try { var data = JSON.parse(xhr.responseText); globalToken = data.token; localPromise.resolve(globalToken); } catch (ex) { logFailRequest(ex); localPromise.reject(xhr.responseText); } } }; xhr.open("GET", TOKEN_SERVLET, true); xhr.send(); return localPromise; } function getTokenSync() { var xhr = new XMLHttpRequest(); xhr.open("GET", TOKEN_SERVLET, false); xhr.send(); try { return globalToken = JSON.parse(xhr.responseText).token; } catch (ex) { logFailRequest(ex); } } function clearToken() { globalToken = undefined; getToken(); } function addField(form) { var action = form.getAttribute("action"); if (form.method.toUpperCase() === "GET" || (action && !verifySameOrigin(action))) { return; } if (!globalToken) { getTokenSync(); } if (!globalToken) { return; } var input = form.querySelector('input[name="' + FIELD_NAME + '"]'); if (!input) { input = document.createElement("input"); input.setAttribute("type", "hidden"); input.setAttribute("name", FIELD_NAME); form.appendChild(input); } input.setAttribute("value", globalToken); } function handleForm(document) { var handler = function(ev) { var t = ev.target; if (t.nodeName === "FORM") { addField(t); } }; if (document.addEventListener) { document.addEventListener("submit", handler, true); } else if (document.attachEvent) { document.attachEvent("submit", handler); } } handleForm(document); var open = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async) { if (method.toLowerCase() !== "get" && verifySameOrigin(url)) { this._csrf = true; this._async = async; } return open.apply(this, arguments); }; var send = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function() { if (!this._csrf) { send.apply(this, arguments); return; } if (globalToken) { this.setRequestHeader(HEADER_NAME, globalToken); send.apply(this, arguments); return; } if (this._async === false) { getTokenSync(); if (globalToken) { this.setRequestHeader(HEADER_NAME, globalToken); } send.apply(this, arguments); return; } var self = this; var args = Array.prototype.slice.call(arguments); promise.then(function(token) { self.setRequestHeader(HEADER_NAME, token); send.apply(self, args); }, function() { send.apply(self, args); }); }; var submit = HTMLFormElement.prototype.submit; HTMLFormElement.prototype.submit = function() { addField(this); return submit.apply(this, arguments); }; if (window.Node) { var ac = Node.prototype.appendChild; Node.prototype.appendChild = function() { var result = ac.apply(this, arguments); if (result.nodeName === "IFRAME") { try { if (result.contentWindow && !result._csrf) { result._csrf = true; handleForm(result.contentWindow.document); } } catch (ex) { if (result.src && result.src.length && verifySameOrigin(result.src)) { if (window.console) { // eslint-disable-next-line no-console console.error("Unable to attach CSRF token to an iframe element on the same origin"); } } // Potential error: Access is Denied // we can safely ignore CORS security errors here // because we do not want to expose the csrf anyways to another domain } } return result; }; } // refreshing csrf token periodically getToken(); setInterval(function() { getToken(); }, 300000); return { initialised: false, refreshToken: getToken, _clearToken: clearToken }; })); // (function(window, navigator, $) { // // function logError(message, source, line, column, error) { // var ajaxUrl = location.pathname + ".jserror.json"; // if (location.pathname.lastIndexOf(".") > 0) { // ajaxUrl = location.pathname.slice(0, location.pathname.lastIndexOf(".")) + ".jserror.json"; // } // $.ajax({ // url: ajaxUrl, // type: "post", // data: { // "browser": navigator && navigator.userAgent || "Browser N/A", // "message": message || "An error occurred", // "source": source || "File not available", // "line": line || "N/A", // "column": column || "N/A", // "stack": error && error.stack || "Stack not availalbe" // } // }); // } // // window.onerror = function(message, source, line, column, error) { // try { // logError(message, source, line, column, error); // } catch (e) { // console.error(e); // } // }; // })(window, navigator, jQuery); "use strict";!function(e,t,n){e.Routes=t.extend(!0,{getEvents:"/get-events",getReviews:"/get-reviews"},e.Routes)}(window,jQuery),function(e,t,n){e.Messages=t.extend(!0,{global:{},EventListingApp:{getEventsAjaxError:"Sorry, we couldn't find any of your events."}},e.Messages)}(window,jQuery); //# sourceMappingURL=common.min.js.map "use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;aPoly Icon

').concat(e,"

")),$("body").append(this.loading)}},{key:"destroy",value:function(){this.instance=null,this.loading.remove()}},{key:"show",value:function(){this.loading.css("display","flex"),this.loading.addClass("animate-in")}},{key:"hide",value:function(){var e=this;e.loading.addClass("animate-out"),e.loading.find("img").on("animationend",function(){e.loading.css("display","none")})}}],[{key:"getInstance",value:function(){return this.instance||(this.instance=new e),this.instance}}]),e}();function Notification(){this.observers={}}Notification.prototype={constructor:Notification,subscribe:function(e,t){this.observers[t]=this.observers[t]||[],this.observers[t].push(e)},unsubscribe:function(e,t){this.observers=(this.observers[t]||[]).filter(function(t){return t!==e})},broadcast:function(e,t){(this.observers[t]||[]).forEach(function(t){return t(e)})}};var PolyNotification=function(){var e;return function(){return e||(e=new Notification),e}}();function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;an?e.addClass("height-auto"):e.addClass("width-auto"),new BasicPromo(e).calcClip())}}]),e}();function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;a=0,i=t.hasClass("video-box"),o=t.hasClass("video-wp"),s=t.hasClass("seq-video-auto"),r=t.hasClass("seq-video-manual"),c=t.hasClass("video-animation");if(a){var l={serverurl:siteConfig.dmServer+"/is/image/",videoserverurl:siteConfig.dmServer+"/is/content",contenturl:siteConfig.dmServer+"/is/content/",config:siteConfig.s7RootPath+"Video",autoplay:o||s||r?"0":"1",loop:i?"1":"0",mutevolume:i||c||o||s?"1":"0",singleclick:i||c?"none":"playPause"};n?l.video=a:(l.asset=siteConfig.s7RootPath+a,l.posterimage=siteConfig.s7RootPath+a),e.loadVideoViewer(function(){new s7viewers.VideoViewer({containerId:t.attr("id"),params:l,handlers:{initComplete:function(){var e=t.find("video");n?e.on("loadedmetadata",function(){VideoBox.initVideo(e)}):VideoBox.initVideo(e),(o||s)&&waypointObserver.observe(e.get(0))}}}).init()})}}}]),e}();$(document).ready(function(){$(".dm-video-container").each(function(){AEMGenerateVideo.initDMVideoJSONToContainer($(this))})});var options={root:null,threshold:[.95]},waypointObserver=new IntersectionObserver(function(e){e.forEach(function(e){e.isIntersecting&&!e.target.currentTime>0&&e.target.play()})},options);function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;a0&&($(this).find("h3").removeClass("collapsed"),$(this).find("h3").attr("aria-expanded","true"),$(this).find(".wrapper").addClass("show"))}),function(){function e(e){if(e||(e=window.event),e.newValue)if("getSessionStorage"==e.key)localStorage.setItem("sessionStorage",JSON.stringify(sessionStorage)),localStorage.removeItem("sessionStorage");else if("sessionStorage"==e.key&&!sessionStorage.length){var a=JSON.parse(e.newValue);for(var n in a)sessionStorage.setItem(n,a[n]);t()}}function t(){$(".alert-container").each(function(){var e=$(this).data("editmode"),t=$(this).data("pagetitle")+"-alertClosed";e||($(this).find(".xf-content-height").length<1||"true"==sessionStorage.getItem(t)?$(this).hide():$("header").before($(this))),$(this).find(".close").off("click").on("click",function(){sessionStorage.setItem(t,!0)})})}window.addEventListener?window.addEventListener("storage",e):window.attachEvent("onstorage",e),sessionStorage.length||localStorage.setItem("getSessionStorage",Date.now()),$(document).ready(function(){t()})}(),$(".awards .carousel").carousel({pause:!0,interval:!1}),$(".awards").each(function(){var e=$(this).find(".carousel-item").length,t=$(this).find(".navigate-container");e<2&&t.remove()}),function(){function e(){"MOBILE"==getCurrentBreakpoint()?($(".basic-compare.three-column .product-table").addClass("show-2column"),$(".product-feature-key-header").each(function(){$(this).attr("colspan","2")})):($(".basic-compare.three-column .product-table").removeClass("show-2column"),$(".product-feature-key-header").each(function(){3===$(this).data("colspan")&&$(this).attr("colspan","3")}))}function t(e,t){e.off("change").on("change",function(){!function(e,t,a,n){n.filter(function(e){if(e.productName==t)return!0}).forEach(function(t){a.find(".product-image td").eq(e).find("img").attr("src",t.productImage||""),a.find(".product-path-cta td").eq(e).find("a").attr("href",t.productPath||""),a.find(".product-feature-value").each(function(){$(this).find("td").eq(e).empty(),$(this).find("td").eq(e).append(function(e){var t="";switch(e.valType){case"check-icon":t="true"==e.val?'':'';break;case"string":t="".concat(e.val,"");break;case"icon":t='product image')}return t}(function(e,t){var a=e.prev().find("th").data("key");return t.features.filter(function(e){if(e.featureName==a)return!0})[0]||""}($(this),t)))})})}($(this).closest("tr").find("td").index($(this).closest("td")),$(this).find(".value-container").text().trim(),$(this).closest(".product-table"),t)})}function a(){$(".basic-compare").each(function(){var e;(e=$(this)).parents(".in-page-nav__container").length>0&&(e.addClass("in-page-nav-basic-compare"),e.parent().removeClass("fullscreen"),e.find("button.btn").removeClass("btn-primary"),e.find("button.btn").addClass("btn-secondary")),function(e){var t,a=e.parents(".basic-compare-modal"),n=e.parents(".basic-compare-modal").attr("id");e.parents().find("#product-detail").length&&a.length&&(t=e.parents().find("#product-detail .btn-basic-compare-modal"),a.prev().hide(),t.show(),t.attr("data-target","#"+n)),e.parents().find(".poly-specifications").length&&a.length&&(a.prev().hide(),(t=e.parents().find(".poly-specifications .btn-compare")).show(),t.attr("data-target","#"+n))}($(this));var a=$(this).find(".products-data").data("products"),n=a?JSON.parse(a):[],i=$(this).find(".product-table").hasClass("show-2column")?2:$(this).find(".product-selector").length;""!=n&&n.length>i?$(this).find(".product-selector").each(function(){$(this).hasClass("dropdown-mark")||$(this).addClass("dropdown-mark"),t($(this),n);var e=$(this).customDropdown(),a=function(e){return e.map(function(e){return{id:e.id,text:e.productName}})}(n);e.updateArr(a,".product-name",".show-2column",!0)}):$(this).find(".product-selector").removeClass("dropdown-mark")})}$(".basic-compare .see-full").click(function(){var e=$(this).closest(".basic-compare");e.find(".product-feature-key:gt(9)").show(),e.find(".product-feature-value:gt(9)").show(),e.find(".hide-full").css("display","inline-block"),$(this).hide()}),$(".basic-compare .hide-full").click(function(){var e=$(this).closest(".basic-compare");e.find(".product-feature-key:gt(9)").hide(),e.find(".product-feature-value:gt(9)").hide(),e.find(".see-full").css("display","inline-block"),$(this).hide()}),$(".basic-compare.basic-compare-modal .category-modal-close-btn").click(function(){$(this).closest(".basic-compare").hide()}),$(window).resize(function(){e(),a()}),$(".basic-compare").prev("button").click(function(){$(".basic-compare.basic-compare-modal").show()}),$(document).ready(function(){$(".basic-compare .hide-full").click(),e(),a()})}();var BasicPromo=function(){function e(t){_classCallCheck(this,e),this.element=t}return _createClass(e,[{key:"resetClip",value:function(){this.element.css({position:"absolute",clip:"unset","-webkit-clip-path":"unset"})}},{key:"setClip",value:function(e){var t=this.element,a=t.height(),n="auto"===e.bottom?"auto":e.bottom+"px",i="auto"===e.bottom?"0":a-e.bottom;t.css({position:"fixed",clip:"rect(".concat(e.top,"px, auto, ").concat(n,", 0px)"),"-webkit-clip-path":"inset(".concat(e.top,"px 0 ").concat(i,"px 0)")})}},{key:"checkVideoPosition",value:function(){var e=this.element,t=$(window).height(),a=$(window).scrollTop(),n=0,i=e.closest(".promo-basic");i.length&&((n=i.offset().top)0&&co&&ct+o&&this.resetClip()}else this.checkVideoPosition();else this.resetClip()}}]),e}();function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var a=[],n=!0,i=!1,o=void 0;try{for(var s,r=e[Symbol.iterator]();!(n=(s=r.next()).done)&&(a.push(s.value),!t||a.length!==t);n=!0);}catch(e){i=!0,o=e}finally{try{n||null==r.return||r.return()}finally{if(i)throw o}}return a}}function _arrayWithHoles(e){if(Array.isArray(e))return e}!function(){var e=(/iPad|iPhone|iPod|Android/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!window.MSStream;function t(){$(".promo-basic .pixel-bg").each(function(){new BasicPromo($(this)).calcClip()})}function a(){$(".promo-basic .img-box").each(function(){new BasicPromo($(this)).calcClip()})}$(window).scroll(function(){t(),$(".promo-basic video").each(function(){new BasicPromo($(this)).checkVideoPosition()}),e&&a()}),$(window).resize(function(){t(),e&&a()}),$(document).ready(function(){t(),e&&($(".promo-basic .img-box").css("background-attachment","scroll"),a())})}(),function(e,t,a){digitalData.site.countryCode;var n,i=siteConfig.bvAPIUrl,o=e.location.protocol+i;e.loadBazaarvoiceApi=function(e){return n||(n=t.Deferred(),t.ajax({url:o,cache:!0,dataType:"script",success:function(){n.resolve()}})),n.then(e),n}}(window,jQuery),$(document).ready(function(){var e,t,a,n=null,i=null;function o(e){var a=$("."+t+" [data-model="+e+"]");a.siblings().removeClass("active"),a.addClass("active");var n=$("."+t+" .price[data-model="+e+"]"),i=n.data("pn"),o=n.data("preorder"),s=$("."+t+" .buy-button");s.removeAttr("data-pn"),s.attr("data-pn",i),s.removeAttr("data-preorder"),s.attr("data-preorder",o),$(".buy-button").each(function(){"true"==$(this).attr("data-preorder")?($(this).hide(),$(this).next().show()):($(this).show(),$(this).next().hide())})}$(".buy-button").each(function(){"true"==$(this).attr("data-preorder")&&($(this).hide(),$(this).next().show())}),$(".btn-cat-buy-now").on("click",function(){var s=$(".cat-item.active").attr("data-rm");$(".polyPlus").each(function(e){$(this).attr("data-related-model")==s&&$(this).show()});var r=$(this).attr("data-card-id");t="commerce-modal"+r,a="commerceModelSelector"+r,n=$("."+t+" .product-gallery"+r),i=$("."+t+" #"+a),e=i.customDropdown(),i.change(function(){var e,t=i.find(".item.active").attr("data-item"),a=n.find(".carousel-item[data-item="+t+"]").index();o(t),e=a,n.carousel(e),function(){var e=$(".cat-item.active").attr("data-rm");$(".polyPlus").each(function(t){var a=$(this).attr("data-related-model");a==e?$(this).show():$(this).hide()})}()}),n.carousel({pause:!0,interval:!1}),n.on("slide.bs.carousel",function(t){var a=$(t.relatedTarget).attr("data-item");o(a),function(t){var a=i.find(".cat-item[id="+t+"]");a.siblings().removeClass("active"),a.addClass("active"),e.updateSelected(a)}(a)})}),$(".buy-now-modal").each(function(){$(this).data("ids"),$(this).data("showratings")&&"true"==siteConfig.showBV&&loadBazaarvoiceApi(function(){})})}),$(document).ready(function(){var e=$("#buy-now").attr("data-preorder");null!=e&&"true"==e&&($("#buy-now").hide(),$("#preorder").show());var t=$("#buy-now-il").attr("data-preorder");null!=t&&"true"==t&&($("#buy-now-il").hide(),$("#preorder-il").show()),$(".form-check-input").click(function(){$(".form-check-input").not(this).prop("checked",!1)});var a=$(".price.active .base-price").eq(1);a.length<1&&(a=$(".price.active .base-price").eq(0));var n,i,o=a.text();$(".form-check-input").click(function(){if($(this).is(":checked")){void 0===n&&(i=$(".price.active .salePrice").eq(0),n=i.text());var e=$(this).attr("data-price"),t=currency(e).add(o),s=currency(e).add(n),r=function(e){return currency(e,{symbol:"€",decimal:",",separator:".",pattern:"# !"})},c=function(e){return currency(e,{symbol:"£"})};a.empty(),i.empty();var l=document.location.href;-1!=l.indexOf("/de/de")||-1!=l.indexOf("/fr/fr")||-1!=l.indexOf("/es/es")||-1!=l.indexOf("/ie/en")?(a.append(''+r(t).format()+""),i.append(''+r(s).format()+"")):-1!=l.indexOf("gb/en")?(a.append(''+c(t).format()+""),i.append(''+c(s).format()+"")):(a.append(''+t.format()+""),i.append(''+s.format()+""))}else a.empty(),a.append(''+o+""),i.empty(),i.append(''+n+"")}),$(".dr-add-to-cart").on("click",function(){p()}),$(".inline-dropdown").each(function(){$(this).hasClass("single-item")&&$(this).hide()});var s=$(".commerce-modal .product-gallery"),r=$(".commerce-modal #commerceModelSelector"),c=(r.customDropdown(),$(".il-item.active").attr("data-rm"));function l(e){var t=$(".commerce-modal [data-model="+e+"]");t.siblings().removeClass("active"),t.addClass("active");var a=$(".commerce-modal .price[data-model="+e+"]"),n=a.data("pn"),i=a.data("preorder"),o=$(".commerce-modal .dr-add-to-cart");o.removeAttr("data-pn"),o.attr("data-pn",n),o.removeAttr("data-preorder"),o.attr("data-preorder",i);var s=$("#buy-now").attr("data-preorder");null!=s&&"true"==s?($("#buy-now").hide(),$("#preorder").show()):($("#buy-now").show(),$("#preorder").hide());var r=$("#buy-now-il").attr("data-preorder");null!=r&&"true"==r?($("#buy-now-il").hide(),$("#preorder-il").show()):($("#buy-now-il").show(),$("#preorder-il").hide());var c=$(".inline-dropdown-panel .item.active").data("purchasable"),l=$(".product-cart-details #no-stock"),d=$(".product-cart-details #buy-now-il");c?(d.show(),l.hide()):(d.hide(),l.show())}function d(e,t){var a=t.closest(".content"),n=a.find(".dropdown-panel .item[id="+e+"]");n.siblings().removeClass("active"),n.addClass("active"),a.find(".dropdown-panel").attr("aria-activedescendant",e)}function u(){var e=$(".inline-dropdown-panel .item.active").data("purchasable"),t=$(".product-cart-details #buy-now-il"),a=$(".product-cart-details #no-stock");e?(t.show(),a.hide()):(t.hide(),a.show())}$(".polyPlus").each(function(e){$(this).attr("data-related-model")==c&&$(this).show()}),r.change(function(){var e,t=r.find(".item.active").attr("data-item"),a=s.find(".carousel-item[data-item="+t+"]").index();l(t),function(){var e=$(".il-item.active").attr("data-rm");$(".polyPlus").each(function(t){var a=$(this).attr("data-related-model");a==e?$(this).show():$(this).hide()})}(),e=a,s.carousel(e)}),s.carousel({pause:!0,interval:!1}),$("#productGallery").off("slide.bs.carousel").on("slide.bs.carousel",function(e){var t=$(e.relatedTarget),a=t.attr("data-item");l(a),d(a,t)}),$("#inlineBuyNowProductGallery").off("slide.bs.carousel").on("slide.bs.carousel",function(e){var t=$(e.relatedTarget),a=t.attr("data-item");l(a),d(a,t),u()}),$(".buy-now-modal").each(function(){$(this).data("ids"),$(this).data("showratings")&&"true"==siteConfig.showBV&&loadBazaarvoiceApi(function(){})}),$(".inline-dropdown-panel .item").on("click",function(){var e=$(this);setTimeout(function(){$(".product-cart-details").trigger("click");var t=e.data("purchasable"),a=e.closest(".product-cart-details").find("#buy-now-il");t?a.show():a.hide()},1)}),$(".inline-buy-now-modal-component .navigate-container").each(function(){$(this).find("li").length<=5&&$(this).closest(".navigate-wrapper").addClass("less-than-five-items")}),$("#inlineBuyNowProductGallery").on("slide.bs.carousel",function(e){var t,a,n=$(e.target).find(".carousel-indicators"),i=n.find("li").length;if(i>5){var o=(t=n.find("li"),a=$(e.target).find(".navigate-container"),t.filter(function(e,t){var n=$(t);return n.offset().left>=a.offset().left&&n.offset().left+n.width()<=a.offset().left+a.width()})),s=o.eq(0),r=o.eq(o.length-1);if("left"===e.direction){if(r.hasClass("active")){var c=n.css("left").replace("px","");n.css("left",c-66+"px")}0===e.to&&n.css("left",33*(i-5))}else s.hasClass("active")&&(c=n.css("left").replace("px",""),n.css("left",parseInt(c)+66+"px")),e.to===i-1&&n.css("left",-33*(i-5))}}),$("#inlineBuyNowProductGallery").on("dropdown-selected",function(e,t,a){var n=t.closest(".inline-buynow-content").find(".carousel-indicators"),i=33*(n.find("li").length-5),o=a+1;if(o>5){var s=i-66*(o-5);n.css("left",s+"px")}else n.css("left",i+"px")}),$(function(){var e=$("#inlineBuyNowProductGallery .carousel-indicators"),t=e.find("li").length;t>5&&e.css("left",33*(t-5))}),$("#commerceModelSelector ul li.item").on("click",function(){p();var e,t,a,n=parseInt($(this).data("item").split("model-")[1]);$("#inlineBuyNowProductGallery").carousel(n),$("#inlineBuyNowProductGallery").trigger("dropdown-selected",[$(this),n]),e=$(this),t=window.location.pathname,a=t.split("."),t=null==a[1]?t.concat("."+e.data("pn")):"html"!=a[1]?t.replace(a[1],e.data("pn")):t.replace(a[1],e.data("pn"))+"."+a[1],history.pushState?window.history.pushState("",document.title,t):document.location.pathname=t,u(),h()});var h=function(){setTimeout(function(){var e=$(".price-cart ul li.price.active span.salePrice").text(),t=$(".price-cart ul li.price.active span.base-price").text();e&&($(".will-change span.startingPrice").text(""),$(".will-change span.displayPrice").text(e)),t&&$(".will-change span.actualPrice").text(t),""==e&&($(".will-change span.startingPrice").text(""),$(".will-change span.displayPrice").text(t),$(".will-change span.actualPrice").text(""))},100)};function p(){setTimeout(function(){digitalData.product[0].productSKU=document.getElementsByClassName("product-name active")[1].outerText.replace("(P/N: ","").replace(")",""),digitalData.product[0].productDisplayPrice=document.getElementsByClassName("price active")[0].outerText,digitalData.product[0].productModel=document.getElementsByClassName("il-item item active")[0].outerText.replaceAll("\n","").replaceAll("\t","")},10)}function p(){setTimeout(function(){digitalData.product[0].productSKU=document.getElementsByClassName("product-name active")[1].outerText.replace("(P/N: ","").replace(")",""),"salePrice"==document.getElementsByClassName("price active")[0].lastElementChild.className?digitalData.product[0].productDisplayPrice=document.getElementsByClassName("price active")[0].lastElementChild.outerText:digitalData.product[0].productDisplayPrice=document.getElementsByClassName("price active")[0].outerText,digitalData.product[0].productModel=document.getElementsByClassName("il-item item active")[0].outerText.replaceAll("\n","").replaceAll("\t","")},10)}u()}),function(){function e(e){if($(".buynow-polyplus-accordion-container").length>0&&(null==$(".buynow-polyplus-accordion-container").find("input[name='polyplus']:checked").attr("data-price")||""==$(".buynow-polyplus-accordion-container").find().attr("data-price"))){$("#stockArea").hide();var t=$(".product-cart-details #buy-now-addtocart");t.attr("data-pn",""),t.attr("disabled",!0),t.find(".final-price").html(""),$(".buynow-details-container .starting-at-price").show(),$(".buynow-details-container .product-price").hide(),$(".selected-product").find(".product-name").html(""),$("input[name='polyplus']").removeAttr("data-price"),$(".quantity-left-minus").attr("disabled",!0),$("#quantity").attr("disabled",!0),$(".quantity-right-plus").attr("disabled",!0);var n=$(".buynow-polyplus-accordion-container").attr("data-list-set"),i=JSON.parse(n);for(var o in i)if(o==e)for(var s in!0,i[o]){var r=i[o][s].name,c=i[o][s].price,l=i[o][s].partNumber,d=i[o][s].uniqueID,u=i[o][s].modelNumber;$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("disabled",!1),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("data-model",o),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("data-price",c),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("data-pn",l),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("id",d),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").attr("data-model-number",u),$(".buynow-polyplus-accordion-container").find("input[value='"+r+"']").parents(".feature-icon-container").removeClass("radio-btn-disabled")}$(".buynow-polyplus-accordion-container").find("input[value='none']").attr("disabled",!1),$(".buynow-polyplus-accordion-container").find("input[value='none']").attr("data-price","$0"),$(".buynow-polyplus-accordion-container").find("input[value='none']").attr("data-model",e),$(".buynow-polyplus-accordion-container").find("input[value='none']").parents(".feature-icon-container").removeClass("radio-btn-disabled"),$(".buynow-polyplus-accordion-panel").hasClass("show")||($(".buynow-polyplus-accordion-panel").addClass("show"),$(".buynow-polyplus-accordion-panel").siblings(".buynow-polyplus-accordion-btn").addClass("expanded"),$(".buynow-polyplus-accordion-panel").siblings(".buynow-polyplus-accordion-btn").removeClass("collapsed")),$(".buynow-polyplus-accordion-container").find("input[value='none']").click()}else{var h=$(".product-cart-details #buy-now-addtocart"),p=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-purchasable"),f=$(".product-cart-details #no-stock-msg");if("true"==p){h.show(),f.hide(),$("#buy-contact-modal").hide(),f.hide();var m=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-pn"),v=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-price"),g=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-model"),b="",w=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-stock");w<5&&w>0?($("#stockArea").show(),$("#stockNumber").text(""),$("#stockNumber").text(w)):$("#stockArea").hide();var y,C=$(".buynow-carousel li.carousel-item[data-rm='"+e+"']").attr("data-sale-price"),k=0;if(void 0!==C&&!1!==C){var x=parseFloat(C.slice(1));if(void 0!==x&&0!=x)if($(".buynow-polyplus-accordion-container").length>0&&null!=$(".buynow-polyplus-accordion-container").find("input[name='polyplus']").attr("data-price")){var P=$("input[name='polyplus']:checked").attr("data-price");y=parseFloat(v.slice(1).replace(",",""))+parseFloat(P.slice(1).replace(",","")),k=parseFloat(C.slice(1).replace(",",""))+parseFloat(P.slice(1).replace(",","")),b=" "+v.charAt(0)+k.toFixed(2)+" "+v.charAt(0)+y.toFixed(2)+""}else y=parseFloat(v.slice(1)),k=parseFloat(C.slice(1)),b=""+C+""+v+"";else if($(".buynow-polyplus-accordion-container").length>0&&null!=$(".buynow-polyplus-accordion-container").find("input[name='polyplus']").attr("data-price")){var _=$("input[name='polyplus']:checked").attr("data-price");y=parseFloat(v.slice(1).replace(",",""))+parseFloat(_.slice(1).replace(",","")),b=" "+v.charAt(0)+y.toFixed(2)+""}else y=parseFloat(v.slice(1)),b=""+v+""}else if($(".buynow-polyplus-accordion-container").length>0&&null!=$(".buynow-polyplus-accordion-container").find("input[name='polyplus']").attr("data-price")){var T=$("input[name='polyplus']:checked").attr("data-price");y=parseFloat(v.slice(1).replace(",",""))+parseFloat(T.slice(1).replace(",","")),b=" "+v.charAt(0)+y.toFixed(2)+""}else y=parseFloat(v.slice(1)),b=""+v+"";a(),null!=m||null!=m?(h.attr("data-pn",m),h.attr("disabled",!1),h.find(".final-price").html(b),$(".selected-product").find(".product-name").html(g+" | (P/N:"+m+") "),$(".buynow-details-container .starting-at-price").hide(),$(".buynow-details-container .product-price").show(),0!=k?($(".buynow-details-container .product-price .actualPrice").html(v.charAt(0)+y.toFixed(2)),$(".buynow-details-container .product-price .displayPrice").html(v.charAt(0)+k.toFixed(2))):null!=y&&($(".buynow-details-container .product-price .displayPrice").html(v.charAt(0)+y.toFixed(2)),$(".buynow-details-container .product-price .actualPrice").html("")),$(".quantity-left-minus").attr("disabled",!1),$("#quantity").attr("disabled",!1),$(".quantity-right-plus").attr("disabled",!1)):(h.attr("data-pn",""),h.attr("disabled",!0),h.find(".final-price").html(""),$("input[name='polyplus']").removeAttr("data-price"),$(".selected-product").find(".product-name").html(""),$(".quantity-left-minus").attr("disabled",!0),$("#quantity").attr("disabled",!0),$(".quantity-right-plus").attr("disabled",!0))}else h.hide(),f.show(),$(".buynow-details-container .starting-at-price").show(),$(".buynow-details-container .product-price").hide(),$("#buy-contact-modal").show()}}function t(e){null!=e&&null!=e&&$("#buyNowProductGallery").carousel(parseInt($(".buynow-carousel li.carousel-item[data-rm='"+e+"']").data("item").split("model-")[1]))}function a(e,t,a){setTimeout(function(){var e=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-pn");digitalData.product[0].productSKU=e;var t=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-model");digitalData.product[0].productModel=t,digitalData.product[0].productDisplayPrice=$(".final-price span:first-child")},10)}$(document).ready(function(){if($(".quantity-right-plus").click(function(e){e.preventDefault();var t=parseInt($("#quantity").val());$("#quantity").val(t+1)}),$(".quantity-left-minus").click(function(e){e.preventDefault();var t=parseInt($("#quantity").val());t>0&&$("#quantity").val(t-1)}),$(".buynow-accordion-btn").click(function(){$(this).siblings(".buynow-accordion-panel").toggleClass("show"),$(this).siblings(".buynow-accordion-panel").siblings(".buynow-accordion-btn").toggleClass("expanded collapsed")}),$(".buynow-polyplus-accordion-btn").click(function(){$(this).siblings(".buynow-polyplus-accordion-panel").toggleClass("show"),$(this).siblings(".buynow-polyplus-accordion-panel").siblings(".buynow-polyplus-accordion-btn").toggleClass("expanded collapsed")}),digitalData.product[0].productSKU="",digitalData.product[0].productModel="",digitalData.product[0].productDisplayPrice="",digitalData.product[0].productModel=$(".product-name").html(),$(".buynow .spec-wrapper .spec-header").click(function(){var e=$(this).attr("data-target");$(e).toggleClass("show collapse"),$(this).toggleClass("expand")}),1==$(".buy-now-wrapper .related-accessories .mobile-view .carousel .carousel-item").length&&($(".buy-now-wrapper .related-accessories .mobile-view .carousel .carousel-control-prev").hide(),$(".buy-now-wrapper .related-accessories .mobile-view .carousel .carousel-control-next").hide()),1==$(".buy-now-wrapper .similar-products .mobile-view .carousel .carousel-item").length&&($(".buy-now-wrapper .similar-products .mobile-view .carousel .carousel-control-prev").hide(),$(".buy-now-wrapper .similar-products .mobile-view .carousel .carousel-control-next").hide()),$(".accordion-selection-panel .buynow-accordion-container").not(":nth-child(1)").find("input[type='radio']").each(function(){$(this).attr("disabled",!0),$(this).parents(".feature-icon-container").addClass("radio-btn-disabled")}),$(".accordion-selection-panel .buynow-polyplus-accordion-container").find("input[type='radio']").each(function(){$(this).attr("disabled",!0),$(this).parents(".feature-icon-container").addClass("radio-btn-disabled")}),$("#buy-now-addtocart").hasClass("single-model"))if($(".buynow-polyplus-accordion-container").length>0){$(".buynow-polyplus-accordion-panel").hasClass("show")||($(".buynow-polyplus-accordion-panel").addClass("show"),$(".buynow-polyplus-accordion-btn").addClass("expanded"),$(".buynow-polyplus-accordion-btn").removeClass("collapsed"));var n=$(".product-cart-details #no-stock-msg"),i=$(".buynow-polyplus-accordion-container").attr("data-list-set"),o=JSON.parse(i);for(var s in o)if($(".buynow-carousel .carousel-item.active").attr("data-rm")==s)for(var r in o[s]){var c=o[s][r].name,l=o[s][r].price,d=o[s][r].partNumber,u=o[s][r].uniqueID,h=o[s][r].modelNumber;$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").attr("disabled",!1),$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").attr("data-price",l),$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").attr("data-pn",d),$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").attr("id",u),$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").attr("data-model-number",h),$(".buynow-polyplus-accordion-container .buynow-polyplus-accordion-panel").find("input[value='"+c+"']").parents(".feature-icon-container").removeClass("radio-btn-disabled")}$(".buynow-polyplus-accordion-container").find("input[value='none']").attr("disabled",!1),$(".buynow-polyplus-accordion-container").find("input[value='none']").attr("data-price","$0"),$(".buynow-polyplus-accordion-container").find("input[value='none']").parents(".feature-icon-container").removeClass("radio-btn-disabled"),$(".buynow-polyplus-accordion-container input[type='radio']").click(function(){if($("#buy-now-addtocart").show(),$(".buynow-polyplus-accordion-container .feature-icon-container").removeClass("selected-radio-btn"),null!=$("input[name='polyplus']").val()&&null!=$("input[name='polyplus']").val()){var e=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-pn"),t=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-price"),i=$(this).attr("data-price"),o=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-model"),s=$(".buynow-carousel li.carousel-item.active").attr("data-sale-price"),r=0;void 0!==s&&!1!==s&&(r=parseFloat(s.slice(1).replace(",",""))+parseFloat(i.slice(1).replace(",","")));var c,l=parseFloat(t.slice(1).replace(",",""))+parseFloat(i.slice(1).replace(",",""));c=0!=r?" "+t.charAt(0)+r.toFixed(2)+""+t.charAt(0)+l.toFixed(2)+"":" "+t.charAt(0)+l.toFixed(2)+"","true"==$(".buynow-carousel li.carousel-item.active:first-child").attr("data-purchasable")?($("#buy-now-addtocart").attr("disabled",!1),$("#buy-now-addtocart").attr("data-pn",e),$("#buy-now-addtocart").find(".final-price").html(c),$(".buynow-details-container .starting-at-price").hide(),$(".buynow-details-container .product-price").show(),0!=r?($(".buynow-details-container .product-price .actualPrice").html(t.charAt(0)+l.toFixed(2)),$(".buynow-details-container .product-price .displayPrice").html(t.charAt(0)+r.toFixed(2))):($(".buynow-details-container .product-price .displayPrice").html(t.charAt(0)+l.toFixed(2)),$(".buynow-details-container .product-price .actualPrice").html("")),$(".quantity-left-minus").attr("disabled",!1),$("#quantity").attr("disabled",!1),$(".quantity-right-plus").attr("disabled",!1),a()):($("#buy-now-addtocart").hide(),$("#buy-contact-modal").show(),".buynow-details-container .starting-at-price".show(),$(".buynow-details-container .product-price").hide(),n.show()),$(".selected-product").find(".product-name").html(o+" | (P/N:"+e+")"),$(this).parents(".feature-icon-container").addClass("selected-radio-btn");var d=$("input[name='polyplus']:checked").siblings("div").html();$(".buynow-polyplus-accordion-container").find(".poly-plus-selected").html(d),a()}}),$(".buynow-polyplus-accordion-container").find("input[value='none']").click()}else{var p,f=$(".buynow-carousel li.carousel-item.active").attr("data-pn"),m=$(".buynow-carousel li.carousel-item.active").attr("data-price"),v=$(".buynow-carousel li.carousel-item.active").attr("data-model"),g=$(".buynow-carousel li.carousel-item.active:first-child").attr("data-purchasable"),b=$(".buynow-carousel li.carousel-item.active").attr("data-sale-price");if(void 0!==b&&!1!==b){var w=parseFloat(b.slice(1));p=void 0!==w&&0!=w?" "+b+" "+m+"":""+m+""}else p=""+m+"";"true"==g?($("#buy-now-addtocart").attr("disabled",!1),$("#buy-now-addtocart").attr("data-pn",f),$("#buy-now-addtocart").find(".final-price").html(p),$(".buynow-details-container .starting-at-price").hide(),$(".buynow-details-container .product-price").show(),0!=b?($(".buynow-details-container .product-price .actualPrice").html(m),$(".buynow-details-container .product-price .displayPrice").html(b)):($(".buynow-details-container .product-price .displayPrice").html(m),$(".buynow-details-container .product-price .actualPrice").html("")),$(".quantity-left-minus").attr("disabled",!1),$("#quantity").attr("disabled",!1),$(".quantity-right-plus").attr("disabled",!1),a()):($("#buy-now-addtocart").hide(),$("#buy-contact-modal").show(),$(".buynow-details-container .starting-at-price").show(),$(".buynow-details-container .product-price").hide(),noStockMsg.show()),$(".selected-product").find(".product-name").html(v+" | (P/N:"+f+")")}var y=$(".accordion-selection-panel").find("input[type='radio']"),C=[];y.each(function(){-1==C.indexOf($(this).attr("name"))&&C.push($(this).attr("name"))}),$("#buy-now-addtocart").hasClass("single-model")||$(".buynow-polyplus-accordion-container input[type='radio']").click(function(){if($(".buynow-polyplus-accordion-container .feature-icon-container").removeClass("selected-radio-btn"),null!=$(this).attr("data-model")){e($(this).attr("data-model")),$(this).parents(".feature-icon-container").addClass("selected-radio-btn");var t=$("input[name='polyplus']:checked").siblings("div").html();$(".buynow-polyplus-accordion-container").find(".poly-plus-selected").html(t)}}),$(".buynow-accordion-container input[type='radio']").click(function(){($(".buynow-polyplus-accordion-container .feature-icon-container").removeClass("selected-radio-btn"),$(".accordion-selection-panel .buynow-accordion-container.unselected-options").each(function(e){$(this).find(".buynow-accordion-panel").addClass("show"),$(this).find(".feature-icon-container").removeClass("radio-btn-disabled"),$(this).find("input[type='radio']").attr("disabled",!1),$(this).find(".buynow-accordion-btn").removeClass("collapsed"),$(this).find(".buynow-accordion-btn").addClass("expanded")}),$(".buynow-polyplus-accordion-container").length>0)&&$(".accordion-selection-panel .buynow-polyplus-accordion-container").find("input[type='radio']").each(function(){$(this).attr("disabled",!0),$(this).parents(".feature-icon-container").addClass("radio-btn-disabled"),$(this).parents(".feature-icon-container").removeClass("selected-radio-btn")});for(var a=!1,n={},i=0;i0&&($("input[name='polyplus']").removeAttr("data-price"),$(".buynow-polyplus-accordion-panel").removeClass("show"),$(".buynow-polyplus-accordion-btn").removeClass("expanded"),$(".buynow-polyplus-accordion-btn").addClass("collapsed"))),function(e){if(1!=$("#buy-now-addtocart").attr("disabled")){e.parents(".buynow-accordion-container").find(".buynow-accordion-panel").each(function(){$(this).hasClass("show")&&$(this).parents(".buynow-accordion-container").find(".buynow-accordion-btn").click()}),e.parents(".buynow-accordion-container").nextAll(".buynow-accordion-container").each(function(){if(!$(this).find(".feature-icon-container").hasClass("radio-btn-disabled"))return $(this).find(".buynow-accordion-btn").click(),!1}),$(".accordion-selection-panel .buynow-accordion-container").find(".value-selected").html("");var t=$(".accordion-selection-panel .buynow-accordion-container").find("input[type='radio']:checked");t.each(function(){$(this).parents(".buynow-accordion-container").find(".buynow-accordion-btn .value-selected").html($(this).siblings("div").html())});var a=$(".accordion-selection-panel .buynow-accordion-container .feature-icon-container.radio-btn-disabled ").find("input[type='radio']");a.each(function(){var e=$(this).attr("name");$(this).parents(".buynow-accordion-container").find(".buynow-accordion-btn .value-selected").html($("input[name='"+e+"']:checked").siblings("div").html())})}}($(this))});var k=$(".accordion-selection-panel").attr("data-pn-selected");null!=k&&function(e){var t=$(".buynow-carousel .carousel-item[data-pn='"+e+"']").attr("data-rm");if(null!=t){var a=$(".accordion-selection-panel").attr("data-set"),n=JSON.parse(a),i=n[t],o=$(".accordion-selection-panel .buynow-accordion-container");o.each(function(e){$(this).find(".feature-icon-container").each(function(e){var t=$(this).find("input").attr("name"),a=$(this).find("input").val(),n=i[t];a==n&&$(this).find("input[name='"+t+"'").click()})})}}(k),$("#buy-now-addtocart").on("click",function(){var e=$.trim($("#buy-now-addtocart").attr("data-pn"));addToCart(e)}),$("#buyNowProductGallery").carousel({pause:!0,interval:!1}),$(".related-accessories .carousel-item").each(function(){var e=$(this).next();e.length||(e=$(this).siblings(":first")),e.children(":first-child").clone().appendTo($(this));for(var t=0;t<3;t++)(e=e.next()).length||(e=$(this).siblings(":first")),e.children(":first-child").clone().appendTo($(this))}),$(".related-accessories .carousel").carousel({interval:!1})})}(),function(){var e,t,a,n=[],i=$(".category-container").find("#category_data").data("cards");function o(){$(".category-grid .grid-content-wrapper").each(function(){for(var e,t=0,a=0,n=$(this).children("li"),i=0;i0||e.search?(a||(a=$(".category-grid .grid-content-wrapper").detach()),$(".category-grid .grid-content-wrapper").remove(),f=(f=e.search)?f.toLowerCase():"",$(".category-grid").hasClass("resources-category")?n=n.filter(function(e){return-1!=e.title.toLowerCase().search(f)}):$(".category-grid").hasClass("support-category")&&(n=n.filter(function(e){return-1!=e.productTitle.toLowerCase().search(f)})),e.filters.length>0&&(r=e.filters,n=n.filter(function(e){return!!e.tags&&r.every(function(t){return e.tags.indexOf(t)>-1})})),function(){var e=getI18nString("No Results Found"),t='
    ';n.length>0?(n.forEach(function(e){t+=d(e)}),t+="
"):t='
'+e+"
";$(".category-grid").prepend(t),o()}()):a&&($(".category-grid .grid-content-wrapper").remove(),$(".category-grid").prepend(a),a=null),function(e){switch(e){case"name":$(".category-grid").hasClass("resources-category")?n.sort(l):n.sort(c)}}(e.sort),n.forEach(function(e,t){var a=$(".category-grid .grid-content-wrapper>li:not(.grid-promo)").eq(t);a.after(d(e)),a.remove()}),o(),t&&(t.currentPage=1,t.totalPages=s(),t.createPagination(),u()),h(),m=$(".category-grid").offset().top-20,$("html,body").animate({scrollTop:m},200),p()}function c(e,t){var a=$("html").attr("lang");return e.productTitle.trim().localeCompare(t.productTitle.trim(),a)}function l(e,t){var a=$("html").attr("lang");return e.title.trim().localeCompare(t.title.trim(),a)}function d(e){var t="",a=getI18nString("Learn More"),n=getI18nString("Download {0}"),i=getI18nString("Watch The Video"),o=getI18nString("Data Sheet"),s=getI18nString("Watch Webinar");if($(".category-grid").hasClass("resources-category")){t=$("
  • ",{class:"resource-card"});var r=$("
    ",{class:"topic-icon"}).append($("
    ",{class:"topic",text:e.topic||""})),c=$("
    ",{class:"icon"});if(e.icon&&c.append($("",{src:e.icon,alt:"icon"})),r.append(c),t.append(r),t.append($("
    ",{class:"resource-title",text:e.title||""})),t.append($("

    ",{class:"resource-description",text:e.description||""})),e.learnMoreCTA&&e.asset){var l=n.replace("{0}",e.topic);t.append($("",{class:"btn btn-secondary",href:e.learnMoreCTA,download:e.fileName,text:l}))}else if(e.learnMoreCTA&&e.page)t.append($("",{class:"btn btn-secondary",href:e.learnMoreCTA,text:"Webinar"===e.topic?s:a}));else if(e.learnMoreCTA&&e.video){var d=$("

    ",{class:"video-cta"});d.append($("').append(p.append(h).append(f.append(m))).append(v.append(b).append(m).append(g).append(C.append(w).append(y)).append(k))}return t[0].outerHTML}function u(){var e=t.currentPage,a=1,n=0;$(".category-grid .grid-content-wrapper li").each(function(){$(this).hide(),e==a&&$(this).show(),$(this).hasClass("double-column-width")?n+=2:$(this).hasClass("full-width")?n+=3:n++,12==n&&(n=0,a++)}),t.totalPages<2?$(".category-grid .category-pagination").hide():$(".category-grid .category-pagination").show()}function h(){if(window.navigator.userAgent.match(/MSIE|Trident/)){var e=$(".category-grid .grid-content-wrapper li:visible");e.each(function(){$(this).css("height","")});var t=function(e){var t=0;return e.each(function(){t=Math.max(t,$(this).outerHeight())}),t}(e);"MOBILE"!==getCurrentBreakpoint()&&e.each(function(){$(this).css("height",t)})}}function p(){if($(".category-grid").hasClass("product-category")){var e=[];i.filter(function(t){t.showRatings&&e.push(t.identifier)}),"true"==siteConfig.showBV&&loadBazaarvoiceApi(function(){$BV.ui("rr","inline_ratings",{productIds:e,containerPrefix:"BVRRInlineRating"})})}}i=i instanceof Object?i:i?JSON.parse(i):[],$(document).on("click",".category-grid .category-pagination .pagination-item:not(.disabled)",function(e){e.preventDefault();var a=$(this).find(".pagination-link"),n=a.attr("aria-label");"Previous"===n&&t.currentPage>1?t.currentPage--:"Next"===n&&t.currentPage
    '),e.after('
    ');var a=e.next("div.select-styled");a.text(e.children("option").eq(0).text());for(var n=$("