if (dr_generated_banner) { throw new Error("Cookie banner integration was included more than once!"); } (function(cc) { // stop from running again, if accidently included more than once. if (cc.hasInitialised) return; var util = { // https://stackoverflow.com/questions/3446170/escape-string-for-use-in-javascript-regex escapeRegExp: function(str) { return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); }, hasClass: function(element, selector) { var s = ' '; return ( element.nodeType === 1 && (s + element.className + s) .replace(/[\n\t]/g, s) .indexOf(s + selector + s) >= 0 ); }, addClass: function(element, className) { element.className += ' ' + className; }, removeClass: function(element, className) { var regex = new RegExp('\\b' + this.escapeRegExp(className) + '\\b'); element.className = element.className.replace(regex, ''); }, interpolateString: function(str, callback) { var marker = /{{([a-z][a-z0-9\-_]*)}}/gi; return str.replace(marker, function(matches) { return callback(arguments[1]) || ''; }); }, getCookie: function(name) { if (dr_cookiebanner_options) { if (dr_cookiebanner_options.cookieLocalStorage === true) { return localStorage.getItem(name); } } var value = '; ' + document.cookie; var parts = value.split('; ' + name + '='); var result = parts.length < 2 ? undefined : parts .pop() .split(';') .shift(); if (dr_cookiebanner_options) { dr_cookiebanner_options.log("GetCookie " + name + "=" + result); } return result; }, setCookie: function(name, value, expiryDays, domain, path, secure) { if (dr_cookiebanner_options) { if (dr_cookiebanner_options.cookieLocalStorage === true) { if (value == null || value === "") { localStorage.removeItem(name); } else { localStorage.setItem(name, value); } return; } } var exdate = new Date(); exdate.setDate(exdate.getDate() + (expiryDays || 365)); var cookie = [ name + '=' + value, 'expires=' + exdate.toUTCString(), 'path=' + (path || '/') ]; if (domain) { cookie.push('domain=' + domain); } /* if (secure) { cookie.push('secure'); }*/ if (location.protocol === 'https:') { cookie.push('secure'); cookie.push('SameSite=none'); } document.cookie = cookie.join(';'); if (dr_cookiebanner_options) { dr_cookiebanner_options.logJson("SetCookie", cookie); } }, // only used for extending the initial options deepExtend: function(target, source) { for (var prop in source) { if (source.hasOwnProperty(prop)) { if ( prop in target && this.isPlainObject(target[prop]) && this.isPlainObject(source[prop]) ) { this.deepExtend(target[prop], source[prop]); } else { target[prop] = source[prop]; } } } return target; }, // only used for throttling the 'mousemove' event (used for animating the revoke button when `animateRevokable` is true) throttle: function(callback, limit) { var wait = false; return function() { if (!wait) { callback.apply(this, arguments); wait = true; setTimeout(function() { wait = false; }, limit); } }; }, // only used for hashing json objects (used for hash mapping palette objects, used when custom colours are passed through JavaScript) hash: function(str) { var hash = 0, i, chr, len; if (str.length === 0) return hash; for (i = 0, len = str.length; i < len; ++i) { chr = str.charCodeAt(i); hash = (hash << 5) - hash + chr; hash |= 0; } return hash; }, normaliseHex: function(hex) { if (hex[0] == '#') { hex = hex.substr(1); } if (hex.length == 3) { hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]; } return hex; }, // used to get text colors if not set getContrast: function(hex) { hex = this.normaliseHex(hex); var r = parseInt(hex.substr(0, 2), 16); var g = parseInt(hex.substr(2, 2), 16); var b = parseInt(hex.substr(4, 2), 16); var yiq = (r * 299 + g * 587 + b * 114) / 1000; return yiq >= 128 ? '#000' : '#fff'; }, // used to change color on highlight getLuminance: function(hex) { var num = parseInt(this.normaliseHex(hex), 16), amt = 38, R = (num >> 16) + amt, B = ((num >> 8) & 0x00ff) + amt, G = (num & 0x0000ff) + amt; var newColour = ( 0x1000000 + (R < 255 ? (R < 1 ? 0 : R) : 255) * 0x10000 + (B < 255 ? (B < 1 ? 0 : B) : 255) * 0x100 + (G < 255 ? (G < 1 ? 0 : G) : 255) ) .toString(16) .slice(1); return '#' + newColour; }, isMobile: function() { return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test( navigator.userAgent ); }, isPlainObject: function(obj) { // The code "typeof obj === 'object' && obj !== null" allows Array objects return ( typeof obj === 'object' && obj !== null && obj.constructor == Object ); }, traverseDOMPath: function(elem, className) { if (!elem || !elem.parentNode) return null; if (util.hasClass(elem, className)) return elem; return this.traverseDOMPath(elem.parentNode, className); } }; // valid cookie values cc.status = { deny: 'deny', allow: 'allow', dismiss: 'dismiss' }; // detects the `transitionend` event name cc.transitionEnd = (function() { var el = document.createElement('div'); var trans = { t: 'transitionend', OT: 'oTransitionEnd', msT: 'MSTransitionEnd', MozT: 'transitionend', WebkitT: 'webkitTransitionEnd' }; for (var prefix in trans) { if ( trans.hasOwnProperty(prefix) && typeof el.style[prefix + 'ransition'] != 'undefined' ) { return trans[prefix]; } } return ''; })(); cc.hasTransition = !!cc.transitionEnd; // array of valid regexp escaped statuses var __allowedStatuses = Object.keys(cc.status).map(util.escapeRegExp); // contains references to the custom

Unsere Webseite nutzt Cookies

Weitere Informationen zu Cookies erhältst du in diesem Cookiebanner und in unserer Datenschutzerklärung (siehe unten). Klicke auf \"Alle Cookies erlauben\", um alle Arten von Cookies zu akzeptieren oder klicke auf \"Nur erforderliche Cookies erlauben\", um nur jene Cookies zu zulassen, die für den Betrieb und Funktion der Webseite unbedingt erforderlich sind.

Details anzeigen Einstellungen übernehmen Alle Cookies erlauben
", "en" : "", "fr" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_fr.html", "bg" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_bg.html", "da" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_da.html", "et" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_et.html", "fi" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_fi.html", "el" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_el.html", "it" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_it.html", "hr" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_hr.html", "lv" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_lv.html", "lt" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_lt.html", "nl" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_nl.html", "pl" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_pl.html", "pt" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_pt.html", "ro" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_ro.html", "sv" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_sv.html", "sk" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_sk.html", "sl" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_sl.html", "es" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_es.html", "cs" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_cs.html", "hu" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_hu.html", "uk" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_uk.html", "zh" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_zh.html", "sq" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_sq.html", "ru" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_ru.html", "sr" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_sr.html", "bs" : "https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/bannerlang_bs.html", }; var dr_generated_policies = { "de" : "Einstellungen zu Cookies...", "en" : "Settings for cookies ...", "fr" : "Paramètres de confidentialité...", "bg" : "Настройки за поверителност...", "da" : "Privatlivsindstillinger ...", "et" : "Privaatsusseaded ...", "fi" : "Tietosuoja-asetukset...", "el" : "Ρυθμίσεις προστασίας δεδομένων...", "it" : "Impostazioni sulla privacy...", "hr" : "Postavke zaštite podataka...", "lv" : "Datu aizsardzības iestatījumi...", "lt" : "Privatumo nustatymai...", "nl" : "Instellingen gegevensbescherming...", "pl" : "Ustawienia prywatności...", "pt" : "Configurações de privacidade...", "ro" : "Setări de protecție a datelor...", "sv" : "Integritetsinställningar ...", "sk" : "Nastavenia ochrany údajov...", "sl" : "Nastavitve varstva podatkov ...", "es" : "Ajustes de protección de datos...", "cs" : "Nastavení ochrany údajů...", "hu" : "Adatvédelmi beállítások...", "uk" : "Налаштування файлів cookie…", "zh" : "Cookies设置", "sq" : "Cilësimet për cookies…", "ru" : "Настройки для файлов cookie …", "sr" : "Podešavanja kolačića...", "bs" : "Podešavanja kolačića...", }; var dr_generated_tags = [ { "divId" : null, "mode" : null, "category" : "marketing", "activationMode" : "", "active" : false, "code" : "<script type=\"text/javascript\">\r\n (function(c,l,a,r,i,t,y){\r\n c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};\r\n t=l.createElement(r);t.async=1;t.src=\"https://www.clarity.ms/tag/\"+i;\r\n y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);\r\n })(window, document, \"clarity\", \"script\", \"o0f0giw71h\");\r\n</script>\n", "buttonTextDe" : null, "buttonTextEn" : null, "privacyTextDe" : null, "privacyTextEn" : null, "placeholderDesign" : null, "ignoreCookies" : [ ] } ]; var dr_ignore_cookies = ['cookieconsent_status', 'cookieconsent_mode', '_webcare_consentid','__cfruid','_derived_epik','_GRECAPTCHA','_webcare_consentid','amga4_customer','AWSALBCORS','BrevoConversations.hostedItems','cookieconsent_mode','cookieconsent_status','form_key','jctr_sid','kifcc_(ID)','ls_*','mage-banners-cache-storage','mage-cache-sessid','mage-cache-storage','mage-cache-storage-section-invalidation','mage-messages','PHPSESSID','private_content_version','product_data_storage','recently_compared_product','recently_compared_product_previous','recently_viewed_product','recently_viewed_product_previous','section_data_ids','store','STUID','STVID']; var dr_delete_cookies = [{name:'_ga', path:'/', category:'statistic' },{name:'kk_leadtag', path:'/', category:'statistic' },{name:'_clck', path:'/', category:'marketing' },{name:'_fbc', path:'/', category:'marketing' },{name:'_fbp', path:'/', category:'marketing' },{name:'_gcl_ag', path:'/', category:'marketing' },{name:'_gcl_au', path:'/', category:'marketing' },{name:'_gcl_aw', path:'/', category:'marketing' },{name:'_gcl_gs', path:'/', category:'marketing' },{name:'jts-fbc', path:'/', category:'marketing' },{name:'jts-fbp', path:'/', category:'marketing' },{name:'jts-rw', path:'/', category:'marketing' },{name:'newsletterClosed', path:'/', category:'marketing' },{name:'NID', path:'/', category:'marketing' },{name:'test_cookie', path:'/', category:'marketing' }]; var dr_deleteCookieMode = "categories"; // all (all cookies except ignore), manual (none), auto (only marketing/statistic) or categories (manual category choose) var dr_bannerLanguage = dr_getBannerLanguage(); var cookieMobileImage = " "; var dr_cookiebanner_options = { version: "2024_02.b531", type: 'opt-out', position: 'bottom', policyPosition: "bottom", applicationPath : 'https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/Zma/', companyPath : 'https://webcache-eu.datareporter.eu/c/d5f76002-edce-4dda-adf0-b00bd47076ab/lKEiyaLp35NV/', imprintDivName : "dr-imprint-div", imprintScript: "imprint_gtm.js", privacyDivName : "dr-privacynotice-div", privacyScript : "privacynotice_gtm.js", privacyLinkUrl : null, openPrivacyLinkInDocViewer: false, openImprintLinkInDocViewer: false, debugLogActive: false, googleDataLayerName: "dataLayer", useRevokeCookieIcon: "false", dr_removeJsCookies : null, cookieDomain: "", cookieConsentModeName: "cookieconsent_mode", cookieConsentName: "cookieconsent_status", cookieLocalStorage: false, insertTopLogo: "", previewMode: false, overrideHTML: dr_generated_banner[dr_bannerLanguage], animateRevokable: true, animateBanner: false, preBannerOptions: null, revokeOnMobile: true, dr_purgeRunning :false, // is the cookie purge daemon running? dr_cookiesEnabled: false, // are cookies currently enabled? dr_button_policy_hide : 'false', // hide the policy button if configured dr_autoAcceptCookies: '', // 'allow' to not show cookie banner and accept all cookies, 'deny' to not show and deny all cookies dr_acceptedCategories : [], // strings with accepted categories (statistic, marketing, unclassified) onRedirectAfterConsent : null, // eventhandler - called when a redirect from countryselect banner occures instead of redirecting swarmCrawlerVersion: 2, content: { policy: dr_generated_policies[dr_bannerLanguage], mobilePolicy: cookieMobileImage, }, cookieBlockTiming : { delay: 200, incrementDelay: 200, incrementFactor: 2.0, maxDelay: 15000, }, swarmCrawlerTiming: { min: 1000, rnd: 10000, }, gtmInitTiming: { delay: 1000, maxRetry: 10, }, log: function(msg) { if (dr_cookiebanner_options.debugLogActive) { console.debug(new Date().toLocaleTimeString() + " " + msg); } }, logJson: function(msg, jsonObject) { if (dr_cookiebanner_options.debugLogActive) { console.debug(new Date().toLocaleTimeString() + " " + msg + " -------- Start --------"); console.debug(jsonObject); console.debug(new Date().toLocaleTimeString() + " " + msg + " -------- End --------"); } }, configureDebugLogOutput: function() { var debugParam = dr_getParameterByName("_webcare_debug") if (debugParam === "true") { dr_cookiebanner_options.debugLogActive = true; } }, gtmInit : function() { dr_cookiebanner_options.log("gtmInit()"); var foundInsertion = false; var o = dr_cookiebanner_options; var elem = document.getElementById(o.imprintDivName); if (elem) { o.loadJsModule(o.companyPath + o.imprintScript, o.activateImprint, document.body); foundInsertion = true; } var elem = document.getElementById(o.privacyDivName); if (elem) { o.loadJsModule(o.companyPath + o.privacyScript, o.activatePrivacy, document.body); foundInsertion = true; } if (!foundInsertion) { // retry the insertion up to 15 seconds o.gtmInitTiming.maxRetry -= 1; if (o.gtmInitTiming.maxRetry >= 0) { setTimeout(o.gtmInit, o.gtmInitTiming.delay); } } }, activateImprint : function() { dr_cookiebanner_options.log("activateImprint()"); if (dr_webcare_imprint) { dr_webcare_imprint.integrateWithElementId(dr_cookiebanner_options.imprintDivName); } }, activatePrivacy : function() { dr_cookiebanner_options.log("activatePrivacy()"); if (dr_webcare_privacynotice) { dr_webcare_privacynotice.integrateWithElementId(dr_cookiebanner_options.privacyDivName); } }, loadJsModule : function(url, implementationCode, location){ dr_cookiebanner_options.log("loadJsModule()"); var scriptTag = document.createElement('script'); scriptTag.src = url; scriptTag.onload = implementationCode; scriptTag.onreadystatechange = implementationCode; location.appendChild(scriptTag); }, onPopupOpen : function() { dr_cookiebanner_options.log("onPopupOpen()"); dr_cookiebanner_options.log("Cookie Block Mode:", dr_deleteCookieMode); dr_cookiebanner_options.logJson("Ignore Cookies:", dr_ignore_cookies); dr_cookiebanner_options.logJson("Delete Cookies:", dr_delete_cookies); if (webcareCmp) { webcareCmp.opengui(); } if (window.drExternalCmp) { window.drExternalCmp.opengui(); } if (dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen && dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen.length > 0) { dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-statistic", dr_cookiebanner_options.dr_hasPreSelectedConsent("statistic")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-statistic", dr_cookiebanner_options.dr_hasPreSelectedConsent("statistic")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-marketing", dr_cookiebanner_options.dr_hasPreSelectedConsent("marketing")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-marketing", dr_cookiebanner_options.dr_hasPreSelectedConsent("marketing")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-unclassified", dr_cookiebanner_options.dr_hasPreSelectedConsent("unclassified")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-unclassified", dr_cookiebanner_options.dr_hasPreSelectedConsent("unclassified")); dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen = null; } else { dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-statistic", dr_cookiebanner_options.dr_hasConsent("statistic")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-statistic", dr_cookiebanner_options.dr_hasConsent("statistic")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-marketing", dr_cookiebanner_options.dr_hasConsent("marketing")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-marketing", dr_cookiebanner_options.dr_hasConsent("marketing")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-headline-unclassified", dr_cookiebanner_options.dr_hasConsent("unclassified")); dr_cookiebanner_options.dr_checkCheckbox("dr-cb-details-unclassified", dr_cookiebanner_options.dr_hasConsent("unclassified")); } dr_cookiebanner_options.dr_acceptedCategories = []; dr_cookiebanner_options.dr_enableCookies(false); if (false) { let e = document.getElementById("dr_blocking_div"); if (e) { e.style.display = "block"; } else { let elem = document.createElement('div'); elem.id = "dr_blocking_div"; elem.className = "cc-overlay cookie-popup-overlay message-overlay"; elem.style.cssText = 'background-color: rgba(0, 0, 0, 0.5); z-index:90089 !important; width:200%; height:200%; position:fixed; left:0; top:0;'; document.body.appendChild(elem); } } if (webcareCmp) { let e = document.getElementById("dr_webcareCmpLink"); if (e) { let consentId = webcareCmp.getConsentId(); let consentDetailUrl = webcareCmp.getConsentDetailLink(); if (consentId && consentDetailUrl) { e.innerHTML = "Consent ID: " + consentId + ""; e.style.display = "block"; } else { e.innerHTML = ""; e.style.display = "none"; } } } if (window.dr_keyNav) { window.dr_keyNav.activateNav(); } }, onPopupClose : function() { dr_cookiebanner_options.log("onPopupClose()"); if (false) { let e = document.getElementById("dr_blocking_div"); if (e) { e.style.display = "none"; } } if (window.dr_keyNav) { window.dr_keyNav.deactivateNav(); } }, onInitialise: function (status) { dr_cookiebanner_options.log("onInitialise()"); // only called if the banner is loaded with an active consent (allow or deny) dr_cookiebanner_options.dr_acceptedCategories = []; var allowed = window.cookieconsent.utils.getCookie(dr_cookiebanner_options.cookieConsentModeName); if (allowed) { var allowed_array = JSON.parse(allowed); if (allowed_array) { dr_cookiebanner_options.dr_acceptedCategories = allowed_array; } } var didConsent = this.hasConsented(); if (didConsent) { dr_cookiebanner_options.log("Enable Cookies"); // enable cookies dr_cookiebanner_options.dr_enableCookies(true); if (dr_cookiebanner_options.previewMode === true) { dr_cookiebanner_options.log("Disable Swarm Crawler in Preview Mode"); } else { if (dr_swarmCrawler) { var timing = dr_cookiebanner_options.swarmCrawlerTiming.min + (Math.random() * dr_cookiebanner_options.swarmCrawlerTiming.rnd); dr_cookiebanner_options.log("Starting SwarmCrawler after " + timing + "ms"); setTimeout(dr_swarmCrawler.activate, timing); } } } else { dr_cookiebanner_options.log("Disable Cookies"); // disable cookies dr_cookiebanner_options.dr_enableCookies(false); } }, onStatusChange: function(status, chosenBefore) { dr_cookiebanner_options.log("onStatusChange()"); var didConsent = this.hasConsented(); if (didConsent) { // in category mode set the cookie with details dr_cookiebanner_options.dr_acceptedCategories = ["statistic", "marketing", "unclassified"]; // enable cookies dr_cookiebanner_options.dr_enableCookies(true); if (webcareCmp) { webcareCmp.allow(); } } else { dr_cookiebanner_options.dr_acceptedCategories = []; var consentString = "tp"; var cb = document.getElementById("dr-cb-headline-statistic"); if (cb && cb.checked) { dr_cookiebanner_options.dr_acceptedCategories.push("statistic"); consentString += "s"; } cb = document.getElementById("dr-cb-headline-marketing"); if (cb && cb.checked) { dr_cookiebanner_options.dr_acceptedCategories.push("marketing"); consentString += "m"; } cb = document.getElementById("dr-cb-headline-unclassified"); if (cb && cb.checked) { dr_cookiebanner_options.dr_acceptedCategories.push("unclassified"); consentString += "u"; } // disable cookies dr_cookiebanner_options.dr_enableCookies(false); if (webcareCmp) { if (consentString === "tp") { webcareCmp.deny(); } else { webcareCmp.apply(consentString); } } } var c = this.options.cookie; if (c) { window.cookieconsent.utils.setCookie( dr_cookiebanner_options.cookieConsentModeName, JSON.stringify(dr_cookiebanner_options.dr_acceptedCategories), c.expiryDays, c.domain, c.path, c.secure ); } }, onRevokeChoice: function() { dr_cookiebanner_options.log("onRevokeChoice()"); if (webcareCmp) { webcareCmp.revoke(); } if (window.drExternalCmp) { window.drExternalCmp.revoke(); } // disable cookies to be sure dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen = dr_cookiebanner_options.dr_acceptedCategories; dr_cookiebanner_options.dr_acceptedCategories = []; dr_cookiebanner_options.dr_enableCookiesInternal(false, false); var c = this.options.cookie; if (c) { window.cookieconsent.utils.setCookie(dr_cookiebanner_options.cookieConsentModeName, '', -1, c.domain, c.path); } }, dr_checkCheckbox : function(cbName, checked) { dr_cookiebanner_options.log("dr_checkCheckbox(" + cbName + ", " + checked + ")"); var cb = document.getElementById(cbName); if (cb) { cb.checked = checked; } }, dr_hasConsent : function(category) { dr_cookiebanner_options.log("dr_hasConsent()"); if (dr_cookiebanner_options.dr_acceptedCategories) { return dr_cookiebanner_options.dr_includes(dr_cookiebanner_options.dr_acceptedCategories, category); } return false; }, dr_hasPreSelectedConsent : function(category) { dr_cookiebanner_options.log("dr_hasConsent()"); if (dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen) { return dr_cookiebanner_options.dr_includes(dr_cookiebanner_options.dr_preSelectCategoriesOnPopupOpen, category); } return false; }, dr_includes : function(container, value) { dr_cookiebanner_options.log("dr_includes()"); // needed for IE11 var returnValue = false; var pos = container.indexOf(value); if (pos >= 0) { returnValue = true; } return returnValue; }, dr_enableCookies : function(enableCookies) { dr_cookiebanner_options.log("dr_enableCookies(" + enableCookies + ")"); dr_cookiebanner_options.dr_enableCookiesInternal(enableCookies, true); }, dr_enableCookiesInternal : function(enableCookies, enableTagManagerEvent) { dr_cookiebanner_options.log("dr_enableCookiesInternal(" + enableCookies + ", " + enableTagManagerEvent + ")"); if (enableCookies) { // enable all dr_cookiebanner_options.dr_acceptedCategories = ["statistic", "marketing", "unclassified"]; } if (window.drExternalCmp) { window.drExternalCmp.consentChange(true); } // data layer action for google tag manager if (enableTagManagerEvent) { var dlName = dr_cookiebanner_options.googleDataLayerName; window[dlName] = window[dlName] || []; if (dr_cookiebanner_options.dr_hasConsent("statistic")) { window[dlName].push({'event': 'cookie_consent_statistic_enabled'}); dr_cookiebanner_options.log("PUSH TAG Manager Event: cookie_consent_statistic_enabled"); } else { window[dlName].push({'event': 'cookie_consent_statistic_disabled'}); dr_cookiebanner_options.log("PUSH TAG Manager Event: cookie_consent_statistic_disabled"); //console.log("stat -"); } if (dr_cookiebanner_options.dr_hasConsent("marketing")) { window[dlName].push({'event': 'cookie_consent_marketing_enabled'}); dr_cookiebanner_options.log("PUSH TAG Manager Event: cookie_consent_marketing_enabled"); //console.log("markt +"); } else { window[dlName].push({'event': 'cookie_consent_marketing_disabled'}); dr_cookiebanner_options.log("PUSH TAG Manager Event: cookie_consent_marketing_disabled"); //console.log("markt -"); } } // activate tags if needed dr_cookiebanner_options.dr_activateTags(dr_cookiebanner_options.dr_hasConsent("statistic"), dr_cookiebanner_options.dr_hasConsent("marketing"), false); if (window.drExternalCmp) { window.drExternalCmp.consentChange(false); } // configure cookie blocking policies dr_cookiebanner_options.dr_cookiesEnabled = enableCookies; if (!enableCookies) { if (dr_deleteCookieMode !== "manual" && dr_cookiebanner_options.dr_purgeRunning === false) { dr_cookiebanner_options.dr_purgeRunning = true; setTimeout(dr_cookiebanner_options.dr_removeCookiesAfterLoading, dr_cookiebanner_options.cookieBlockTiming.delay); } } if (dr_cookiebanner_options.dr_onEnableCookies) { dr_cookiebanner_options.dr_onEnableCookies(enableCookies) } }, dr_removeCookiesAfterLoading : function() { dr_cookiebanner_options.log("dr_removeCookiesAfterLoading()"); if (dr_cookiebanner_options.dr_cookiesEnabled) { dr_cookiebanner_options.dr_purgeRunning = false; } else { dr_cookiebanner_options.dr_purgeCookies(); dr_cookiebanner_options.cookieBlockTiming.delay += (dr_cookiebanner_options.cookieBlockTiming.incrementDelay); if (dr_cookiebanner_options.cookieBlockTiming.delay > dr_cookiebanner_options.cookieBlockTiming.maxDelay) { dr_cookiebanner_options.cookieBlockTiming.delay = dr_cookiebanner_options.cookieBlockTiming.maxDelay; } else { dr_cookiebanner_options.cookieBlockTiming.incrementDelay = dr_cookiebanner_options.cookieBlockTiming.incrementDelay * dr_cookiebanner_options.cookieBlockTiming.incrementFactor; } dr_cookiebanner_options.log("Cookie Block timing: next call in " + dr_cookiebanner_options.cookieBlockTiming.delay + "ms"); //setTimeout(dr_cookiebanner_options.dr_removeCookiesAfterLoading, 15 * 1000); // redelete every 15 seconds setTimeout(dr_cookiebanner_options.dr_removeCookiesAfterLoading, dr_cookiebanner_options.cookieBlockTiming.delay); } }, dr_startsWith : function(str, searchString) { return str.indexOf(searchString, 0) === 0; }, dr_purgeCookies : function() { dr_cookiebanner_options.log("dr_purgeCookies()"); if (dr_deleteCookieMode === "manual") { return; } var hostDomains = dr_cookiebanner_options.dr_getHostDomains(window.location.hostname); if (dr_deleteCookieMode === "all") { // delete all but the ignored cookies var theCookies = document.cookie.split(';'); for (var i = 1; i <= theCookies.length; i++) { var cname = dr_cookiebanner_options.dr_getCookieNameFromBrowserCookieString(theCookies[i-1]); if (cname && cname != null) { var foundIgnore = false; for (var j = 0; j < dr_ignore_cookies.length; j++) { if (dr_ignore_cookies[j] === cname) { foundIgnore = true; break; } if (dr_cookiebanner_options.dr_startsWith(cname, dr_ignore_cookies[j])) { foundIgnore = true; break; } } if (!foundIgnore) { dr_cookiebanner_options.dr_removeCookie(cname, "/", hostDomains); } } } for (var j = 0; j < dr_delete_cookies.length; j++) { dr_cookiebanner_options.dr_removeCookie(dr_delete_cookies[j].name, dr_delete_cookies[j].path, hostDomains); } } if (dr_deleteCookieMode == "auto") { for (var j = 0; j < dr_delete_cookies.length; j++) { dr_cookiebanner_options.dr_removeCookie(dr_delete_cookies[j].name, dr_delete_cookies[j].path, hostDomains); } } if (dr_deleteCookieMode == "categories") { for (var j = 0; j < dr_delete_cookies.length; j++) { var remove = true; var c = dr_delete_cookies[j]; if (c) { if (c.category) { if (c.category == "statistic" && dr_cookiebanner_options.dr_hasConsent("statistic")) { remove = false; } if (c.category == "marketing" && dr_cookiebanner_options.dr_hasConsent("marketing")) { remove = false; } if (c.category == "unclassified" && dr_cookiebanner_options.dr_hasConsent("unclassified")) { remove = false; } } if (remove) { //console.log("Removing Cookie " + c.name + " (cat: " + c.category + ")"); dr_cookiebanner_options.dr_removeCookie(c.name, c.path, hostDomains); } else { //console.log("Allowing Cookie " + c.name + " (cat: " + c.category + ")"); } } } } }, dr_existsCookie : function (cname) { var name = cname + "="; var ca = document.cookie.split(';'); for(var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return true; //c.substring(name.length, c.length); } } return false; }, dr_getCookieNameFromBrowserCookieString : function(browserCookie) { var result = browserCookie.split('='); if (result && result.length > 0) { return result[0].replace(/^\s+|\s+$/gm,''); // trim } return null; }, dr_removeCookie : function (cookiename, path, hostDomains) { dr_cookiebanner_options.log("dr_removeCookie(" + cookiename + ")"); if (cookiename != null) { if (dr_cookiebanner_options.dr_existsCookie(cookiename)) { document.cookie = cookiename + '=; Path=' + path + '; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; if (hostDomains && hostDomains.length > 0) { for (var ihd = 0; ihd < hostDomains.length; ihd++) { document.cookie = cookiename + '=; domain=' + hostDomains[ihd] + '; Path=' + path + '; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; } } } } }, dr_getHostDomains : function(hostname) { var result = []; if (hostname && hostname.length > 0) { result.push(hostname); var domainParts = hostname.split("."); if (domainParts && domainParts.length > 2) { for (var i=0; i<(domainParts.length - 2); i++) { domainParts[i] = ""; var url = ""; for (var j=0; j0) { url += "." + domainParts[j]; } } result.push(url); } } } return result; }, dr_addIgnoreCookies : function(cookies) { dr_cookiebanner_options.log("dr_addIgnoreCookies()"); for (var j = 0; j 0) { dr_cookiebanner_options.logJson("dr_activateInsertionTag()", tag); dr_activateInsertionTagOnStartup(0, tag.divId, code); } else { dr_cookiebanner_options.logJson("dr_activateTag()", tag); dr_activateTag(code, removeAfterExecution); } } } catch(exc) { console.error("WebCare Tag Execution problem", exc); } } } } } // now activate integration tags (if they werent already executed because of normal tag activation) dr_initIntegrationTags(dr_generated_tags); } }, dr_generateCountrySelectOptions : function() { var hasAnyOptions = false; var options = dr_cookiebanner_options.preBannerOptions; if (options != null) { var browserLanguage = navigator.language || navigator.userLanguage; var browserCountry = null; if (browserLanguage.length > 2) { if (browserLanguage.length > 4) { browserCountry = browserLanguage.substring(3, 5); } browserLanguage = browserLanguage.substring(0, 2); } if (browserLanguage) { browserLanguage = browserLanguage.toLowerCase(); } if (browserCountry) { browserCountry = browserCountry.toLowerCase(); } var url = location.host + location.pathname; var selectedOptionLanguage = null; var selectedOptionCountry = null; var selectedOptionUrl = null; for (var i = 0; i < options.length; i++) { var option = options[i]; if (browserLanguage != null) { if (option.select) { if (option.select.languages) { for (var j = 0; j < option.select.languages.length; j++) { if (browserLanguage == option.select.languages[j]) { selectedOptionLanguage = option; break; } } } } } if (browserCountry != null) { if (option.select) { if (option.select.countries) { for (var j = 0; j < option.select.countries.length; j++) { if (browserCountry == option.select.countries[j]) { selectedOptionCountry = option; break; } } } } } if (url != null) { if (option.select) { if (option.select.urls) { for (var j = 0; j < option.select.urls.length; j++) { if (url.indexOf(option.select.urls[j]) >= 0) { selectedOptionUrl = option; break; } } } } } } var selectedOption = selectedOptionLanguage; if (selectedOptionCountry != null) { selectedOption = selectedOptionCountry; } if (selectedOptionUrl != null) { selectedOption = selectedOptionUrl; } var selectElem = document.getElementById("dr-selectCountry-input"); if (selectElem) { var optionHtml = selectElem.innerHTML; for (var i = 0; i < options.length; i++) { var option = options[i]; var selected = ""; if (option == selectedOption) { selected = " selected"; } optionHtml += "" + option.description + ""; hasAnyOptions = true; } selectElem.innerHTML = optionHtml; } if (hasAnyOptions) { dr_pre_selectCountry(); } } if (!hasAnyOptions) { // hide select and show button to proceed var pre = document.getElementById("dr-selectCountry-input"); if (pre) { pre.style.display = "none"; } var btn = document.getElementById("dr-selectCountry-btn"); if (btn) { btn.style.visibility="visible"; } } }, dr_getSelectedPreBannerOption : function() { var options = dr_cookiebanner_options.preBannerOptions; var selectElem = document.getElementById("dr-selectCountry-input"); if (selectElem && selectElem.value) { if (options != null) { for (var i = 0; i < options.length; i++) { var option = options[i]; if (option.key === selectElem.value) { var needsRedirect = true; var url = location.host + location.pathname; if (url != null) { if (option.select) { if (option.select.urls) { for (var j = 0; j < option.select.urls.length; j++) { if (url.indexOf(option.select.urls[j]) >= 0) { needsRedirect = false; } } } } } if (needsRedirect) { return option; } else { return null; } break; } } } } return null; }, dr_getUrlVarsAsArray : function() { var vars = {}; var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { vars[key] = value; }); return vars; }, dr_getUrlParam : function(parameter, defaultvalue){ var urlparameter = defaultvalue; if(window.location.href.indexOf(parameter) > -1){ urlparameter = this.dr_getUrlVarsAsArray()[parameter]; } return urlparameter; }, dr_getConsentFromBanner : function(status, consentModeArray) { var result = { tech: true, preferences: true, statistic: false, marketing: false, unknown: false, drAllow: false, drDeny: false }; if (status === "allow") { result.statistic = true; result.marketing = true; result.unknown = true; result.drAllow = true; } else { if (consentModeArray) { for (var i=0; i < consentModeArray.length; i++) { if ("statistic" === consentModeArray[i]) { result.statistic = true; } else if ("marketing" === consentModeArray[i]) { result.marketing = true; } else if ("unclassified" === consentModeArray[i]) { result.unknown = true; } } } } return result; }, dr_getConsentFromUrlParameter : function() { var result = { tech: true, preferences: true, statistic: false, marketing: false, unknown: false, drAllow: false, drDeny: false }; var cs = this.dr_getUrlParam("__drconsent", null); if (cs) { if (cs === "allow") { result.preferences=true; result.statistic=true; result.marketing=true; result.unknown=true; result.drAllow = true; } else if (cs === "deny") { result.preferences = false; result.drDeny = true; } else { result.preferences = (cs.indexOf('p') > -1); result.statistic = (cs.indexOf('s') > -1); result.marketing = (cs.indexOf('m') > -1); result.unknown = (cs.indexOf('u') > -1); } return result; } else { return null; // no parameter found } }, dr_addConsentParameterToUrl : function(url, consent) { if (url) { var result = url; if (consent) { } else { consent = { tech: true, preferences: true, statistic: false, marketing: false, unknown: false, drAllow: false, drDeny: false }; } var consentContent = "deny"; if (consent.drAllow) { consentContent = "allow"; } else if (consent.drDeny) { consentContent = "deny"; } else { consentContent = ""; if (consent.preferences) { consentContent += "p"; } if (consent.statistic) { consentContent += "s"; } if (consent.marketing) { consentContent += "m"; } if (consent.unknown) { consentContent += "u"; } } var spacer = "?" if (result.indexOf("?") > -1) { spacer = "&"; } result += spacer + "__drconsent=" + consentContent; return result; } }, dr_removeConsentParameterFromUrl : function(url) { if (url) { var idx = url.indexOf("__drconsent="); if (idx > 0) { var preUrl = url.substr(0, idx); // prior to tag var postUrl = ""; // after tag var startIdx = idx + "&__drconsent=".length; var add = false; // add chars when ?&# is found for (var i=startIdx; i 0 && preUrl.charAt(preUrl.length - 1) === '?' || preUrl.charAt(preUrl.length - 1) === '&') { if (postUrl.length > 0 && postUrl.charAt(0) === '#') { preUrl = preUrl.substr(0, preUrl.length - 1); } } url = preUrl + postUrl; // if it ends with ?& remove this char if (url.charAt(url.length - 1) === "?" || url.charAt(url.length - 1) === "&") { url = url.substr(0, url.length - 1); } } } return url; } }; function dr_getBannerLanguage() { let defaultLanguage = "en"; let langParam = dr_existsLanguage(dr_getParameterByName("lang")); if (langParam) { return langParam; } langParam = dr_existsLanguage(document.documentElement.lang); if (langParam) { return langParam; } langParam = dr_existsLanguage(navigator.language || navigator.userLanguage); if (langParam) { return langParam; } langParam = dr_existsLanguage(defaultLanguage); if (langParam) { return langParam; } return 0; // get first language } function dr_loadIfExternalLanguage(langIso) { sleep() return true; } function dr_existsLanguage(lang) { if (lang) { lang = lang.toLowerCase(); } if (lang && lang.length >= 2) { if (dr_generated_banner[lang]) { return lang; // can include country code } if (lang.length > 2) { lang = lang.substring(0,2); } lang = lang.toLowerCase(); if (dr_generated_banner[lang]) { return lang; } } } function dr_getParameterByName(name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, '\\$&'); var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' ')); } // remove cookies when leaving the page window.addEventListener("beforeunload", function (e) { if (!dr_cookiebanner_options.dr_cookiesEnabled) { dr_cookiebanner_options.dr_purgeCookies(); } return undefined; }); var dr_cookie_erase={cookies:[],maxIterations:5,interval:1e3,add_interval:1500,log:!1,cookieEraser:function(){this.log&&console.info("Erasing Cookies");for(var e=document.cookie.split(";"),o=1;o<=e.length;o++){var i=this.getCookieNameFromBrowserCookieString(e[o-1]);if(i&&null!=i)for(var r=0;r0)return o[0].replace(/^\s+|\s+$/gm,"")}return null},stringContains:function(e,o){return this.log&&console.info("Find "+o+" in "+e),!(!e||!o)&&("="==o[0]?e===o.substring(1):-1!==e.toLowerCase().indexOf(o.toLowerCase()))},eraseCookie:function(e){this.log&&console.info("Erasing "+e);var o=new Date;o.setDate(o.getDate()-1);var i=[e+"=","expires="+o.toUTCString(),"path=/"];"https:"===location.protocol&&(i.push("secure"),i.push("SameSite=none")),document.cookie=i.join(";")},installService:function(){dr_cookie_erase.cookieEraser(),dr_cookie_erase.maxIterations--,dr_cookie_erase.maxIterations>0?(setTimeout(dr_cookie_erase.installService,dr_cookie_erase.interval),dr_cookie_erase.interval+=dr_cookie_erase.add_interval):this.log&&console.log("Ending service")}};