PageSourceSearch

https://www.ep-e.com/wp-content/themes/epe/assets/js/cookieconsent/cookieconsent-config.js?ver=3.0.1

js ep-e.com collected 2026-10-08 19:35:51 UTC 4,988 bytes, 147 lines download raw bytes

1document.documentElement.classList.add("cc--custom", "cc--darkmode");
2
3// Get the script's current directory
4const script =
5  document.currentScript ||
6  document.querySelector('script[src*="cookieconsent-config.js"]');
7const scriptSrc = script.getAttribute("src");
8const baseUrl = scriptSrc.substring(0, scriptSrc.lastIndexOf("/") + 1);
9
10// Set paths for external files dynamically
11const translationsPath = {
12  de: `${baseUrl}de.json`,
13  en: `${baseUrl}en.json`,
14};
15const trackingIDPath = `${baseUrl}trackingID.json`;
16
17// Load the tracking ID from the JSON file
18fetch(trackingIDPath)
19  .then((response) => response.json())
20  .then((data) => {
21    const trackingID = data.trackingID;
22
23    const im = iframemanager();
24
25    CookieConsent.run({
26      cookie: {
27        name: "cc_cookie",
28      },
29      guiOptions: {
30        consentModal: {
31          layout: "cloud inline",
32          position: "bottom center",
33        },
34        preferencesModal: {
35          layout: "box",
36        },
37      },
38      onFirstAction: function (user_preferences, cookie) {
39        im.run({ services: user_preferences.acceptedServices });
40      },
41      onAccept: function (cookie) {
42        im.run({ services: cc.getUserPreferences().acceptedServices });
43      },
44      onChange: function (cookie, changed_preferences) {
45        im.run({ services: changed_preferences });
46      },
47      categories: {
48        necessary: {
49          enabled: true,
50          readOnly: true,
51        },
52        analytics: {
53          autoClear: {
54            cookies: [{ name: /^_ga/ }, { name: "_gid" }],
55          },
56          services: {
57            ga: {
58              label: "Google Analytics",
59              onAccept: () => {
60                var script = document.createElement("script");
61                script.src = `https://www.googletagmanager.com/gtag/js?id=${trackingID}`;
62                script.async = true;
63                script.onload = function () {
64                  window.dataLayer = window.dataLayer || [];
65                  function gtag() {
66                    dataLayer.push(arguments);
67                  }
68                  gtag("js", new Date());
69                  gtag("config", trackingID);
70                };
71                document.head.appendChild(script);
72              },
73              onReject: () => {
74                window[`ga-disable-${trackingID}`] = true; // Disables GA
75              },
76            },
77          },
78        },
79        iframes: {
80          autoClear: {
81            cookies: [{ name: "im_youtube" }],
82          },
83          label: "Embedded Content",
84          description: "Cookies for embedded content such as YouTube videos.",
85          services: {
86            youtube: {
87              label: "YouTube",
88              onAccept: () => im.acceptService("youtube"),
89              onReject: () => im.rejectService("youtube"),
90            },
91          },
92        },
93      },
94      onChange: ({ changedCategories, changedServices }) => {
95        if (changedCategories.includes("analytics")) {
96          if (CookieConsent.acceptedCategory("analytics")) {
97            // Possibly re-invoke analytics initialization if needed
98          } else {
99            // Disable analytics if previously enabled
100            window[`ga-disable-${trackingID}`] = true; // Ensure GA is disabled when analytics category is disabled
101          }
102        }
103      },
104      language: {
105        default: "en",
106        autoDetect: "document",
107        translations: translationsPath,
108      },
109    });
110
111    im.run({
112      onChange: ({ changedServices, eventSource }) => {
113        if (eventSource.type === "click") {
114          const servicesToAccept = [
115            ...CookieConsent.getUserPreferences().acceptedServices["youtube"],
116            ...changedServices,
117          ];
118
119          CookieConsent.acceptService(servicesToAccept, "youtube");
120        }
121      },
122      currLang: "en",
123      autoLang: true,
124      services: {
125        youtube: {
126          embedUrl: "https://www.youtube-nocookie.com/embed/{data-id}",
127          thumbnailUrl: "https://i3.ytimg.com/vi/{data-id}/hqdefault.jpg",
128          iframe: {
129            allow:
130              "accelerometer; encrypted-media; gyroscope; picture-in-picture; fullscreen;",
131          },
132          languages: {
133            en: {
134              notice:
135                'This content is hosted by a third party. By showing the external 
135content you accept the <a rel="noreferrer noopener" href="https://www.youtube.com/t/terms" target="_blank">terms and conditions</a> of youtube.com.',
136              loadAllBtn: "Accept and Load",
137            },
138            de: {
139              notice:
140                'Dieser Inhalt wird von einem Drittanbieter gehostet. Durch das Anzeigen der externen Inhalte akzeptieren Sie die <a rel="noreferrer noopener" href="https://www.youtube.com/t/terms" target="_blank">Nutzungsbedingungen</a> von youtube.com.',
141              loadAllBtn: "Akzeptieren und Laden",
142            },
143          },
144        },
145      },
146    });
147  });

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.