{"version":3,"sources":["webpack:///../js/libs/cookie-banner.js","webpack:///./modules/CookieBanner.ts","webpack:///./modules/CookiePolicyTracking.ts"],"names":["BdfCookiePolicyModule","$","options","expirationInDays","initialized","cookieDomain","domain","window","location","hostname","parts","split","len","length","tld","sld","lastTwoParts","getCookieDomain","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","document","cookie","getCookie","value","deleteOldCookie","name","ca","i","c","charAt","substring","indexOf","setCheckboxesStates","Array","from","querySelectorAll","forEach","element","cookieDisabledName","dataset","cookieName","checked","checkboxChanged","dependsOnAttr","getAttribute","concat","el","mainCheckBox","cookieEnabledName","checkbox","state","onCheckboxChanged","callback","readyState","addEventListener","domReady","parentEL","closest","chceckmark","item","e","preventDefault","stopPropagation","stopImmediatePropagation","innerHTML","style","cursor","classList","add","policyAcceptedValue","showFirstTime","showConfirmationRequired","confirmationRequired","querySelector","display","activeDefault","legitimateValue","event","currentTarget","openPopup","btn","CookieBanner_CookieBanner","_super","CookieBanner","_this","call","this","dataCookieName","ajaxUrl","sessionClosedCookies","sessionStorage","getItem","isCookieSet","initCookies","loadCookieBanner","onCookieChange","__extends","setup","selector","filter","node","moduleInitialized","prototype","url","xhr","XMLHttpRequest","onload","status","remove","responseText","console","log","open","send","isAjaxCall","module","trackCookiePopupShow","cookie_banner","selectorParent","parentElement","trackCookiePopupAccept","setItem","trackCookiePopupSettings","CookiePolicyTracking","__webpack_require__","r","__webpack_exports__","cookiePopupEventHandler","dataLayer","push","eventCategory","eventAction","eventLabel","getCurrentDate","eventNonInteraction","event_name","_clear","toDateString"],"mappings":"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","file":"./modules/CookieBanner.8e3c08eb.js","sourcesContent":["var BdfCookiePolicyModule = function ($, options) {\r\n var expirationInDays = 365;\r\n var policyAcceptedCookieName = \"cookie-policy-accepted\";\r\n var legitimateCookieName = \"LegitimateCookiesDisabled\";\r\n var marketingCookieName = \"MarketingCookiesDisabled\";\r\n var performanceCookieName = \"PerformanceCookiesDisabled\";\r\n var initialized = false;\r\n var cookieDomain = getCookieDomain();\r\n\r\n function getCookieDomain() {\r\n var domain = window.location.hostname;\r\n var parts = domain.split(\".\");\r\n var len = parts.length;\r\n if (len <= 1)\r\n return domain;\r\n if (len <= 2)\r\n return \".\" + domain;\r\n var tld = parts[len - 1];\r\n var sld = parts[len - 2];\r\n var lastTwoParts = \".\" + sld + \".\" + tld;\r\n if (sld === \"co\" || sld === \"com\") {\r\n if (len >= 3) {\r\n return \".\" + parts[len - 3] + lastTwoParts;\r\n }\r\n }\r\n return lastTwoParts;\r\n }\r\n\r\n function deleteOldCookie(cname, value) {\r\n document.cookie = cname + '=' + value + ';expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/';\r\n }\r\n\r\n function setCookie(cname, cvalue, exdays) {\r\n var d = new Date();\r\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n var expires = 'expires=' + d.toUTCString();\r\n document.cookie = cname + '=' + cvalue + '; ' + expires + \";domain=\" + cookieDomain + \";path=/\";\r\n if (cookieDomain != window.location.hostname && getCookie(cname) != cvalue) {\r\n deleteOldCookie(cname, cvalue);\r\n document.cookie = cname + '=' + cvalue + '; ' + expires + \";domain=\" + cookieDomain + \";path=/\";\r\n }\r\n }\r\n\r\n function getCookie(cname) {\r\n var name = cname + '=',\r\n ca = document.cookie.split(';');\r\n\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) !== -1) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n\r\n function alwaysActiveCheckbox() {\r\n const checkboxes = Array.from(document.querySelectorAll('.cp-cookie-settings .checkmark-text'));\r\n\r\n checkboxes.forEach((el) => {\r\n if (el.getAttribute('data-deactivated-text') == \"\") {\r\n const parentEL = el.closest('.cp-cookie-settings');\r\n const checkbox = parentEL.querySelectorAll('.bdf-cookie-policy-toggle');\r\n const chceckmark = parentEL.querySelectorAll('.checkmark');\r\n\r\n checkbox.forEach((item) => {\r\n item.checked = true;\r\n var cookieEnabledName = item.dataset.cookieName;\r\n setCookie(cookieEnabledName, \"0\", expirationInDays);\r\n\r\n item.addEventListener('change', (e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n e.stopImmediatePropagation();\r\n item.checked = true;\r\n el.innerHTML = el.getAttribute('data-activated-text');\r\n })\r\n })\r\n\r\n chceckmark.forEach((item) => {\r\n item.style.cursor = 'default';\r\n item.closest('.checkbox').classList.add('alwaysChecked');\r\n })\r\n return;\r\n }\r\n })\r\n }\r\n\r\n function checkboxesStatesBasedonDepended() {\r\n let checkboxInput = Array.from(document.querySelectorAll('.bdf-cookie-policy-toggle'));\r\n\r\n checkboxInput.forEach((element) => {\r\n let dependsOnAttr = element.getAttribute('data-depends-on');\r\n let cookieName = element.getAttribute('data-cookie-name');\r\n\r\n if (cookieName = dependsOnAttr && element.checked == false) {\r\n\r\n var mainCheckBoxes = Array.from(document.querySelectorAll(`input[data-cookie-name=${dependsOnAttr}]`));\r\n\r\n mainCheckBoxes.forEach(el => {\r\n var mainCheckBox = el;\r\n var cookieEnabledName = mainCheckBox.dataset.cookieName;\r\n\r\n mainCheckBox.checked = false;\r\n setCookie(cookieEnabledName, \"1\", expirationInDays);\r\n });\r\n }\r\n })\r\n }\r\n\r\n function setCheckboxesStates() {\r\n let toggleButtons = Array.from(document.querySelectorAll('.bdf-cookie-policy-toggle'));\r\n\r\n toggleButtons.forEach(function (element) {\r\n var cookieDisabledName = element.dataset.cookieName;\r\n\r\n if (getCookie(cookieDisabledName) === '1') {\r\n if (element.checked) {\r\n element.checked = false;\r\n }\r\n checkboxChanged(element, false);\r\n }\r\n else if (getCookie(cookieDisabledName) === '') {\r\n checkboxChanged(element, false);\r\n }\r\n else {\r\n if (!element.checked) {\r\n element.checked = true;\r\n }\r\n checkboxChanged(element, true);\r\n }\r\n\r\n });\r\n\r\n checkboxesStatesBasedonDepended();\r\n }\r\n\r\n function checkboxChanged(checkbox, state) {\r\n if (options.onCheckboxChanged) {\r\n options.onCheckboxChanged(checkbox, state);\r\n }\r\n }\r\n\r\n var domReady = function (callback) {\r\n document.readyState === \"interactive\" || document.readyState === \"complete\" ? callback() : document.addEventListener(\"DOMContentLoaded\", callback);\r\n };\r\n\r\n domReady(function () {\r\n if (initialized)\r\n return;\r\n initialized = true;\r\n\r\n alwaysActiveCheckbox();\r\n\r\n var policyAcceptedValue = getCookie(policyAcceptedCookieName);\r\n var showFirstTime = policyAcceptedValue == \"\";\r\n var showConfirmationRequired = options.confirmationRequired && policyAcceptedValue !== \"1\";\r\n\r\n if (document.querySelector('.bdf-cookie-policy-popup')) {\r\n\r\n if (showFirstTime) {\r\n if (document.querySelector('.bdf-cookie-policy-first-time')) {\r\n document.querySelector('.bdf-cookie-policy-first-time').style.display = 'block';\r\n }\r\n\r\n setCookie(legitimateCookieName, options.activeDefault, expirationInDays);\r\n setCookie(performanceCookieName, options.activeDefault, expirationInDays);\r\n \r\n setCookie(policyAcceptedCookieName, \"0\", expirationInDays);\r\n setCookie(marketingCookieName, \"1\", expirationInDays);\r\n\r\n } else {\r\n document.querySelector('.bdf-cookie-policy-first-time').style.display = 'none';\r\n var legitimateValue = getCookie(legitimateCookieName);\r\n var performanceValue = getCookie(performanceCookieName);\r\n if (performanceValue == \"\" && legitimateValue != \"\") {\r\n setCookie(performanceCookieName, legitimateValue, expirationInDays);\r\n }\r\n }\r\n\r\n if (document.querySelector('.bdf-cookie-policy-first-time-and-confirmation-required')) {\r\n if (showFirstTime && showConfirmationRequired) {\r\n document.querySelector('.bdf-cookie-policy-first-time-and-confirmation-required').style.display = 'block';\r\n } else {\r\n document.querySelector('.bdf-cookie-policy-first-time-and-confirmation-required').style.display = 'none';\r\n }\r\n }\r\n\r\n if (showConfirmationRequired) {\r\n document.querySelector('.bdf-cookie-policy-confirmation-required').style.display = 'block';\r\n } else {\r\n document.querySelector('.bdf-cookie-policy-confirmation-required').style.display = 'none';\r\n }\r\n }\r\n\r\n setCheckboxesStates();\r\n\r\n let toggleButtons = Array.from(document.querySelectorAll('.bdf-cookie-policy-toggle'));\r\n toggleButtons.forEach(function (element) {\r\n let cookieDisabledName = element.dataset.cookieName;\r\n\r\n element.addEventListener('change', function (event) {\r\n let target = event.currentTarget;\r\n let checked = target.checked;\r\n setCookie(cookieDisabledName, checked ? '0' : '1', expirationInDays);\r\n checkboxChanged(element, checked);\r\n });\r\n });\r\n\r\n if (options.confirmationRequired) {\r\n if (policyAcceptedValue != \"1\") {\r\n options.openPopup();\r\n }\r\n } else {\r\n if (policyAcceptedValue == \"\") {\r\n options.openPopup();\r\n }\r\n }\r\n if (document.querySelector('.bdf-cookie-policy-popup')) {\r\n document.querySelector('.bdf-cookie-policy-accept').addEventListener('click', function (event) {\r\n setCookie(policyAcceptedCookieName, \"1\", expirationInDays);\r\n setCookie(legitimateCookieName, \"0\", expirationInDays);\r\n setCookie(marketingCookieName, \"0\", expirationInDays);\r\n setCookie(performanceCookieName, \"0\", expirationInDays);\r\n setCheckboxesStates();\r\n });\r\n }\r\n\r\n document.querySelectorAll('.bdf-cookie-policy-change').forEach(function (btn) {\r\n btn.addEventListener('click', () => {\r\n setCookie(policyAcceptedCookieName, \"1\", expirationInDays);\r\n });\r\n });\r\n });\r\n};\r\n\r\nexport default BdfCookiePolicyModule;","\r\nimport BdfCookiePolicyModule from '../../js/libs/cookie-banner';\r\nimport CookiePolicyTracking from './CookiePolicyTracking';\r\nconst moduleSelector = '[data-module=\"CookieBanner\"]';\r\n\r\nexport default class CookieBanner extends CookiePolicyTracking {\r\n\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new CookieBanner(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element: HTMLElement) {\r\n super();\r\n var dataCookieName = element.getAttribute('data-cookie-name');\r\n var ajaxUrl = element.getAttribute('data-ajax-url');\r\n var sessionClosedCookies = sessionStorage.getItem('cookieClosedX');\r\n\r\n if (!this.isCookieSet(dataCookieName) && sessionClosedCookies !== 'closedCookies') {\r\n this.loadCookieBanner(ajaxUrl, element);\r\n }\r\n else {\r\n this.initCookies(document.querySelector('[data-module=\"CookieBanner\"]'), false);\r\n }\r\n this.onCookieChange();\r\n }\r\n\r\n private isCookieSet(name: string): boolean {\r\n return this.getCookie(name) === '1';\r\n }\r\n\r\n private getCookie(cname: string): string {\r\n var name = cname + '=',\r\n ca = document.cookie.split(';');\r\n\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1);\r\n }\r\n\r\n if (c.indexOf(name) !== -1) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n\r\n return '';\r\n }\r\n\r\n\r\n private loadCookieBanner(url: string, node: HTMLElement) {\r\n node.classList.add(\"loader\");\r\n var xhr = new XMLHttpRequest();\r\n xhr.onload = () => {\r\n if (xhr.status >= 200 && xhr.status < 300) {\r\n node.classList.remove(\"loader\");\r\n node.innerHTML = xhr.responseText;\r\n this.initCookies(node, true);\r\n } else {\r\n console.log('The request failed!');\r\n }\r\n };\r\n xhr.open('GET', url);\r\n xhr.send();\r\n }\r\n\r\n private initCookies(node: HTMLElement, isAjaxCall) {\r\n var module: HTMLElement;\r\n if (isAjaxCall) {\r\n module = node.querySelector('.bdf-cookie-policy-popup');\r\n if (module == null)\r\n return this;\r\n } else {\r\n module = node;\r\n }\r\n\r\n var confirmationRequired = module.getAttribute('data-confirmation-required'),\r\n activeDefault = module.getAttribute('data-cookie-activated-default');\r\n if (confirmationRequired) {\r\n this.trackCookiePopupShow();\r\n }\r\n\r\n BdfCookiePolicyModule(null, {\r\n openPopup: () => { module.style.display = 'block'; },\r\n confirmationRequired: confirmationRequired,\r\n activeDefault: activeDefault,\r\n onCheckboxChanged: (checkbox, state) => {\r\n var selectorParent = checkbox.parentElement;\r\n if (selectorParent.querySelector('[data-activated-text]') && selectorParent.querySelector('[data-deactivated-text]')) {\r\n if (checkbox.checked == true) {\r\n var item = selectorParent.querySelector('.checkmark-text')\r\n item.innerHTML = item.getAttribute('data-activated-text');\r\n } else {\r\n var item = selectorParent.querySelector('.checkmark-text')\r\n item.innerHTML = item.getAttribute('data-deactivated-text');\r\n\r\n }\r\n }\r\n }\r\n });\r\n if (isAjaxCall) {\r\n document.querySelector('.bdf-cookie-policy-accept').addEventListener('click', (event) => {\r\n module.style.display = 'none';\r\n this.trackCookiePopupAccept();\r\n });\r\n document.querySelector('.bdf-cookie-policy-popup__close').addEventListener('click', (event) => {\r\n sessionStorage.setItem('cookieClosedX', 'closedCookies');\r\n module.style.display = 'none';\r\n });\r\n\r\n this.onCookieChange();\r\n \r\n }\r\n\r\n return this;\r\n }\r\n\r\n onCookieChange(){\r\n document.querySelectorAll('.cp-cookie-settings .checkmark').forEach((element) => {\r\n element.addEventListener('click', (e) => {\r\n this.trackCookiePopupSettings(e);\r\n });\r\n });\r\n }\r\n}\r\n\r\nnew CookieBanner.setup();","\r\n/// \r\n\r\nexport default class CookiePolicyTracking {\r\n constructor() {\r\n this.cookiePopupEventHandler();\r\n }\r\n\r\n private cookiePopupEventHandler() {\r\n }\r\n\r\n protected trackCookiePopupAccept() {\r\n window.dataLayer.push({\r\n event: 'ga_event',\r\n eventCategory: 'Cookie',\r\n eventAction: 'Accept',\r\n eventLabel: this.getCurrentDate(),\r\n eventNonInteraction: false\r\n });\r\n\r\n //GA4 Tracking\r\n window.dataLayer.push({\r\n event: \"ga4_event\",\r\n event_name: \"cookie_banner_accept\", \r\n _clear: true\r\n });\r\n }\r\n\r\n protected trackCookiePopupSettings(e) {\r\n window.dataLayer.push({\r\n event: 'ga_event',\r\n eventCategory: 'Cookie',\r\n eventAction: 'Change',\r\n eventLabel: this.getCurrentDate(),\r\n eventNonInteraction: false\r\n });\r\n\r\n //GA4 Tracking \r\n window.dataLayer.push({\r\n event: \"ga4_event\", \r\n event_name: \"cookie_banner_change\", \r\n _clear: true\r\n });\r\n }\r\n\r\n protected trackCookiePopupShow() {\r\n window.dataLayer.push({\r\n event: 'ga_event',\r\n eventCategory: 'Cookie',\r\n eventAction: 'Show',\r\n eventLabel: this.getCurrentDate(),\r\n eventNonInteraction: true\r\n });\r\n\r\n //GA4 Tracking\r\n window.dataLayer.push({\r\n event: \"ga4_event\",\r\n event_name: \"cookie_banner_view\", \r\n _clear: true\r\n });\r\n }\r\n\r\n private getCurrentDate(): string {\r\n return new Date().toDateString();\r\n }\r\n}"],"sourceRoot":""}