{"version":3,"sources":["epicookiepro.js"],"names":["EPiCookiePro","activeGroups","domainData","cookieProEnabled","ConsentCategories","StrictlyNecessary","Performance","Functional","Targeting","SocialMedia","addInPageScripts","reloadInPageElements","document","querySelectorAll","i","length","parentNode","removeChild","scriptReplace","createElement","type","innerHTML","body","appendChild","IsCookieCategoryAllowed","cookieCategoryId","isCookieProEnabled","cookieProAttribute","querySelector","dataset","IsCookieProEnabled","indexOf","replace","window","OnetrustActiveGroups","GetOptanonCategoryByHost","attributeSrc","optanonCategoryId","hostName","url","hostname","split","getHostname","domainGroups","Groups","optanonGroup","hostItem","Hosts","filter","item","HostName","OptanonGroupId","CheckCustomItems","cookieProElements","tagType","OneTrust","GetDomainData","cookieProElement","tagName","attributeDataSrc","attributeClass","attributes","value","hostToCheck","classList","add","trim","setAttribute","removeAttribute","style","display","blockedMessageElement","getElementsByClassName","reloadSrcElements","reloadSrcElementsCount","currentSrcLoaded","src","addEventListener","DisplayVideoOverlay","containerClass","containerElements","container","iFrameElements","getElementsByTagName","j","iFrame","optanonMatches","match","iFrameAllowed"],"mappings":"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","file":"epicookiepro.min.js","sourcesContent":["var EPiCookiePro = ( function EPiCookiePro() { \r\n\r\n\tvar activeGroups = '';\r\n\tvar domainData = {};\r\n\tvar cookieProEnabled = false;\r\n\r\n\tvar ConsentCategories = {\r\n\t\tStrictlyNecessary: 'C0001',\r\n\t\tPerformance: 'C0002',\r\n\t\tFunctional: 'C0003',\r\n\t\tTargeting: 'C0004',\r\n\t\tSocialMedia: 'C0005'\r\n\t}\r\n\r\n\tfunction CheckCustomItems() {\r\n\r\n\t\tvar cookieProElements = document.querySelectorAll('[cookiepro-check=\"true\"]');\r\n\t\tvar tagType = \"\";\r\n\r\n\t\tactiveGroups = window.OnetrustActiveGroups;\r\n\t\tdomainData = window.OneTrust.GetDomainData();\r\n\r\n\t\tfor (var i = 0; i < cookieProElements.length; i++) {\r\n\r\n\t\t var cookieProElement = cookieProElements[i];\r\n\t\t tagType = cookieProElement.tagName;\r\n\r\n\t\t var attributeSrc = '';\r\n\t\t var attributeDataSrc = '';\r\n\t\t var attributeType = '';\r\n\t\t var attributeClass = '';\r\n\r\n\t\t if(cookieProElement.attributes[\"src\"] != null && typeof cookieProElement.attributes[\"src\"] !== 'undefined') {\r\n\t\t \tattributeSrc = cookieProElement.attributes[\"src\"].value;\r\n\t\t }\r\n\r\n\t\t if(cookieProElement.attributes[\"data-src\"] != null && typeof cookieProElement.attributes[\"data-src\"] !== 'undefined') {\r\n\t\t \tattributeDataSrc = cookieProElement.attributes[\"data-src\"].value;\r\n\t\t }\r\n\r\n\t\t if(cookieProElement.attributes[\"type\"] != null && typeof cookieProElement.attributes[\"type\"] !== 'undefined') {\r\n\t\t \tattributeType = cookieProElement.attributes[\"type\"].value;\r\n\t\t }\r\n\r\n\t\t if(cookieProElement.attributes[\"class\"] != null && typeof cookieProElement.attributes[\"class\"] !== 'undefined') {\r\n\t\t \tattributeClass = cookieProElement.attributes[\"class\"].value;\r\n\t\t }\r\n\r\n\t\t var hostToCheck = attributeSrc;\r\n\r\n\t\t if(attributeSrc === \"\") {\r\n\t\t \thostToCheck = attributeDataSrc;\r\n\t\t }\r\n\r\n\t\t var optanonCategoryId = GetOptanonCategoryByHost(domainData, hostToCheck);\r\n\r\n\t\t //If we can't get an optanonCategoryId from host, what do?\r\n\t\t if(optanonCategoryId === '') {\r\n\t\t \toptanonCategoryId = ConsentCategories.StrictlyNecessary;\r\n\t\t }\r\n\r\n\t\t if(optanonCategoryId !== '' && attributeClass.indexOf('optanon-category-' + optanonCategoryId) === -1) {\r\n\t\t \tattributeClass = 'optanon-category-' + optanonCategoryId;\r\n\t\t \tcookieProElement.classList.add(attributeClass.trim());\r\n\t\t }\r\n\r\n\t\t //Set allowed cookie classes to correct attribute values.\r\n\t\t if(activeGroups.indexOf(optanonCategoryId) > -1) {\r\n\r\n\t\t \tif(tagType === 'IFRAME') {\r\n\r\n\t\t \t\tif(attributeDataSrc !== '') {\r\n\r\n\t\t \t\t\tcookieProElement.setAttribute(\"src\", attributeDataSrc);\r\n\t\t \t\t}\r\n\r\n\t\t \t\tcookieProElement.removeAttribute(\"cookiepro-check\");\r\n\t\t \t\tcookieProElement.style.display = \"block\";\r\n\r\n\t\t\t\t\tvar blockedMessageElement = document.getElementsByClassName(\"blocked-iframe-message\");\r\n\r\n\t\t\t\t\tif(blockedMessageElement.length) {\r\n\r\n\t\t\t\t\t\tblockedMessageElement[i].style.display = \"none\";\r\n\t\t\r\n\t\t\t\t\t}\r\n\r\n\t\t \t}\r\n\r\n\t\t \tif(tagType === 'SCRIPT') {\r\n\r\n\t\t \t\tcookieProElement.attributes[\"type\"].value = \"text/javascript\";\r\n\t\t\t\t\tcookieProElement.removeAttribute(\"cookiepro-check\");\r\n\t\t\t\t\tcookieProElement.setAttribute(\"reload-script\", \"true\");\r\n\r\n\t\t \t}\r\n\r\n\t\t }\r\n\r\n\t\t}\r\n\r\n\t\tvar reloadSrcElements = document.querySelectorAll('[reload-script=\"true\"][src]');\r\n\t\tvar reloadSrcElementsCount = 0;\r\n\t\tvar currentSrcLoaded = 0;\r\n\r\n\t\tif (reloadSrcElements !== null && reloadSrcElements !== typeof 'undefined') {\r\n\r\n\t\t\treloadSrcElementsCount = reloadSrcElements.length;\r\n\r\n\t\t\tfor (var i = 0; i < reloadSrcElements.length; i++) {\r\n\r\n\t\t\t\treloadSrcElements[i].parentNode.removeChild(reloadSrcElements[i]);\r\n\r\n\t\t\t\tif (reloadSrcElements[i].attributes[\"src\"] != null && typeof reloadSrcElements[i].attributes[\"src\"] !== 'undefined') {\r\n\r\n\t\t\t\t\tvar scriptReplace = document.createElement('script');\r\n\t\t\t\t\tscriptReplace.type = 'text/javascript';\r\n\t\t\t\t\tscriptReplace.src = reloadSrcElements[i].attributes[\"src\"].value;\r\n\r\n\t\t\t\t\tscriptReplace.addEventListener('load', function () {\r\n\r\n\t\t\t\t\t\tcurrentSrcLoaded++;\r\n\r\n\t\t\t\t\t\tif (currentSrcLoaded === reloadSrcElementsCount) {\r\n\r\n\t\t\t\t\t\t\taddInPageScripts();\r\n\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tdocument.body.appendChild(scriptReplace);\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tfunction addInPageScripts() {\r\n\r\n\t\tvar reloadInPageElements = document.querySelectorAll('[reload-script=\"true\"]:not([src])');\r\n\r\n\t\tif (reloadInPageElements !== null && reloadInPageElements !== typeof 'undefined') {\r\n\r\n\t\t\tfor (var i = 0; i < reloadInPageElements.length; i++) {\r\n\r\n\t\t\t\treloadInPageElements[i].parentNode.removeChild(reloadInPageElements[i]);\r\n\r\n\t\t\t\tvar scriptReplace = document.createElement('script');\r\n\t\t\t\tscriptReplace.type = 'text/javascript';\r\n\t\t\t\tscriptReplace.innerHTML = reloadInPageElements[i].innerHTML;\r\n\r\n\t\t\t\tdocument.body.appendChild(scriptReplace);\r\n\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tfunction DisplayVideoOverlay(containerClass) {\r\n\r\n\t\tvar containerElements = document.getElementsByClassName(containerClass);\r\n\r\n\t\tfor (var i = 0; i < containerElements.length; i++) {\r\n\r\n\t\t\tvar container = containerElements[i];\r\n\r\n\t\t\tif(container !== null && typeof container !== 'undefined') {\r\n\r\n\t\t\t\tvar iFrameElements = container.getElementsByTagName(\"iframe\");\r\n\r\n\t\t\t\tif(iFrameElements !== null && typeof iFrameElements !== 'undefined' && iFrameElements.length) {\r\n\r\n\t\t\t\t\tfor (var j = 0; j < iFrameElements.length; j++) { \r\n\r\n\t\t\t\t\t\tvar iFrame = iFrameElements[j];\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (iFrame.attributes[\"class\"] != null && typeof iFrame.attributes[\"class\"] !== 'undefined' && iFrame.attributes[\"class\"].value.indexOf(\"optanon-category-\") > -1) {\r\n\r\n\t\t\t\t\t\t\tvar iFrameClass = iFrame.attributes[\"class\"].value;\r\n\t\t\t\t\t\t\tvar regex = /optanon-category-\\w+/gm;\r\n\t\t\t\t\t\t\tvar optanonMatches = iFrameClass.match(regex)\r\n\r\n\t\t\t\t\t\t\tif (optanonMatches != null && optanonMatches.length > 0) {\r\n\r\n\t\t\t\t\t\t\t\tvar optanonClass = optanonMatches[0];\r\n\t\t\t\t\t\t\t\tvar iFrameAllowed = IsCookieCategoryAllowed(optanonClass);\r\n\t\t\t\t\t\t\t\tvar blockedMessageElement = container.getElementsByClassName(\"blocked-iframe-message\");\r\n\r\n\t\t\t\t\t\t\t\tif (!iFrameAllowed) {\r\n\r\n\t\t\t\t\t\t\t\t\tiFrame.style.display = 'none';\r\n\r\n\t\t\t\t\t\t\t\t\tif (blockedMessageElement.length) {\r\n\r\n\t\t\t\t\t\t\t\t\t\tblockedMessageElement[0].style.display = \"block\";\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\telse {\r\n\r\n\t\t\t\t\t\t\t\t\tiFrame.style.display = 'block';\r\n\r\n\t\t\t\t\t\t\t\t\tif (blockedMessageElement.length) {\r\n\t\t\t\t\t\t\t\t\t\tblockedMessageElement[0].style.display = \"none\";\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\t\t\t\t\t\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t}\t\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\r\n\tfunction IsCookieCategoryAllowed(cookieCategoryId) {\r\n\r\n\t\tvar isCookieProEnabled = IsCookieProEnabled();\r\n\r\n\t\tif(isCookieProEnabled === 'false' || isCookieProEnabled === false) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\tif(cookieCategoryId.indexOf('optanon-category-') > -1) {\r\n\r\n\t\t\tcookieCategoryId = cookieCategoryId.replace(\"optanon-category-\", \"\");\r\n\r\n\t\t}\r\n\r\n\t\tif(window.OnetrustActiveGroups !== null && typeof window.OnetrustActiveGroups !== 'undefined') {\r\n\r\n\t\t\tif(window.OnetrustActiveGroups.indexOf(cookieCategoryId) > -1) {\r\n\r\n\t\t\t\treturn true;\r\n\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\treturn false;\r\n\r\n\t}\r\n\r\n\tfunction IsCookieProEnabled() {\r\n\r\n\t\tvar cookieProAttribute = document.querySelector('[data-cookiepro-enabled]');\r\n\r\n\t\tif(cookieProAttribute !== null && typeof cookieProAttribute !== 'undefined') {\r\n\t\t\tcookieProEnabled = cookieProAttribute.dataset.cookieProEnabled;\r\n\t\t}\r\n\r\n\t\treturn cookieProEnabled;\r\n\r\n\t}\r\n\r\n\tfunction GetOptanonCategoryByHost(domainData, attributeSrc) {\r\n\r\n\t\tvar optanonCategoryId = '';\r\n\t\tvar hostName = getHostname(attributeSrc);\r\n\r\n\t\tif(domainData !== null && typeof domainData !== 'undefined' && attributeSrc !== '') {\r\n\r\n\t\t\tvar domainGroups = domainData.Groups;\r\n\r\n\t\t\tif(domainGroups !== null && typeof domainGroups !== 'undefined') {\r\n\r\n\t\t\t\tfor (var i = 0; i < domainGroups.length; i++) {\r\n\r\n\t\t\t\t\tvar optanonGroup = domainGroups[i];\r\n\r\n\t\t\t if( optanonGroup !== null && typeof optanonGroup !== 'undefined' )\r\n\t\t\t {\r\n\t\t\t var hostItem = optanonGroup.Hosts.filter( function( item ) {\r\n\t\t\t return hostName.indexOf(item.HostName > -1);\r\n\t\t\t } )[ 0 ];\r\n\r\n\t\t\t if(hostItem !== null && typeof hostItem !== 'undefined') {\r\n\t\t\t \toptanonCategoryId = optanonGroup.OptanonGroupId;\r\n\t\t\t }\r\n\t\t\t }\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\treturn optanonCategoryId;\r\n\r\n\t}\r\n\r\n\tfunction getHostname(url) {\r\n\r\n\t var hostname = '';\r\n\t \r\n\t if (url.indexOf(\"//\") > -1) {\r\n\t hostname = url.split('/')[2];\r\n\t }\r\n\t else {\r\n\t hostname = url.split('/')[0];\r\n\t }\r\n\r\n\t hostname = hostname.split(':')[0];\r\n\t hostname = hostname.split('?')[0];\r\n\r\n\t return hostname;\r\n\t}\r\n\r\n return {\r\n CheckCustomItems: CheckCustomItems,\r\n DisplayVideoOverlay: DisplayVideoOverlay,\r\n IsCookieCategoryAllowed: IsCookieCategoryAllowed,\r\n ConsentCategories: ConsentCategories\r\n };\r\n\r\n}() );\r\n\r\n\r\n//# sourceMappingURL=epicookiepro.js.map\r\n"]}