1var cookieArray = { 2 "msg_en": { 3 "cookie_explanation": "Cookie-Explanation", 4 "close_button": "deny and close", 5 "about_cookie_title": "About Cookies", 6 "ncm_brand_text": "Tool made by ", 7 "description": "There are cookies on this website. The aim of the recording is to personalize the ads and content, to offer functions for social media and to analyze the access on our website.", 8 "check_button": "Deactivate this cookie", 9 "accept_button": "Accept all", 10 "setting_button": "Settings", 11 "close_and_save_button": "save and close", 12 "about_cookie_text": "Cookies are small text files that act in the background of websites. Websites use these to make the user experience on the site even better. According to the current legal situation, the storage of cookies on your device is permitted provided that they are absolutely necessary for the operation of the website. Your permission is required for the other cookies. Different cookies are used on this page. Some of these cookies are set by third parties who use our pages. You can change or revoke your consent to the cookies in accordance with the cookie declaration on the website at any time. You can find out more about us, your contact options and the processing of personal data in our privacy policy.", 13 "title": "This website is using cookies" 14 }, 15 "msg_de": { 16 "cookie_explanation": "Cookie-Erklärung", 17 "close_button": "Ablehnen und SchlieÃen", 18 "about_cookie_title": "Ãber Cookies", 19 "ncm_brand_text": "Ein Tool der ", 20 "description": "Auf dieser Webseite kommen Cookies zum Einsatz. Ziel der Erfassung sind die Personalisierung der Anzeigen und Inhalte, das Anbieten von Funktionen für Social Media und die Analyse der Zugriffe auf unserer Webseite.", 21 "check_button": "Dieses Cookie deaktivieren", 22 "accept_button": "Alle akzeptieren", 23 "setting_button": "Einstellungen", 24 "close_and_save_button": "speichern und schlieÃen", 25 "about_cookie_text": "Cookies sind kleine Textdateien, die im Hintergrund von Webseiten agieren. Webseiten setzen diese ein, um die Nutzererfahrung auf der Seite noch besser zu machen. Laut der aktuellen Gesetzeslage ist die Speicherung von Cookies auf Ihrem Gerät erlaubt, sofern sie für den Betrieb der Webseite zwingend erforderlich sind. Für die übrigen Cookies ist Ihre Erlaubnis notwendig. Auf dieser Seite kommen unterschiedliche Cookies zum Einsatz. Manche dieser Cookies werden von Drittparteien gesetzt, die auf unseren Seiten zum Einsatz kommen. Ihre Einwilligung zu den Cookies gemäà der Cookie-Erklärung auf der Webseite können Sie jederzeit ändern oder widerrufen. In unserer Datenschutzlinie erfahren Sie mehr über uns, Ihre Kontaktmöglichkeiten und über die Verarbeitung von personenbezogenen Daten. ", 26 "title": "Diese Webseite verwendet Cookies" 27 }, 28 "cookies_de": [ 29 [{ 30 "zweck_de": "Prüft ob beim Besucher die Session Cookies aktiviert sind.", 31 "anbieter": "CheckEffect", 32 "src": "", 33 "name": "mymon_scookie_test", 34 "zweck_en": "Checks whether the session cookies are activated for the visitor.", 35 "ablauf_dimension": "session", 36 "ablauf_value": "", 37 "category_id": "1", 38 "typ": "http", 39 "id": "1547" 40 }, { 41 "zweck_de": "Vergibt jedem Besucher eine eindeutige Nummer zur Wiedererkennung", 42 "anbieter": "CheckEffect", 43 "src": "", 44 "name": "mymon_user", 45 "zweck_en": "Assigns each visitor a unique identification number", 46 "ablauf_dimension": "year", 47 "ablauf_value": "7", 48 "category_id": "1", 49 "typ": "pixel", 50 "id": "1548" 51 }, { 52 "zweck_de": "Vergibt jedem Besucher eine eindeutige Nummer zur Wiedererkennung auf der aktuellen Website", 53 "anbieter": "CheckEffect", 54 "src": "", 55 "name": "*_mymon_user", 56 "zweck_en": "Assigns each visitor a unique number for recognition on the current website", 57 "ablauf_dimension": "", 58 "ablauf_value": "", 59 "category_id": "1", 60 "typ": "pixel", 61 "id": "1549" 62 }, { 63 "zweck_de": "Speichert Informationen darüber, wann der Besucher das letzte Mal die Website besucht hat", 64 "anbieter": "CheckEffect", 65 "src": "", 66 "name": "*_1Stcontact", 67 "zweck_en": "Stores information about when the visitor last visited the website", 68 "ablauf_dimension": "", 69 "ablauf_value": "", 70 "category_id": "1", 71 "typ": "pixel", 72 "id": "1550" 73 }, { 74 "zweck_de": "Speichert Informationen darüber, wie der Besucher das letzte Mal die Website besucht hat", 75 "anbieter": "CheckEffect", 76 "src": "", 77 "name": "*_1Stref", 78 "zweck_en": "Stores information about how the visitor last visited the website", 79 "ablauf_dimension": "", 80 "ablauf_value": "", 81 "category_id": "1", 82 "typ": "pixel", 83 "id": "1551" 84 }, { 85 "zweck_de": "Speichert Informationen darüber, wann der Besucher das vorletzte Mal die Website besucht hat", 86 "anbieter": "CheckEffect", 87 "src": "", 88 "name": "*_2ndcontact", 89 "zweck_en": "Stores information about when the visitor last visited the website", 90 "ablauf_dimension": "day", 91 "ablauf_value": "60", 92 "category_id": "1", 93 "typ": "pixel", 94 "id": "1552" 95 }, { 96 "zweck_de": "Speichert Informationen darüber, wie der Besucher das vorletzte Mal die Website besucht hat", 97 "anbieter": "CheckEffect", 98 "src": "", 99 "name": "*_2ndref", 100 "zweck_en": "Stores information about how the visitor visited the website the second to last time",
101 "ablauf_dimension": "", 102 "ablauf_value": "", 103 "category_id": "1", 104 "typ": "pixel", 105 "id": "1553" 106 }, { 107 "zweck_de": "Speichert Informationen darüber, wann der Besucher das vorvorletzte Mal die Website besucht hat", 108 "anbieter": "CheckEffect", 109 "src": "", 110 "name": "*_3rdcontact", 111 "zweck_en": "Stores information about when the visitor visited the website the penultimate time", 112 "ablauf_dimension": "", 113 "ablauf_value": "", 114 "category_id": "1", 115 "typ": "pixel", 116 "id": "1554" 117 }, { 118 "zweck_de": "Speichert Informationen darüber, wie der Besucher das vorvorletzte Mal die Website besucht hat", 119 "anbieter": "CheckEffect", 120 "src": "", 121 "name": "*_3rdref", 122 "zweck_en": "Stores information about how the visitor visited the website the second to last time", 123 "ablauf_dimension": "", 124 "ablauf_value": "", 125 "category_id": "1", 126 "typ": "pixel", 127 "id": "1555" 128 }, { 129 "zweck_de": "Speichert die Kennung der aktuellen Sitzung", 130 "anbieter": "CheckEffect", 131 "src": "", 132 "name": "*_mymon_session", 133 "zweck_en": "Stores the identifier of the current session", 134 "ablauf_dimension": "", 135 "ablauf_value": "", 136 "category_id": "1", 137 "typ": "pixel", 138 "id": "1556" 139 }, { 140 "zweck_de": "Speichet die Info, ob der Besucher das aktuelle WebP Bilderformat unterstützt.", 141 "anbieter": "Website", 142 "src": "", 143 "name": "NCM_ACCEPT_WEBP", 144 "zweck_en": "Saves the information whether the visitor supports the current WebP image format.", 145 "ablauf_dimension": "", 146 "ablauf_value": "", 147 "category_id": "1", 148 "typ": "http", 149 "id": "1564" 150 }, { 151 "zweck_de": "Speichert die Info, welche Saison-Version der Website Besucher bevorzugt.", 152 "anbieter": "Website", 153 "src": "", 154 "name": "NCM_SEASON", 155 "zweck_en": "Stores information about which season version of the website visitors prefer.", 156 "ablauf_dimension": "", 157 "ablauf_value": "", 158 "category_id": "1", 159 "typ": "", 160 "id": "1565" 161 }, { 162 "zweck_de": "Interne Projektidentifikation", 163 "anbieter": "Website", 164 "src": "", 165 "name": "NCM_USERID", 166 "zweck_en": "Internal project identification", 167 "ablauf_dimension": "", 168 "ablauf_value": "", 169 "category_id": "1", 170 "typ": "http", 171 "id": "1566" 172 }, { 173 "zweck_de": "CMS Anwendersitzung", 174 "anbieter": "Website", 175 "src": "", 176 "name": "PHPSESSID", 177 "zweck_en": "CMS user session", 178 "ablauf_dimension": "", 179 "ablauf_value": "", 180 "category_id": "1", 181 "typ": "http", 182 "id": "1568" 183 }, { 184 "zweck_de": "Vergibt jedem Besucher eine eindeutige Nummer zur Wiedererkennung auf der aktuellen Website", 185 "anbieter": "CheckEffect", 186 "src": "", 187 "name": "_cetui", 188 "zweck_en": "Assigns each visitor a unique number for recognition on the current website", 189 "ablauf_dimension": "", 190 "ablauf_value": "", 191 "category_id": "1", 192 "typ": "https", 193 "id": "1578" 194 }, { 195 "zweck_de": "Speichert ob der User den Cookie Banner gelesen hat", 196 "anbieter": "Website", 197 "src": "", 198 "name": "NCMCOOKIEINFOREAD", 199 "zweck_en": "Saves whether the user has read the cookie banner", 200 "ablauf_dimension": "", 201 "ablauf_value": "", 202 "category_id": "1", 203 "typ": "https", 204 "id": "1582" 205 }, { 206 "zweck_de": "Speichert Cookie Einstellungen", 207 "anbieter": "Website", 208 "src": "", 209 "name": "AllowedScriptList", 210 "zweck_en": "Saves cookie settings", 211 "ablauf_dimension": "", 212 "ablauf_value": "", 213 "category_id": "1", 214 "typ": "https", 215 "id": "1585" 216 }, { 217 "zweck_de": "Speichert die Liste aller Cookies denen Sie zugestimmt haben", 218 "anbieter": "Website", 219 "src": "", 220 "name": "AllowedCookiesList", 221 "zweck_en": "Saves your Cookies usage settings", 222 "ablauf_dimension": "week", 223 "ablauf_value": "4", 224 "category_id": "1", 225 "typ": "https", 226 "id": "1586" 227 }, { 228 "zweck_de": "Speichert Ihre Cookie Präferenzen", 229 "anbieter": "Website", 230 "src": "", 231 "name": "CookieInteraction", 232 "zweck_en": "Stores your cookie preferences", 233 "ablauf_dimension": "", 234 "ablauf_value": "", 235 "category_id": "1", 236 "typ": "pixel", 237 "id": "1592" 238 }, { 239 "zweck_de": "Cookie der Speichert ob Sie den Weihnachtsbanner gesehen haben", 240 "anbieter": "Website", 241 "src": "", 242 "name": "christmas_seen", 243 "zweck_en": "Cookie that saves whether you have seen the Christmas banner", 244 "ablauf_dimension": "", 245 "ablauf_value": "", 246 "category_id": "1", 247 "typ": "https", 248 "id": "1593" 249 }, { 250 "zweck_de": "Stellt die reibungslose Erfassung von Formulareingaben sicher.", 251 "anbieter": "CheckEffect", 252 "src": "", 253 "name": "mymon_form_log_*", 254 "zweck_en": "Ensures the smooth entry of form entr
254ies.", 255 "ablauf_dimension": "", 256 "ablauf_value": "", 257 "category_id": "1", 258 "typ": "http", 259 "id": "1621" 260 },{ 261 "zweck_de": "Merkt sich die eingestellte Sprache der Website", 262 "anbieter": "Website", 263 "src": "", 264 "name": "lang", 265 "zweck_en": "Remembers the language set for the website", 266 "ablauf_dimension": "", 267 "ablauf_value": "", 268 "category_id": "1", 269 "typ": "https", 270 "id": "1625" 271 } 272 ], 273 [{ 274 "zweck_de": "Google verwendet Sicherheits-Cookies, um Nutzer zu authentifizieren, betrügerische Verwendung von Anmeldeinformationen zu verhindern und Nutzerdaten vor dem Zugriff durch Unbefugte zu schützen. Die sogenannte SID- und HSID-Cookies, die die Google-Konto-ID und den letzten Anmeldezeitpunkt eines Nutzers in digital signierter und verschlüsselter Form festhalten.", 275 "anbieter": "Google", 276 "src": "", 277 "name": "HSID", 278 "zweck_en": "Google uses security cookies to prevent the use of login information and to protect user data from unauthorized access. Record the so-called SID and HSID cookies, the Google account ID and the last time a user logged in in digitally signed and encrypted form.", 279 "ablauf_dimension": "", 280 "ablauf_value": "", 281 "category_id": "2", 282 "typ": "http", 283 "id": "1563" 284 }, { 285 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 286 "anbieter": "Google", 287 "src": "", 288 "name": "SAPISID", 289 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 290 "ablauf_dimension": "", 291 "ablauf_value": "", 292 "category_id": "2", 293 "typ": "http", 294 "id": "1569" 295 }, { 296 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 297 "anbieter": "Google", 298 "src": "", 299 "name": "SID", 300 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 301 "ablauf_dimension": "", 302 "ablauf_value": "", 303 "category_id": "2", 304 "typ": "http", 305 "id": "1570" 306 }, { 307 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 308 "anbieter": "Google", 309 "src": "", 310 "name": "SSID", 311 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 312 "ablauf_dimension": "", 313 "ablauf_value": "", 314 "category_id": "2", 315 "typ": "http", 316 "id": "1571" 317 }, { 318 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 319 "anbieter": "Google", 320 "src": "", 321 "name": "__Secure-3PAPISID", 322 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 323 "ablauf_dimension": "", 324 "ablauf_value": "", 325 "category_id": "2", 326 "typ": "https", 327 "id": "1572" 328 }, { 329 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 330 "anbieter": "Google", 331 "src": "", 332 "name": "__Secure-3PSID", 333 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 334 "ablauf_dimension": "", 335 "ablauf_value": "", 336 "category_id": "2", 337 "typ": "https", 338 "id": "1573" 339 }, { 340 "zweck_de": "Diese Cookies werden von Google gesetzt, um Ihnen dessen Dienste zur Verfügung zu stellen, wie z. B. Google Maps.", 341 "anbieter": "Google", 342 "src": "", 343 "name": "__Secure-APISID", 344 "zweck_en": "These cookies are set by Google in order to provide you with its services, such as B. Google Maps.", 345 "ablauf_dimension": "", 346 "ablauf_value": "", 347 "category_id": "2", 348 "typ": "https", 349 "id": "1574" 350 } 351 ], 352 [{ 353 "zweck_de": "", 354 "anbieter": "Google", 355 "src": "", 356 "name": "NID", 357 "zweck_en": "Registers a unique ID that identifies a returning user's device. The ID is used for targeted ads.", 358 "ablauf_dimension": "month", 359 "ablauf_value": "6", 360 "category_id": "4", 361 "typ": "HTTP", 362 "id": "1449" 363 }, { 364 "zweck_de": "Diese Cookies verknüpfen Ihre Aktivitäten mit anderen Geräten, auf denen Sie sich zuvor über Ihr Google-Konto angemeldet haben. Auf der Grundlage dieser vorherigen Aktivität werden die auf Ihren Geräten angezeigten Anzeigen koordiniert und Conversion-Ereignisse gemessen.", 365 "anbieter": "Google", 366 "src": "", 367 "name": "ANID", 368 "zweck_en": "These cookies link your activities to other devices on which you previously logged in via your Google-account. On the basis of this previous activity, the ads displayed on your devices are coordinated and conversion events are measured.", 369 "ablauf_dimension": "", 370 "ablauf_value": "", 371 "category_id": "4", 372 "typ": "http", 373 "id": "1559" 374 }, { 375 "zweck_de": "Legt fest, ob die Navigation des Be
375nutzers in einem bestimmten statistischen Platzhalter registriert werden soll.", 376 "anbieter": "Google Tag Manager Hotjar", 377 "src": "", 378 "name": "_hjIncludedInSample", 379 "zweck_en": "Determines if the user's navigation should be registered in a certain statistical place holder.", 380 "ablauf_dimension": "session", 381 "ablauf_value": "", 382 "category_id": "1", 383 "typ": "HTTP", 384 "id": "1416" 385 }, { 386 "zweck_de": " Notwendig für die Funktionalität der Chat-Box-Funktion der Website.", 387 "anbieter": "Google Tag Manager", 388 "src": "", 389 "name": "Drift.Targeting.currentPageViewStarted", 390 "zweck_en": "Necessary for the functionality of the website's chat-box function.", 391 "ablauf_dimension": "persistent", 392 "ablauf_value": "", 393 "category_id": "1", 394 "typ": "HTML", 395 "id": "1417" 396 }, { 397 "zweck_de": "Notwendig für die Funktionalität der Chat-Box-Funktion der Website.", 398 "anbieter": "Google Tag Manager", 399 "src": "", 400 "name": "Drift.Targeting.firstVisit", 401 "zweck_en": "Necessary for the functionality of the website's chat-box function.", 402 "ablauf_dimension": "", 403 "ablauf_value": "", 404 "category_id": "1", 405 "typ": "HTML", 406 "id": "1419" 407 }, { 408 "zweck_de": "Notwendig für die Funktionalität der Chat-Box-Funktion der Website.", 409 "anbieter": "Google Tag Manager", 410 "src": "", 411 "name": "Drift.Targeting.lastVisit", 412 "zweck_en": "Necessary for the functionality of the website's chat-box function.", 413 "ablauf_dimension": "", 414 "ablauf_value": "", 415 "category_id": "1", 416 "typ": "HTML", 417 "id": "1420" 418 }, { 419 "zweck_de": "Wird von Facebook genutzt, um eine Reihe von Werbeprodukten anzuzeigen, zum Beispiel Echtzeitgebote dritter Werbetreibender.", 420 "anbieter": "Google Tag Manager", 421 "src": "", 422 "name": "_fbp", 423 "zweck_en": "Used by facebook to display a range of advertising roducts such as real-time bids from third party advertisers", 424 "ablauf_dimension": "month", 425 "ablauf_value": "3", 426 "category_id": "4", 427 "typ": "HTTP", 428 "id": "1399" 429 }, { 430 "zweck_de": "Wird von Facebook verwendet, um eine Reihe von Werbeprodukten zu liefern, z. B. Echtzeitgebote von Drittanbietern.", 431 "anbieter": "Facebook", 432 "src": "", 433 "name": "fr", 434 "zweck_en": "Used by Facebook to display a range of advertising products, such as real-time bids from third party advertisers.", 435 "ablauf_dimension": "", 436 "ablauf_value": "", 437 "category_id": "4", 438 "typ": "HTTP", 439 "id": "1402" 440 }, { 441 "zweck_de": "Dieses Cookie enthält Informationen darüber, wie der Endbenutzer die Website nutzt, sowie über Werbung, die der Endbenutzer möglicherweise vor dem Besuch dieser Website gesehen hat. Der Hauptzweck dieses Cookies ist: Targeting / Werbung", 442 "anbieter": "DoubleClick", 443 "src": "", 444 "name": "CONSENT", 445 "zweck_en": "This cookie carries out information about how the end user uses the website and any advertising that the end user may have seen before visiting the said website. The main purpose of this cookie is: Targeting/Advertising", 446 "ablauf_dimension": "year", 447 "ablauf_value": "19", 448 "category_id": "4", 449 "typ": "http", 450 "id": "1561" 451 }, { 452 "zweck_de": "Google Sicherheitscookies", 453 "anbieter": ".google.com", 454 "src": "", 455 "name": "SIDCC", 456 "zweck_en": "Google security cookies to authenticate users, prevent fraudulent use of login credentials, and protect user data from unauthorized parties.", 457 "ablauf_dimension": "month", 458 "ablauf_value": "4", 459 "category_id": "4", 460 "typ": "pixel", 461 "id": "1590" 462 } 463 ], 464 [{ 465 "zweck_de": "Registriert eine eindeutige ID, die verwendet wird, um statistische Daten dazu, wie der Besucher die Website nutzt, zu generieren.", 466 "anbieter": "Google Tag Manager Google", 467 "src": "", 468 "name": "_ga", 469 "zweck_en": "Registers a unique ID that is used to generate statistical data on how the visitor uses the website.", 470 "ablauf_dimension": "", 471 "ablauf_value": "", 472 "category_id": "5", 473 "typ": "HTTP", 474 "id": "1392" 475 }, { 476 "zweck_de": "Registriert eine eindeutige ID, die verwendet wird, um statistische Daten dazu, wie der Besucher die Website nutzt, zu generieren.", 477 "anbieter": "Google Tag Manager Google", 478 "src": "", 479 "name": "_gid", 480 "zweck_en": "Registers a unique ID that is used to generate statistical data on how the visitor uses the website.", 481 "ablauf_dimension": "", 482 "ablauf_value": "", 483 "category_id": "5", 484 "typ": "HTTP", 485 "id": "1393" 486 }, 487 488 { 489 "zweck_de": "Wird von Google Maps verwendet, um den Nutzer eine Karte eines Standorts zu präsententieren", 490 "anbieter": "Google", 491 "src": "maps.google.com/maps/api/js", 492 "name": "MAPS API", 493 "zweck_en": "Used by Google Maps", 494 "ablauf_dimension": "", 495 "ablauf_value": "", 496 "category_id": "2", 497 "typ": "HTTP", 498 "is_api": true, 499 "id": "1900" 500 }, 501// { 502// "zweck_de": "Wird von zenrep verwendet", 503// "anbieter": "zenrep", 504// "src": "admin.zenrep.com/SCKWidgets2/js/widgets.js", 505// "name": "zenrep", 506// "zweck_en": "Used by zenrep", 507// "ablauf_dimension": "", 508// "ablauf_value": "", 509// "category_id": "2", 510// "typ": "HTTP",
511// "is_api": true, 512// "id": "1901" 513// }, 514 { 515 "zweck_de": "Wird von zFacebook Pixel verwendet", 516 "anbieter": "facebook pixel", 517 "src": "connect.facebook.net/signals/config/", 518 "name": "facebook pixel", 519 "zweck_en": "Used by Facebook", 520 "ablauf_dimension": "", 521 "ablauf_value": "", 522 "category_id": "2", 523 "typ": "HTTP", 524 "is_api": true, 525 "id": "1902" 526 } 527 ], 528 [] 529 ], 530 "categories_de": [{ 531 "name_de": "Notwendige", 532 "description_si": "", 533 "description_cz": "", 534 "description_en": "Necessary cookies help make a website usable by enabling basic functions. This happens by enable the page navigation and the access to secure areas of the website. Without these cookies the website cannot function properly.", 535 "lupdat": "2019-12-19 16:34:50", 536 "name_sk": "", 537 "unknown": "0", 538 "description_fr": "", 539 "name_cz": "", 540 "creadat": "2019-12-19 16:34:50", 541 "id": "1", 542 "name_si": "", 543 "name_en": "Required", 544 "description_it": "", 545 "wer": "", 546 "active": "1", 547 "description_hu": "", 548 "description_sk": "", 549 "name_hu": "", 550 "ready": "1", 551 "name_it": "", 552 "description_de": "Notwendige Cookies sind hilfreich, um eine Webseite generell nutzbar zu machen. Dies geschieht, indem sie Grundfunktionen wie die Seitennavigation und den Zugriff auf sichere Bereiche der Webseite möglich machen. Ohne diese Cookies kann die Webseite nicht richtig funktionieren.", 553 "name_fr": "" 554 }, { 555 "name_de": "Präferenz", 556 "description_si": "", 557 "description_cz": "", 558 "description_en": "Preference cookies are used to provide the website with information about which user preferences exist.\r\nFor example they remember your preferred language or the region from which you accessed the website. The website can then be adapted accordingly.", 559 "lupdat": "2019-12-19 16:34:50", 560 "name_sk": "", 561 "unknown": "0", 562 "description_fr": "", 563 "name_cz": "", 564 "creadat": "2019-12-19 16:34:50", 565 "id": "2", 566 "name_si": "", 567 "name_en": "Preference", 568 "description_it": "", 569 "wer": "", 570 "active": "1", 571 "description_hu": "", 572 "description_sk": "", 573 "name_hu": "", 574 "ready": "1", 575 "name_it": "", 576 "description_de": "Präferenz-Cookies sind dazu da, um der Webseite Informationen darüber zu liefern, welche Nutzervorlieben bestehen.\r\nDabei merken sie sich z. B. Ihre präferierte Sprache oder die Region, von der aus Sie auf die Webseite zugegriffen haben.", 577 "name_fr": "" 578 }, { 579 "name_de": "Marketing", 580 "description_si": "", 581 "description_cz": "", 582 "description_en": "Marketing cookies are used to track visitors across websites. The aim is to show the user relevant ads that are tailored to the respective person. Publishers and third-party advertisers in particular benefit from this.", 583 "lupdat": "2019-12-19 16:34:50", 584 "name_sk": "", 585 "unknown": "0", 586 "description_fr": "", 587 "name_cz": "", 588 "creadat": "2019-12-19 16:34:50", 589 "id": "4", 590 "name_si": "", 591 "name_en": "Marketing", 592 "description_it": "", 593 "wer": "", 594 "active": "1", 595 "description_hu": "", 596 "description_sk": "", 597 "name_hu": "", 598 "ready": "1", 599 "name_it": "", 600 "description_de": "Marketing-Cookies kommen zum Einsatz, um Besuchern auf den Webseiten folgen zu können. Dabei wird das Ziel verfolgt, dem Nutzer relevante und auf die jeweilige Person abgestimmte Anzeigen zu zeigen. Besonders Publisher und werbetreibende Drittparteien profitieren davon.", 601 "name_fr": "" 602 }, { 603 "name_de": "Leistung",
604 "description_si": "", 605 "description_cz": "", 606 "description_en": "Performance cookies ensure that the loading speed as well as the presentation of the website on your device are optimally set.", 607 "lupdat": "2019-12-19 16:34:50", 608 "name_sk": "", 609 "unknown": "0", 610 "description_fr": "", 611 "name_cz": "", 612 "creadat": "2019-12-19 16:34:50", 613 "id": "5", 614 "name_si": "", 615 "name_en": "Performance", 616 "description_it": "", 617 "wer": "", 618 "active": "1", 619 "description_hu": "", 620 "description_sk": "", 621 "name_hu": "", 622 "ready": "1", 623 "name_it": "", 624 "description_de": "Leistungscookies sorgen dafür, dass die Ladegeschwindigkeit wie auch die Darstellung der Webseite auf Ihrem Gerät bestens eingestellt sind.", 625 "name_fr": "" 626 }, { 627 "name_de": "Nicht klassifiziert", 628 "description_si": "", 629 "description_cz": "", 630 "description_en": "Unclassified cookies are cookies that we are currently working on to classify them. This happens together with the providers of individual cookies.", 631 "lupdat": "0000-00-00 00:00:00", 632 "name_sk": "", 633 "unknown": "1", 634 "description_fr": "", 635 "name_cz": "", 636 "creadat": "0000-00-00 00:00:00", 637 "id": "6", 638 "name_si": "", 639 "name_en": "Unclassified", 640 "description_it": "", 641 "wer": "", 642 "active": "1", 643 "description_hu": "", 644 "description_sk": "", 645 "name_hu": "", 646 "ready": "1", 647 "name_it": "", 648 "description_de": "Bei nicht klassifizierten Cookies handelt es sich um Cookies, bei denen wir aktuell daran arbeiten, diese aufzuschlüsseln. Dies erfolgt in Zusammenarbeit mit Anbietern von individuellen Cookies. ", 649 "name_fr": "" 650 } 651 ] 652}; 653 654window.addEventListener( 655 'DOMContentLoaded', 656 function () { 657 if (typeof window?.gtmHelper?.init === 'function') { 658 window.gtmHelper.init(); 659 } 660 }, 661 false 662); 663 664var apiList = []; 665 666if (cookieArray == "undefined") var cookieArray = null; 667var htmlLangTagValue = document.getElementsByTagName("html")[0].getAttribute("lang"); 668var documentLanguage = "de"; 669if (htmlLangTagValue != null) 670 documentLanguage = htmlLangTagValue.includes("-") ? htmlLangTagValue.split("-")[0] : htmlLangTagValue; 671 672if (typeof ceARG == "undefined") { 673 ceARG = false; 674 ceARG.u = false; 675} 676var ceCOB_active = true; 677 678var cookie_debugmode = true; 679var cookie_mode = true; // true: blacklist, false:whitelist 680var cookie_blacklist = []; 681var cookie_status = "disabled"; 682 683var CookieInteraction = getCookieValueFromName("CookieInteraction"); 684 685var script_blacklist_url = []; 686var script_blacklist_data = []; 687 688var real_sources_list = []; 689 690function getCookieValue(arg, a) { 691 if (arg.split("=")[0] == a) return true; 692 else return ""; 693} 694 695function getCookieValueFromName(cname) { 696 var name = cname + "="; 697 var decodedCookie = decodeURIComponent(document.cookie); 698 var ca = decodedCookie.split(";"); 699 for (var i = 0; i < ca.length; i++) { 700 var c = ca[i]; 701 while (c.charAt(0) == " ") { 702 c = c.substring(1); 703 } 704 if (c.indexOf(name) == 0) { 705 return c.substring(name.length, c.length); 706 } 707 } 708 return ""; 709} 710 711function setCookie(name, value, days) { 712 var expires = ""; 713 if (days) { 714 var date = new Date(); 715 date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000); 716 expires = "; expires=" + date.toUTCString(); 717 } 718 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 719} 720 721function getCookie(name) { 722 var nameEQ = name + "="; 723 var ca = document.cookie.split(";"); 724 for (var i = 0; i < ca.length; i++) { 725 var c = ca[i];
726 while (c.charAt(0) == " ") c = c.substring(1, c.length); 727 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 728 } 729 return null; 730} 731 732function eraseCookie(name) { 733 document.cookie = name + "=; Max-Age=-99999999;"; 734} 735 736if (cookieArray != null) { 737 if (getCookieValueFromName("AllowedCookiesList").split(",").length > 0) 738 var cookie_whitelist = getCookieValueFromName("AllowedCookiesList").split(","); 739 else var cookie_whitelist = []; 740 var cookie_whitelist_more = []; 741 742 if (getCookieValueFromName("AllowedScriptList").split(",").length > 0) 743 var script_whitelist_url = getCookieValueFromName("AllowedScriptList").split(","); 744 else var script_whitelist_url = []; 745 var script_whitelist_url_more = []; 746 747 var script_whitelist_data = []; 748 749 for (i = 0; i < cookieArray.cookies_de.length; i++) { 750 for (c = 0; c < cookieArray.cookies_de[i].length; c++) { 751 if (i == 0) { 752 // init notwendig into co 753 if (CookieInteraction != "true" && getCookieValueFromName("AllowedCookiesList") == "") { 754 cookie_whitelist.push(cookieArray.cookies_de[i][c].name); 755 if (typeof cookieArray.cookies_de[i][c].src != "undefined") 756 script_whitelist_url.push(cookieArray.cookies_de[i][c].src); 757 } 758 if (CookieInteraction != "true") { 759 cookie_whitelist_more.push(cookieArray.cookies_de[i][c].name); 760 if (typeof cookieArray.cookies_de[i][c].src != "undefined") { 761 script_whitelist_url_more.push(cookieArray.cookies_de[i][c].src); 762 } 763 } 764 console.log("Notwendig", cookieArray.cookies_de[i][c].name); 765 } else { 766 // add all apis to new arrey 767 if (cookieArray.cookies_de[i][c].is_api) { 768 apiList.push(cookieArray.cookies_de[i][c]); 769 } 770 771 if (CookieInteraction != "true") { 772 cookie_whitelist_more.push(cookieArray.cookies_de[i][c].name); 773 if (typeof cookieArray.cookies_de[i][c].src != "undefined") 774 script_whitelist_url_more.push(cookieArray.cookies_de[i][c].src); 775 } 776 cookie_blacklist.push(cookieArray.cookies_de[i][c].name); 777 if (typeof cookieArray.cookies_de[i][c].src != "undefined") 778 script_blacklist_url.push(cookieArray.cookies_de[i][c].src); 779 if (typeof cookieArray.cookies_de[i][c].data != "undefined") 780 script_blacklist_data.push(cookieArray.cookies_de[i][c].data); 781 782 console.log("Optionale", cookieArray.cookies_de[i][c].name); 783 } 784 // cookie_blacklist.push("username"); 785 } 786 } 787 // check 788 //console.log(apiList); 789
790 setCookie("AllowedCookiesList", cookie_whitelist.join(","), 30); 791 setCookie("AllowedScriptList", script_whitelist_url.join(","), 30); 792 793 var cookie_tmp_storage = []; 794 var script_tmp_storage = []; 795 796 var AllowedCookiesList = getCookieValueFromName("AllowedCookiesList").split(","); 797 var AllowedScriptList = getCookieValueFromName("AllowedScriptList").split(","); 798 var AllowedCookiesAll = getCookieValueFromName("AllowedCookiesAll"); 799 800 // ##### OVERWRITE COOKIE SET AND GETTER 801 if (AllowedCookiesAll != "true") { 802 var cookie_setter = Object.getOwnPropertyDescriptor(Document.prototype, "cookie").get; 803 var cookie_getter = Object.getOwnPropertyDescriptor(Document.prototype, "cookie").set; 804 var cookieDesc = 805 Object.getOwnPropertyDescriptor(Document.prototype, "cookie") || 806 Object.getOwnPropertyDescriptor(HTMLDocument.prototype, "cookie"); 807 if (cookieDesc && cookieDesc.configurable) { 808 Object.defineProperty(document, "cookie", { 809 get: function () { 810 return cookieDesc.get.call(document); 811 }, 812 set: function (value) { 813 if (!cookie_needsToBeBlacklisted(value)) { 814 if (cookie_debugmode) console.log("Cookie BLOCKED!", value); 815 cookie_tmp_storage.push(value); 816 return value; 817 } 818 if (cookie_debugmode) { 819 } // console.log("Cookie Allowed!", value); 820 // If precondition ! validates, then this runs 821 cookieDesc.set.call(document, value); 822 }, 823 }); 824 } 825 } 826 // black list functions 827 828 function script_needsToBeBlacklisted(src, type, cookietype) { 829 //console.log('script_needsToBeBlacklisted: '+ typeof src); 830 //console.log(src); 831 832 if (AllowedCookiesAll == "true") return !cookie_mode; 833 834 if (typeof src == "object") { 835 return !cookie_mode; 836 } 837 838 for (var i = script_whitelist_url.length - 1; i >= 0; i--) { 839 if (script_whitelist_url[i] != "" && src != "" && src != null) 840 if (src == script_whitelist_url[i] || src.includes(script_whitelist_url[i])) return !cookie_mode; 841 //if (src == script_whitelist_url[i]) return !cookie_mode; 842 } 843 844 // BLACKLIST 845 for (var i = script_blacklist_url.length - 1; i >= 0; i--) { 846 if (script_blacklist_url[i] != "" && src != "" && src != null) 847 if (src == script_blacklist_url[i] || src.includes(script_blacklist_url[i])) return cookie_mode; 848 //if (src == script_blacklist_url[i]) return cookie_mode; 849 } 850 //for (var i = script_blacklist_data.length - 1; i >= 0; i--) { 851 // if(script_blacklist_data[i] != "" && src != "")if(cookietype.indexOf(script_blacklist_data[i]) != -1) return cookie_mode; 852 //} 853 854 return !cookie_mode; 855 } 856 857 function cookie_needsToBeBlacklisted(arg) { 858 if (AllowedCookiesAll == "true") return cookie_mode; 859 860 if (typeof arg != "string") { 861 for (var i = cookie_whitelist.length - 1; i >= 0; i--) { 862 if (cookie_whitelist[i] != "") if (getCookieValue(arg[0], cookie_whitelist[i])) return cookie_mode; 863 } 864 } else { 865 for (var i = cookie_whitelist.length - 1; i >= 0; i--) { 866 if (cookie_whitelist[i] != "") if (getCookieValue(arg, cookie_whitelist[i])) return cookie_mode; 867 } 868 } 869 // BALCKLIST 870 if (typeof arg != "string") { 871 for (var i = cookie_blacklist.length - 1; i >= 0; i--) { 872 if (getCookieValue(arg[0], cookie_blacklist[i])) return !cookie_mode; 873 } 874 } else { 875 for (var i = cookie_blacklist.length - 1; i >= 0; i--) { 876 if (getCookieValue(arg, cookie_blacklist[i])) return !cookie_mode; 877 } 878 } 879 // Cookie is not blacklisted 880 return cookie_mode; 881 } 882 883 // temp storage 884 885 function setTempCookie() {
886 tmp_c = cookie_tmp_storage; 887 cookie_tmp_storage = []; 888 for (var i = tmp_c.length - 1; i >= 0; i--) { 889 document.cookie = tmp_c[i]; 890 } 891 } 892 893 var realAllowedScripts = []; 894 function setTempScript() { 895 tmp_src = script_tmp_storage; 896 script_tmp_storage = []; 897 // console.log("scripts", tmp_src); 898 // get each script source from cookie, if cookie allowed/all allowed put it in to temp sources 899 var allowedCookies = getCookieValueFromName("AllowedCookiesList"); 900 var allCookiesAllowed = getCookieValueFromName("AllowedCookiesAll") == "true" ? true : false; 901 902 for (var a = 0; a < cookieArray.cookies_de.length; a++) { 903 for (var b = 0; b < cookieArray.cookies_de[a].length; b++) { 904 var cookie = cookieArray.cookies_de[a][b]; 905 if (allCookiesAllowed) { 906 if (typeof cookie.src != "undefined" && !tmp_src.includes(cookie.src)) tmp_src.push(cookie.src); 907 } else { 908 if (typeof cookie.src != "undefined") { 909 // if cookie allowed 910 if (allowedCookies.includes(cookie.name) && !tmp_
910src.includes(cookie.src)) { 911 tmp_src.push(cookie.src); 912 } 913 // if cookie not allowed 914 if (!allowedCookies.includes(cookie.name) && tmp_src.includes(cookie.src)) { 915 tmp_src.splice(tmp_src.indexOf(cookie.src), 1); 916 } 917 } 918 } 919 } 920 } 921 for (var i = tmp_src.length - 1; i >= 0; i--) { 922 // document.cookie = cookie_tmp_storage[i]; 923 var script = document.createElement("script"); 924 script.src = tmp_src[i]; 925 926 //console.log('temp src'+i+' '+typeof tmp_src[i]+': '+tmp_src[i]); 927 928 if (!isApiScript(tmp_src[i])) { 929 if (tmp_src[i].startsWith("http") || tmp_src[i].startsWith("https") || tmp_src[i].startsWith("//www")) { 930 document.head.appendChild(script); 931 } 932 } 933 } 934 935 if (AllowedCookiesAll == "true") { 936 for (var i = document.getElementsByTagName("SCRIPT").length - 1; i >= 0; i--) { 937 if (document.getElementsByTagName("SCRIPT")[i].type == "javascript/blocked") { 938 // document.getElementsByTagName("SCRIPT")[i].type = "text/javascript"; 939 var script = document.createElement("script"); 940 script.src = document.getElementsByTagName("SCRIPT")[i].src; 941 document.head.appendChild(script); 942 } 943 } 944 } 945 } 946 947 // ############## SCRIPT BLOCKER [script_needsToBeBlacklisted(src,type)] 948 if (AllowedCookiesAll != "true") { 949 MutationObserver = window.MutationObserver || window.WebKitMutationObserver; 950 951 if (typeof MutationObserver == "undefined") { 952 // mutationobserver-shim v0.3.2 (github.com/megawac/MutationObserver.js) 953 // Authors: Graeme Yeates (github.com/megawac) 954 window.MutationObserver = 955 window.MutationObserver || 956 (function (w) { 957 function v(a) { 958 this.i = []; 959 this.m = a; 960 } 961 962 function I(a) { 963 (function c() { 964 var d = a.takeRecords(); 965 d.length && a.m(d, a); 966 a.h = setTimeout(c, v._period); 967 })(); 968 } 969 970 function p(a) { 971 var b = { 972 type: null, 973 target: null, 974 addedNodes: [], 975 removedNodes: [], 976 previousSibling: null, 977 nextSibling: null, 978 attributeName: null, 979 attributeNamespace: null, 980 oldValue: null, 981 }, 982 c; 983 for (c in a) b[c] !== w && a[c] !== w && (b[c] = a[c]); 984 return b; 985 } 986 987 function J(a, b) { 988 var c = C(a, b); 989 return function (d) { 990 var f = d.length, 991 n; 992 b.a && 993 3 === a.nodeType && 994 a.nodeValue !== c.a && 995 d.push( 996 new p({ 997 type: "characterData", 998 target: a, 999 oldValue: c.a, 1000 }) 1001 ); 1002 b.b && c.b && A(d, a, c.b, b.f); 1003 if (b.c || b.g) n = K(d, a, c, b); 1004 if (n || d.length !== f) c = C(a, b); 1005 }; 1006 } 1007 1008 function L(a, b) { 1009 return b.value; 1010 } 1011 1012 function M(a, b) { 1013 return "style" !== b.name ? b.value : a.style.cssText; 1014 } 1015 1016 function A(a, b, c, d) { 1017 for (var f = {}, n = b.attributes, k, g, x = n.length; x--; ) 1018 (k = n[x]), 1019 (g = k.name), 1020 (d && d[g] === w) || 1021 (D(b, k) !== c[g] && 1022 a.push( 1023 p({ 1024 type: "attributes", 1025 target: b, 1026 attributeName: g, 1027 oldValue: c[g], 1028 attributeNamespace: k.namespaceURI, 1029 }) 1030 ), 1031 (f[g] = !0)); 1032 for (g in c) 1033 f[g] || 1034 a.push( 1035 p({ 1036 target: b, 1037 type: "attributes", 1038 attributeName: g, 1039 oldValue: c[g], 1040 }) 1041 ); 1042 } 1043 1044 function K(a, b, c, d) { 1045 function f(b, c, f, k, y) { 1046 var g = b.length - 1; 1047 y = -~((g - y) / 2); 1048 for (var h, l, e; (e = b.pop()); ) 1049 (h = f[e.j]), 1050 (l = k[e.l]), 1051 d.c && 1052 y && 1053 Math.abs(e.j - e.l) >= g && 1054 (a.push( 1055 p({ 1056 type: "childList", 1057 target: c, 1058 addedNodes: [h], 1059 removedNodes: [h], 1060 nextSibling: h.nextSibling, 1061 previousSibling: h.previousSibling, 1062 }) 1063 ), 1064 y--), 1065 d.b && l.b && A(a, h, l.b, d.f), 1066 d.a && 1067 3 === h.nodeType && 1068 h.nodeValue !== l.a && 1069 a.push( 1070 p({ 1071 type: "characterData", 1072 target: h, 1073 oldValue: l.a, 1074 }) 1075 ), 1076 d.g && n(h, l); 1077 } 1078 1079 function n(b, c) { 1080 for ( 1081 var g = b.childNodes, 1082 q = c.c, 1083 x = g.length, 1084 v = q ? q.length : 0, 1085 h, 1086 l, 1087 e, 1088 m, 1089 t, 1090 z = 0, 1091 u = 0, 1092 r = 0; 1093 u < x || r < v; 1094 1095 ) 1096 (m = g[u]), 1097 (t = (e = q[r]) && e.node), 1098 m === t 1099 ? (d.b && e.b && A(a, m, e.b, d.f), 1100 d.a && 1101 e.a !== w && 1102 m.nodeValue !== e.a && 1103 a.push( 1104 p({ 1105 type: "characterData", 1106 target: m, 1107 oldValue: e.a, 1108 }) 1109 ), 1110 l && f(l, b, g, q, z), 1111 d.g && (m.childNodes.length || (e.c && e.c.length)) && n(m, e), 1112 u++, 1113 r++) 1114 : ((k = !0), 1115 h || ((h = {}), (l = [])), 1116 m && 1117 (h[(e = E(m))] || 1118 ((h[e] = !0), 1119 -1 === (e = F(q, m, r, "node")) 1120 ? d.c && 1121 (a.push( 1122 p({ 1123 type: "childList", 1124 target: b, 1125 addedNodes: [m], 1126 nextSibling: m.nextSibling, 1127 previousSibling: m.previousSibling, 1128 }) 1129 ), 1130 z++) 1131 : l.push({ 1132 j: u, 1133 l: e, 1134 })), 1135 u++), 1136 t && 1137 t !== g[u] && 1138 (h[(e = E(t))] || 1139 ((h[e] = !0), 1140 -1 === (e = F(g, t, u)) 1141 ? d.c && 1142 (a.push( 1143 p({ 1144 type: "childList", 1145 target: c.node, 1146 removedNodes: [t], 1147 nextSibling: q[r + 1], 1148 previousSibling: q[r - 1], 1149 }) 1150 ), 1151 z--) 1152 : l.push({ 1153 j: e, 1154 l: r, 1155 })), 1156 r++)); 1157 l && f(l, b, g, q, z); 1158 } 1159 var k; 1160 n(b, c); 1161 return k; 1162 } 1163 1164 function C(a, b) { 1165 var c = !0; 1166 return (function f(a) { 1167 var k = { 1168 node: a, 1169 }; 1170 !b.a || (3 !== a.nodeType && 8 !== a.nodeType) 1171 ? (b.b && 1172 c && 1173 1 === a.nodeType && 1174 (k.b = G(a.attributes, function (c, f) { 1175 if (!b.f || b.f[f.name]) c[f.name] = D(a, f); 1176 return c; 1177 })), 1178 c && (b.c || b.a || (b.b && b.g)) && (k.c = N(a.childNodes, f)), 1179 (c = b.g)) 1180 : (k.a = a.nodeValue); 1181 return k; 1182 })(a); 1183 } 1184 1185 function E(a) { 1186 try { 1187 return a.id || (a.mo_id = a.mo_id || H++); 1188 } catch (b) { 1189 try { 1190 return a.nodeValue; 1191 } catch (c) { 1192 return H++; 1193 } 1194 } 1195 } 1196 1197 function N(a, b) { 1198 for (var c = [], d = 0; d < a.length; d++) c[d] = b(a[d], d, a); 1199 return c; 1200 } 1201 1202 function G(a, b) { 1203 for (var c = {}, d = 0; d < a.length; d++) c = b(c, a[d], d, a); 1204 return c; 1205 } 1206 1207 function F(a, b, c, d) { 1208 for (; c < a.length; c++) if ((d ? a[c][d] : a[c]) === b) return c; 1209 return -1; 1210 }
1211 v._period = 30; 1212 v.prototype = { 1213 observe: function (a, b) { 1214 for ( 1215 var c = { 1216 b: !!(b.attributes || b.attributeFilter || b.attributeOldValue), 1217 c: !!b.childList, 1218 g: !!b.subtree, 1219 a: !(!b.characterData && !b.characterDataOldValue), 1220 }, 1221 d = this.i, 1222 f = 0; 1223 f < d.length; 1224 f++ 1225 ) 1226 d[f].s === a && d.splice(f, 1); 1227 b.attributeFilter && 1228 (c.f = G(b.attributeFilter, function (a, b) { 1229 a[b] = !0; 1230 return a; 1231 })); 1232 d.push({ 1233 s: a, 1234 o: J(a, c), 1235 }); 1236 this.h || I(this); 1237 }, 1238 takeRecords: function () { 1239 for (var a = [], b = this.i, c = 0; c < b.length; c++) b[c].o(a); 1240 return a; 1241 }, 1242 disconnect: function () { 1243 this.i = []; 1244 clearTimeout(this.h); 1245 this.h = null; 1246 }, 1247 }; 1248 var B = document.createElement("i"); 1249 B.style.top = 0; 1250 var D = (B = "null" != B.attributes.style.value) ? L : M, 1251 H = 1; 1252 return v; 1253 })(void 0); 1254 } 1255 1256 var observer = new MutationObserver(function (mutations) { 1257 for (let i = 0; i < mutations.length; i++) { 1258 var addedNodes = mutations[i].addedNodes; 1259 for (let i = 0; i < addedNodes.length; i++) { 1260 var node = addedNodes[i]; 1261 //console.log('from observer: '+node.src); 1262 // For each added script tag 1263 if (node.nodeType === 1 && node.tagName === "SCRIPT") { 1264 var src = node.src || ""; 1265 var type = node.type; 1266 var data = node.dataset.cookietype || ""; 1267 real_sources_list.push(src); 1268 // If the src is inside your blacklist 1269 if (script_needsToBeBlacklisted(src, type, data)) { 1270 if (cookie_debugmode) { 1271 //console.log("Script BLOCKED 1", src, type, data); 1272 real_sources_list.push(src); 1273 } 1274 script_tmp_storage.push(src); //node.cloneNode()); 1275 node.type = "javascript/blocked"; 1276 // Assume that this code is executed inside the mutation observer callback: 1277 var beforeScriptExecuteListener = function (event) { 1278 // Prevent only marked scripts from executing 1279 if (node.getAttribute("type") === "javascript/blocked") event.preventDefault(); 1280 node.removeEventListener("beforescriptexecute", beforeScriptExecuteListener); 1281 }; 1282 node.addEventListener("beforescriptexecute", beforeScriptExecuteListener); 1283 1284 node.parentElement.removeChild(node); 1285 } else if (node.type == "javascript/blocked") { 1286 script_tmp_storage.push(src); //node.cloneNode()); 1287 } 1288 } 1289 } 1290 } 1291 }); 1292 1293 // Starts the monitoring 1294 observer.observe(document.documentElement, { 1295 childList: true, 1296 subtree: true, 1297 }); 1298 1299 var createElementBackup = document.createElement; 1300 document.createElement = function (args) { 1301 // If this is not a script tag, bypass 1302 if (args[0].toLowerCase() !== "script" && args.toLowerCase() !== "script") 1303 // Binding to document is essential 1304 return createElementBackup.bind(document)(args); 1305 1306 var scriptElt = createElementBackup.bind(document)(args); 1307 var originalSetAttribute = scriptElt.setAttribute.bind(scriptElt); 1308 try { 1309 // Define getters / setters to ensure that the script type is properly set 1310 1311 Object.defineProperties(scriptElt, { 1312 src: { 1313 get: function () { 1314 return scriptElt.getAttribute("src"); 1315 }, 1316 set: function (value) { 1317 if (typeof scriptElt.dataset != "undefined") 1318 if (typeof scriptElt.dataset.cookietype != "undefined") 1319 cdata = scriptElt.dataset.cookietype; 1320 else cdata = ""; 1321 else cdata = ""; 1322 if (script_needsToBeBlacklisted(value, scriptElt.type, cdata)) { 1323 if (cookie_debugmode) { 1324 // console.log("Script BLOCKED 2", value, scriptElt.type, cdata); 1325 real_sources_list.push(value); 1326 } 1327 script_tmp_storage.push(value); 1328 originalSetAttribute("type", "javascript/blocked"); 1329 } else { 1330 originalSetAttribute("src", value); 1331 } 1332 return true; 1333 }, 1334 }, 1335 type: { 1336 set: function (value) { 1337 if (typeof scriptElt.dataset != "undefined") 1338 if (typeof scriptElt.dataset.cookietype != "undefined") 1339 cdata = scriptElt.dataset.cookietype; 1340 else cdata = ""; 1341 else cdata = ""; 1342 if (cookie_debugmode && script_needsToBeBlacklisted(scriptElt.src, scriptElt.type, cdata)) { 1343 // console.log("Script BLOCKED 3", scriptElt.src, scriptElt.type, cdata); 1344 real_sources_list.push(scriptElt.src); 1345 } 1346 var typeValue = script_needsToBeBlacklisted(scriptElt.src, scriptElt.type, cdata) 1347 ? "javascript/blocked" 1348 : value; 1349 originalSetAttribute("type", typeValue); 1350 return true; 1351 }, 1352 }, 1353 }); 1354 1355 // Monkey patch the setAttribute function so that the setter is called
1355instead. 1356 // Otherwise, setAttribute('type', 'whatever') will bypass our custom descriptors! 1357 scriptElt.setAttribute = function (name, value) { 1358 if (name === "type" || name === "src") scriptElt[name] = value; 1359 else HTMLScriptElement.prototype.setAttribute.call(scriptElt, name, value); 1360 }; 1361 // Backup the original setAttribute function 1362 } catch (error) { 1363 console.warn( 1364 'third-party browser extension that monkey patches the "document.createElement" function.' 1365 ); 1366 } 1367 1368 return scriptElt; 1369 }; 1370 } 1371 // ######################## COOKIE BANNER ############################### 1372 1373 if (documentLanguage == "de") { 1374 var msgArray = cookieArray.msg_de; 1375 msgArray.aktiv = "Aktiv"; 1376 msgArray.name = "Name"; 1377 msgArray.anbieter = "Anbieter"; 1378 msgArray.zweck = "Zweck"; 1379 msgArray.ablauf = "Ablauf"; 1380 msgArray.typ = "Typ"; 1381 } else { 1382 var msgArray = cookieArray.msg_en; 1383 msgArray.aktiv = "Active"; 1384 msgArray.name = "Name"; 1385 msgArray.anbieter = "Host"; 1386 msgArray.zweck = "Usecase"; 1387 msgArray.ablauf = "Expire"; 1388 msgArray.typ = "Type"; 1389 } 1390 1391 if (window.attachEvent) { 1392 window.attachEvent("onload", checkBoxAnim); 1393 } else { 1394 if (window.onload) { 1395 var curronload2 = window.onload; 1396 var newonload2 = function (evt) { 1397 curronload2(evt); 1398 checkBoxAnim(evt); 1399 }; 1400 window.onload = newonload2; 1401 } else { 1402 window.onload = checkBoxAnim; 1403 } 1404 } 1405 1406 function checkBoxAnim() {} 1407 1408 var cini = false; 1409} 1410 1411var cookieBarSet = false; 1412var apisInjected = false; 1413 1414function showCookieBar() { 1415 if (cookieBarSet) return; 1416 showLazyCookieBarContainer(); 1417 1418 cookieBarSet = true; 1419 1420 window.removeEventListener("mousemove", showCookieBar); 1421 window.removeEventListener("keydown", showCookieBar); 1422 window.removeEventListener("scroll", showCookieBar); 1423 window.removeEventListener("click", showCookieBar); 1424 window.removeEventListener("touchstart", showCookieBar); 1425 window.removeEventListener("touchend", showCookieBar); 1426 window.removeEventListener("touchcanceled", showCookieBar); 1427 1428 injectApiScripts(); 1429} 1430 1431function showLazyCookieBarContainer() { 1432 1433 if (CookieInteraction) return; 1434 1435 console.log("cookiebar visible"); 1436 1437 if (document.getElementById("cookies") != null) return; 1438 var head = document.getElementsByTagName("head")[0]; 1439 var js = document.createElement("script"); 1440 1441 js.defer = true; 1442 js.type = "text/javascript"; 1443 js.src = "/files/javascript/schickhotels/co_block_plattform_lazy.js?v=" + window.crypto.randomUUID(); 1444 1445 head.appendChild(js); 1446} 1447 1448function registerUserInteractEvents() { 1449 window.addEventListener("mousemove", showCookieBar); 1450 window.addEventListener("keydown", showCookieBar); 1451 window.addEventListener("scroll", showCookieBar); 1452 window.addEventListener("click", showCookieBar); 1453 window.addEventListener("touchstart", showCookieBar); 1454 window.addEventListener("touchend", showCookieBar); 1455 window.addEventListener("touchcanceled", showCookieBar); 1456} 1457// api modification 1458function injectApiScripts() { 1459 if (apisInjected) return; 1460 1461 for (var i = apiList.length - 1; i >= 0; i--) { 1462 cookie_whitelist.push(apiList[i].name); 1463 script_whitelist_url.push(apiList[i].src); 1464 1465 var realAPIScriptSource = getRealSourceBySourcePart(apiList[i].src); 1466 console.log(realAPIScriptSource); 1467 if (typeof realAPIScriptSource != "object") { 1468 console.log("injected API script: " + realAPIScriptSource); 1469 1470 var script = document.createElement("script"); 1471 script.src = realAPIScriptSource; 1472 document.head.appendChild(script); 1473 } 1474 } 1475 1476 apisInjected = true; 1477} 1478 1479function isApiScript(src) { 1480 for (var i = 0; i < apiList.length; i++) { 1481 if (src.includes(apiList[i].src)) { 1482 return true; 1483 } 1484 } 1485 return false; 1486} 1487 1488function getRealSourceBySourcePart(sourcePart) { 1489 for (var i = 0; i < real_sources_list.length; i++) { 1490 if (real_sources_list[i].includes(sourcePart) || real_sources_list[i] == sourcePart) { 1491 return real_sources_list[i]; 1492 } 1493 } 1494 return null; 1495} 1496// -> end Api mod 1497 1498window.addEventListener( 1499 "DOMContentLoaded", 1500 function () { 1501 if (cookieArray != null) setTempCookie(); 1502 if (cookieArray != null) setTempScript(); 1503 registerUserInteractEvents(); 1504 }, 1505 false 1506);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.