PageSourceSearch

https://www.steckenberg.de/modules/mod_eu_cookies/assets/js/eucookies.js?1.35.0

js steckenberg.de collected 2026-10-02 20:59:57 UTC 37,704 bytes, 942 lines download raw bytes

1/* 
2 * EU-Cookies - VERITAS DATA GmbH
3 * eucookies.js 1.35.0 ML
4 */
5
6var EUCookie = {
7
8    Name: "",
9    Lifetime: 12,
10    DefaultValue: false,
11    Debug: false,
12    Version: "",
13    CookiesAgreement: null,
14
15    Cookies: {
16        Essential: {
17            Type: 'essential',
18
19            Name: null,
20            Description: null,
21            Agreement: null
22        },
23        Analytical: {
24            Type: 'analytical',
25
26            Name: null,
27            Description: null,
28            Agreement: null,
29
30            GA: {
31                Property: null,
32                DisableString: null,
33                optOut: function () {
34                    /* GA.optOut() */
35                    if (EUCookie.Debug) {
36                        console.log(arguments.callee.toString());
37                        console.log(EUCookie.Cookies.Analytical.GA.DisableString + " = " + "true");
38                    }
39                    window[EUCookie.Cookies.Analytical.GA.DisableString] = true;
40                },
41                optIn: function () {
42                    /* GA.optIn() */
43                    if (EUCookie.Debug) {
44                        console.log(arguments.callee.toString());
45                        console.log(EUCookie.Cookies.Analytical.GA.DisableString + " = " + "false");
46                    }
47                    if (document.getElementById('ga-js-snippet-optin')) {
48                        document.getElementById('ga-js-snippet-optin').remove();
49                    }
50                    window[EUCookie.Cookies.Analytical.GA.DisableString] = false;
51                    if (!document.getElementById('ga-js-snippet-optin')) {
52                        head = document.getElementsByTagName('head')[0];
53                        node = document.getElementById('ga-js-snippet');
54
55                        if (node) {
56                            script = document.createElement('script');
57                            script.text = node.innerHTML;
58                            script.id = 'ga-js-snippet-optin';
59                            script.type = 'text/javascript';
60
61                            switch (node.dataset.jstype) {
62                                case 'googletag':
63                                case 'gtag':
64                                    node2 = document.getElementById('ga-js-script');
65                                    script2 = document.createElement('script');
66                                    script2.id = 'ga-js-script-optin';
67                                    script2.type = 'text/javascript';
68                                     script2.src = node2.src;
69                                    head.appendChild(script2);
70                                    break;
71                            }
72
73                            head.appendChild(script);
74                        }
75                    }
76                }
77            },
78            GTM: {
79                ContainerId: null,
80                optOut: function () {
81                    /* GTM.optOut() */
82                    if (EUCookie.Debug) {
83                        console.log(arguments.callee.toString());
84                    }
85                    if (document.getElementById('gtm-js-snippet-optin')) {
86                        document.getElementById('gtm-js-snippet-optin').remove();
87                    }
88                },
89                optIn: function () {
90                    /* GTM.optIn() */
91                    if (EUCookie.Debug) {
92                        console.log(arguments.callee.toString());
93                    }
94                    if (!document.getElementById('gtm-js-snippet-optin')) {
95                        head = document.getElementsByTagName('head')[0];
96                        node = document.getElementById('gtm-js-snippet');
97
98                        if (node) {
99                            script = document.createElement('script');
100                            script.text = node.innerHTML;
101                            script.id = 'gtm-js-snippet-optin';
102                            script.type = 'text/javascript';
103
104                            head.appendChild(script);
105                        }
106                    }
107                }
108            },
109            Matomo: {
110                SiteId: null,
111                Url: null,
112                optOut: function () {
113                    /* Matomo:optOut() */
114                    if (EUCookie.Debug) {
115                        console.log(arguments.callee.toString());
116                    }
117                    if (document.getElementById('matomo-js-snippet-optin')) {
118                        document.getElementById('matomo-js-snippet-optin').remove();
119                    }
120                },
121                optIn: function () {
122                    /* Matomo:optIn() */
123                    if (EUCookie.Debug) {
124                        console.log(arguments.callee.toString());
125                    }
126                    if (!document.getElementById('matomo-js-snippet-optin')) {
127                        head = document.getElementsByTagName('head')[0];
128                        node = document.getElementById('matomo-js-snippet');
129
130                        if (node) {
131                            script = document.createElement('script');
132                            script.text = node.innerHTML;
133                            script.id = 'matomo-js-snippet-optin';
134                            script.type = 'text/javascript';
135
136                            head.appendChild(script);
137                        }
138                    }
139                }
140            },
141            FB: {
142                ID: null,
143                optOut: function () {
144                    /* FB:optOut() */
145                    if (EUCookie.Debug) {
146                        console.log(arguments.callee.toString());
147                    }
148                    if (document.getElementById('fb-js-snippet-optin')) {
149                        document.getElementById('fb-js-snippet-optin').remove();
150                    }
151                },
152                optIn: function () {
153                    /* FB:optIn() */
154                    if (EUCookie.Debug) {
155                        console.log(arguments.callee.toString());
156                    }
157                    if (!document.getElementById('fb-js-snippet-optin')) {
158                        head = document.getElementsByTagName('head')[0];
159                        node = document.getElementById('fb-js-snippet');
160
161                        if (node) {
162                            script = document.createElement('script');
163                            script.text = node.innerHTML;
164                            script.id = 'fb-js-snippet-optin';
165                            script.type = 'text/javascript';
166
167                            head.appendChild(script);
168                        }
169                    }
170                }
171            }
172        },
173        Maps: {
174            Name: null,
175            Description: null,
176            Type: "maps",
177            Icon: 'location',
178            Agreement: null,
179
180            optOut: function () {
181                /* Maps.optOut() */
182                if (EUCookie.Debug) {
183                    console.log(arguments.callee.toString());
184                }
185                jQuery('.maps-allowed').each(function () {
186                    jQuery(this).attr('src', '');
187                    jQuery(this).css('display', 'none');
188                    jQuery(this).addClass('maps-blocked');
189                    jQuery(this).removeClass('maps-allowed');
190                    jQuery('#' + jQuery(this).attr('id') + '-overlay').show('slow');
191                });
192            },
193            optIn: function () {
194                /* Maps.optIn() */
195                if (EUCookie.Debug) {
196                    console.log(arguments.callee.toString());
197                }
198                jQuery('.maps-blocked').each(function () {
199                    jQuery(this).attr('src', jQuery(this).attr('data-src'));
200                    jQuery(this).css('display', 'block');
201                    jQuery(this).addClass('maps-allowed');
202                    jQuery(this).removeClass('maps-blocked');
203                    jQuery('#' + jQuery(this).attr('id') + '-overlay').hide('slow');
204                });
205            }
206        },
207        Videos: {
208            Name: null,
209            Description: null,
210            Type: 'videos',
211            Icon: 'video',
212            Agreement: null,
213
214            optOut: function () {
215                /* Videos.optOut() */
216                if (EUCookie.Debug) {
217                    console.log(arguments.callee.toString());
218                }
219                jQuery('.' + EUCookie.Cookies.Videos.Type + '-allowed').each(function () {
220                    jQuery(this).attr('src', '');
221                    jQuery(this).css('display', 'none');
222                    jQuery(this).addClass(EUCookie.Cookies.Videos.Type + '-blocked');
223                    jQuery(this).removeClass(EUCookie.Cookies.Videos.Type + '-allowed');
224                    jQuery('#' + jQuery(this).attr('id') + '-overlay').show('slow');
225                });
226            },
227            optIn: function () {
228                /* Videos.optIn() */
229                if (EUCookie.Debug) {
230                    console.log(arguments.callee.toString());
231                }
232                jQuery('.' + EUCookie.Cookies.Videos.Type + '-blocked').each(function () {
233                    jQuery(this).attr('src', jQuery(this).attr('data-src'));
234                    jQuery(this).css('display', 'block');
235                    jQuery(this).addClass(EUCookie.Cookies.Videos.Type + '-allowed');
236                    jQuery(this).removeClass(EUCookie.Cookies.Videos.Type + '-blocked');
237                    jQuery('#' + jQuery(this).attr('id') + '-overlay').hide('slow');
238                });
239            }
240        },
241        Captcha: {
242            Name: null,
243            Description: null,
244            Icon: 'warning-2',
245            Type: 'captcha',
246            width: 600,
247            height: 'auto',
248            zindex: 400,
249            Agreement: null,
250
251            optOut: function () {
252                /* Captcha.optOut() */
253                if (EUCookie.Debug) {
254                    console.log(arguments.callee.toString());
255                }
256                jQuery('.captcha-allowed').each(function () {
257                    jQuery('#' + jQuery(this).attr('id') + '-overlay').show('slow');
258
259                    jQuery(this).css('display', 'none');
260                    jQuery(this).addClass('captcha-blocked');
261                    jQuery(this).removeClass('g-recaptcha captcha-allowed');
262
263                    jQuery(this).next('iframe').remove();
264                });
265            },
266            optIn: function () {
267                /* Captcha.optIn() */
268                if (EUCookie.Debug) {
269                    console.log(arguments.callee.toString());
270                }
271                jQuery('.captcha-blocked').each(function () {
272                    jQuery('#' + jQuery(this).attr('id') + '-overlay').hide('slow');
273
274                    jQuery(this).css('display', 'block');
275                    jQuery(this).removeClass();
276                    jQuery(this).addClass('g-recaptcha captcha-allowed');
277                    jQuery(this).attr('id');
278
279                    grecaptcha.render(jQuery(this).attr('id'), {'sitekey': jQuery(this).attr('data-sitekey')});
280                });
281
282            }
283        },
284
285        BlockedContent: {
286            Caption: "",
287            Message: ""
288        },
289    },
290
291    Consent: {"time": 0, "datetime":'', "list": []},
292
293    addConsent: function (id, value) {
294        /* addConsent() */
295        if (EUCookie.Debug) {
296            console.log(arguments.callee.toString());
297        }
298        EUCookie.Consent.list[id] = value;
299        if (EUCookie.Debug) {
300            console.log(id + " :: " + EUCookie.Consent.list[id]);
301        }
302    },
303    changeConsent: function (cid, cval) {
304        /* changeConsent() */
305        if (EUCookie.Debug) {
306            console.log(arguments.callee.toString());
307        }
308        if (typeof EUCookie.Consent.list[cid] !== "undefined") {
309            EUCookie.Consent.list[cid].agree = cval;
310
311            if (EUCookie.Debug) {
312                console.log(EUCookie.Consent.list[cid].name + " :: agreement " + Boolean(cval));
313                console.log(cid + " :: " + EUCookie.Consent.list[cid].agree);
314            }
315        }
316    },
317    isSet: function () {
318        /* isSet() */
319        if (EUCookie.Debug) {
320            console.log(arguments.callee.toString());
321        }
322        if (document.cookie.indexOf(EUCookie.Name + "=") >= 0) {
323            return true;
324        } else {
325            return false;
326        }
327    },
328    set: function (t) {
329        /* set() */
330        if (EUCookie.Debug) {
331            console.log(arguments.callee.toString());
332        }
333        var d = new Date();
334        EUCookie.Consent.time = d.getTime();
335        EUCookie.Consent.datetime = d.toGMTString();
336
337        if (EUCookie.Debug) {
338            console.log("Cookie :: " + JSON.stringify(EUCookie.Consent));
339        }
340
341        return EUCookie._set(EUCookie.Name, JSON.stringify(EUCookie.Consent), t);
342    },
343    loadCookie: function () {
344        /* loadCookie() */
345        if (EUCookie.Debug) {
346            console.log(arguments.callee.toString());
347        }
348        json_parced_cookie_agreement = JSON.parse(EUCookie.get());
349        if (json_parced_cookie_agreement) {
350            EUCookie.Consent = json_parced_cookie_agreement;
351        }
352        if (EUCookie.Debug) {
353            console.log(EUCookie.Consent.list);
354        }
355    },
356    get: function () {
357        /* get() */
358        if (EUCookie.Debug) {
359            console.log(arguments.callee.toString());
360        }
361        var name = EUCookie.Name + "=";
362        var decodedCookie = decodeURIComponent(document.cookie);
363        var ca = decodedCookie.split(';');
364        for (var i = 0; i < ca.length; i++) {
365            var c = ca[i];
366            while (c.charAt(0) === ' ') {
367                c = c.substring(1);
368            }
369            if (c.indexOf(name) === 0) {
370                return c.substring(name.length, c.length);
371            }
372        }
373        return false;
374    },
375    setDenyCookie: function () {
376        /* setDenyCookie() */
377        if (EUCookie.Debug) {
378            console.log(arguments.callee.toString());
379        }
380        var d = new Date();
381        EUCookie.Consent.time = d.getTime();
382        EUCookie.Consent.datetime = d.toGMTString();
383        
384        if (typeof EUCookie.Consent.list['analytical'] === "object") {
385            if (EUCookie.Debug) {
386                console.log("Agreement :: " + EUCookie.Consent.list['analytical'].agree);
387            }
388            EUCookie.Consent.list['analytical'].agree = 0;
389        }
390
391        EUCookie._set(EUCookie.Name, JSON.stringify(EUCookie.Consent));
392    },
393    _set: function (n, v, r) {
394        /* _set() */
395        if (EUCookie.Debug) {
396            console.log(arguments.callee.toString());
397        }
398        p = "; path=/";
399        t = "";
400        if (r) {
401            d = new Date;
402            d.setTime(d.getTime() + (r * 30 * 24 * 60 * 60 * 1e3)); // month * days * hours * minutes * seconds
403            t = "; expires=" + d.toGMTString();
404        }
405        document.cookie = n + "=" + v + " " + t + p;
406    },
407    parseCookies: function (str) {
408        /* parseCookies() */
409        if (EUCookie.Debug) {
410            console.log(arguments.callee.toString());
411        }
412        var obj = {};
413        var pairs = str.split(/[;,] */);
414
415        pairs.forEach(function (pair) {
416            var eq_idx = pair.indexOf('=');
417            if (eq_idx < 0) {
418                return;
419            }
420            var key = pair.substr(0, eq_idx).trim();
421            var val = pair.substr(++eq_idx, pair.length).trim();
422            if ('"' === val[0]) {
423                val = val.slice(1, -1);
424            }
425            if (undefined === obj[key]) {
426                try {
427                    obj[key] = decodeURIComponent(val);
428                } catch (e) {
429                    obj[key] = val;
430                }
431            }
432        });
433        return obj;
434    },
435    toggleAgreement: function (agree) {
436        /* toggleAgreement() */
437        if (EUCookie.Debug) {
438            console.log(arguments.callee.toString());
439        }
440        toggleAnalyticalCookies(agree);
441        toggleMapsCookies(agree);
442        toggleVideosCookies(agree);
443        toggleCaptchaCookies(agree);
444    },
445    toggleAnalyticalCookies: function (agree) {
446        /* toggleAnalyticalCookies() */
447        if (EUCookie.Debug) {
448            console.log(arguments.callee.toString());
449            console.log(agree);
450        }
451        if (!!EUCookie.Cookies.Analytical.GA.Property) {
452            agree ? EUCookie.Cookies.Analytical.GA.optIn() : EUCookie.Cookies.Analytical.GA.optOut();
453        }
454        if (!!EUCookie.Cookies.Analytical.GTM.ContainerId) {
455            agree ? EUCookie.Cookies.Analytical.GTM.optIn() : EUCookie.Cookies.Analytical.GTM.optOut();
456        }
457        if (!!EUCookie.Cookies.Analytical.Matomo.SiteId) {
458            agree ? EUCookie.Cookies.Analytical.Matomo.optIn() : EUCookie.Cookies.Analytical.Matomo.optOut();
459        }
460        if (!!EUCookie.Cookies.Analytical.FB.ID) {
461            agree ? EUCookie.Cookies.Analytical.FB.optIn() : EUCookie.Cookies.Analytical.FB.optOut();
462        }
463    },
464    toggleMapsCookies: function (agree) {
465        /* toggleMapsCookies() */
466        if (EUCookie.Debug) {
467            console.log(arguments.callee.toString());
468            console.log(agree);
469        }
470        agree ? EUCookie.Cookies.Maps.optIn() : EUCookie.Cookies.Maps.optOut();
471    },
472    toggleVideosCookies: function (agree) {
473        /* toggleVideosCookies() */
474        if (EUCookie.Debug) {
475            console.log(arguments.callee.toString());
476            console.log(agree);
477        }
478        agree ? EUCookie.Cookies.Videos.optIn() : EUCookie.Cookies.Videos.optOut();
479    },
480    toggleCaptchaCookies: function (agree) {
481        /* toggleCaptchaCookies() */
482        if (EUCookie.Debug) {
483            console.log(arguments.callee.toString());
484            console.log(agree);
485        }
486        agree ? EUCookie.Cookies.Captcha.optIn() : EUCookie.Cookies.Captcha.optOut();
487    },
488
489    save: function () {
490        /* save() */
491        if (EUCookie.Debug) {
492            console.log(arguments.callee.toString());
493        }
494
495        EUCookie.Consent.list.forEach((item, index) => {
496            if (item !== "undefined") {
497                switch (item.name) {
498                    case 'analytical':
499                        EUCookie.toggleAnalyticalCookies(item.agree);
500                        break;
501                    case 'maps':
502                        EUCookie.toggleMapsCookies(item.agree);
503                        break;
504                    case 'videos':
505                        EUCookie.toggleVideosCookies(item.agree);
506                        break;
507                    case 'captcha':
508                        EUCookie.toggleCaptchaCookies(item.agree);
509                        break;
510                }
511            }
512        });
513        EUCookie.set(EUCookie.Lifetime);
514        EUCookie.close();
515    },
516    accept: function (accept_all_cookie) {
517        /* accept() */
518        if (EUCookie.Debug) {
519            console.log(arguments.callee.toString());
520        }
521
522        EUCookie.Consent.list.forEach((item, index) => {
523
524            switch (item.name) {
525                case 'essential':
526                    item.agree = 1;
527                    break;
528                case 'analytical':
529                    item.agree = accept_all_cookie;
530                    EUCookie.checkbox(index, Boolean(item.agree));
531                    EUCookie.toggleAnalyticalCookies(item.agree);
532                    break;
533                case 'maps':
534                    item.agree = accept_all_cookie;
535                    EUCookie.checkbox(index, Boolean(item.agree));
536                    EUCookie.toggleMapsCookies(item.agree);
537                    break;
538                case 'videos':
539                    item.agree = accept_all_cookie;
540                    EUCookie.checkbox(index, Boolean(item.agree));
541                    EUCookie.toggleVideosCookies(item.agree);
542                    break;
543                case 'captcha':
544                    item.agree = accept_all_cookie;
545                    EUCookie.checkbox(index, Boolean(item.agree));
546                    EUCookie.toggleCaptchaCookies(item.agree);
547                    break;
548            }
549
550        });
551
552        EUCookie.set(EUCookie.Lifetime);
553        EUCookie.close();
554    },
555    acceptBlockedContent: function (e) {
556        /* acceptBlockedContent() */
557        if (EUCookie.Debug) {
558            console.log(arguments.callee.toString());
559        }
560
561        var parts = jQuery(e).attr('id').split(/-/);
562        var classList = jQuery('#' + parts[2] + '-' + parts[3]).attr("class").split(/\s+/);
563        jQuery.each(classList, function (index, item) {
564            if (item === 'videos-blocked') {
565                EUCookie.Cookies.Videos.optIn();
566
567            } else if (item === 'maps-blocked') {
568                EUCookie.Cookies.Maps.optIn();
569
570            } else if (item === 'captcha-blocked') {
571                EUCookie.Cookies.Captcha.optIn();
572            }
573        });
574    },
575    deny: function () {
576        /* deny() */
577        if (EUCookie.Debug) {
578            console.log(arguments.callee.toString());
579        }
580        EUCookie.accept(0);
581        EUCookie.setDenyCookie();
582        EUCookie.close();
583    },
584    settings: function () {
585        /* settings() */
586        if (EUCookie.Debug) {
587            console.log(arguments.callee.toString());
588        }
589        jQuery('#mod-eu-cookies').show();
590        jQuery('#mod-eu-cookies').addClass('extended');
591        jQuery('#eu-cookies-details').fadeToggle('slow', 'linear');
592        jQuery('#eu-cookies-box').hide(0);
593        jQuery('#cookie-more-information').css('position', 'static');
594        jQuery('#back-link').show();
595    },
596    back: function (e) {
597        /* back() */
598        if (EUCookie.Debug) {
599            console.log(arguments.callee.toString());
600        }
601        e.preventDefault();
602        e.stopPropagation();
603        jQuery("#mod-eu-cookies").removeClass("extended");
604        jQuery("#eu-cookies-details").hide(0);
605
606        jQuery('#back-link').hide();
607        jQuery("#eu-cookies-box").fadeToggle("slow", "linear");
608        jQuery("#cookie-more-information").css("position", "absolute");
609    },
610    close: function () {
611        /* close() */
612        if (EUCookie.Debug) {
613            console.log(arguments.callee.toString());
614        }
615        jQuery('#mod-eu-cookies').hide();
616        jQuery('#mod-eu-cookies-overlay').hide();
617        jQuery('#mod-eu-cookies-icon').show();
618    },
619    show: function () {
620        /* show() */
621        if (EUCookie.Debug) {
622            console.log(arguments.callee.toString());
623        }
624        jQuery('#mod-eu-cookies').show();
625        jQuery('#mod-eu-cookies-overlay').show();
626        jQuery('#mod-eu-cookies-icon').hide();
627    },
628    showSettings: function () {
629        /* showSettings() */
630        if (EUCookie.Debug) {
631            console.log(arguments.callee.toString());
632        }
633        EUCookie.Consent.list.forEach(function (item, index) {
634            EUCookie.checkbox(item.name, item.agree);
635        });
636        jQuery('#mod-eu-cookies').removeClass('position-bottom');
637        jQuery('#mod-eu-cookies').removeClass('position-top');
638        jQuery('#mod-eu-cookies').addClass('position-center');
639        jQuery('#mod-eu-cookies').addClass('extended');
640        jQuery('#mod-eu-cookies').show();
641        jQuery('#eu-cookies-details').show();
642        jQuery('#close-link-hidden').show();
643
644        jQuery('#eu-cookies-box').hide();
645        jQuery('#back-link').hide();
646
647        jQuery('#cookie-more-information').css('position', 'static');
648    },
649    checkbox: function (index, status) {
650        /* checkbox() */
651        if (EUCookie.Debug) {
652            console.log(arguments.callee.toString());
653            console.log("Index: " + index + " " + "Status: " + status);
654        }
655        if (status) {
656            if (typeof jQuery('#mod-eu-cookies input[name="cookie-type-' + index + '"]').bootstrapToggle !== "undefined") {
657                jQuery('#mod-eu-cookies input[name="cookie-type-' + index + '"]').bootstrapToggle('on');
658            } else {
659                jQuery('#mod-eu-cookies input[name="cookie-checkbox-' + index + '"]').prop('checked', true).change();
660            }
661        } else {
662            if (typeof jQuery('#mod-eu-cookies input[name="cookie-type-' + index + '"]').bootstrapToggle !== "undefined") {
663                jQuery('#mod-eu-cookies input[name="cookie-type-' + index + '"]').bootstrapToggle('off');
664            } else {
665                jQuery('#mod-eu-cookies input[name="cookie-checkbox-' + index + '"]').prop('checked', false).change();
666            }
667        }
668    },
669    render: function (page) {
670        /* render() */
671        if (EUCookie.Consent.time === 0) {
672            switch (page) {
673                case 1:
674                    EUCookie.show();
675                    break;
676                case 2:
677                    EUCookie.settings();
678                    break;
679            }
680        } else {
681            EUCookie.close();
682        }
683    }
684};
685
686/*! ========================================================================
687 * Bootstrap Toggle: bootstrap-toggle.js v2.2.0
688 * http://www.bootstraptoggle.com
689 * ========================================================================
690 * Copyright 2014 Min Hur, The New York Times Company
691 * Licensed under MIT
692 * ======================================================================== */
693+function (a) {
694    "use strict";
695    function b(b) {
696        return this.each(function () {
697            var d = a(this), e = d.data("bs.toggle"), f = "object" == typeof b && b;
698            e || d.data("bs.toggle", e = new c(this, f)), "string" == typeof b && e[b] && e[b]()
699        })
700    }
701    var c = function (b, c) {
702        this.$element = a(b), this.options = a.extend({}, this.defaults(), c), this.render()
703    };
704    c.VERSION = "2.2.0", c.DEFAULTS = {on: "On", off: "Off", onstyle: "primary", offstyle: "default", size: "normal", style: "", width: null, height: null}, c.prototype.defaults = function () {
705        return{on: this.$element.attr("data-on") || c.DEFAULTS.on, off: this.$element.attr("data-off") || c.DEFAULTS.off, onstyle: this.$element.attr("data-onstyle") || c.DEFAULTS.onstyle, offstyle: this.$element.attr("data-offstyle") || c.DEFAULTS.offstyle, size: this.$element.attr("data-size") || c.DEFAULTS.size, style: this.$element.attr("data-style") || c.DEFAULTS.style, width: this.$element.attr("data-width") || c.DEFAULTS.width, height: this.$element.attr("data-height") || c.DEFAULTS.height}
706    }, c.prototype.render = function () {
707        this._onstyle = "btn-" + this.options.onstyle, this._offstyle = "btn-" + this.options.offstyle;
708        var b = "large" === this.options.size ? "btn-lg" : "small" === this.options.size ? "btn-sm" : "mini" === this.options.size ? "btn-xs" : "", c = a('<label class="btn">').html(this.options.on).addClass(this._onstyle + " " + b), d = a('<label class="btn">').html(this.options.off).addClass(this._offstyle + " " + b + " active"), e = a('<span class="toggle-handle btn btn-default">').addClass(b), f = a('<div class="toggle-group">').append(c, d, e), g = a('<div class="toggle btn" data-toggle="toggle">').addClass(this.$element.prop("checked") ? this._onstyle : this._offstyle + " off").addClass(b).addClass(this.options.style);
709        this.$element.wrap(g), a.extend(this, {$toggle: this.$element.parent(), $toggleOn: c, $toggleOff: d, $toggleGroup: f}), this.$toggle.append(f);
710        var h = this.options.width || Math.max(c.outerWidth(), d.outerWidth()) + e.outerWidth() / 2, i = this.options.height || Math.max(c.outerHeight(), d.outerHeight());
711        c.addClass("toggle-on"), d.addClass("toggle-off"), this.$toggle.css({width: h, height: i}), this.options.height && (c.css("line-height", c.height() + "px"), d.css("line-height", d.height() + "px")), this.update(!0), this.trigger(!0)
712    }, c.prototype.toggle = function () {
713        this.$element.prop("checked") ? this.off() : this.on()
714    }, c.prototype.on = function (a) {
715        return this.$element.prop("disabled") ? !1 : (this.$toggle.removeClass(this._offstyle + " off").addClass(this._onstyle), this.$element.prop("checked", !0), void(a || this.trigger()))
716    }, c.prototype.off = function (a) {
717        return this.$element.prop("disabled") ? !1 : (this.$toggle.removeClass(this._onstyle).addClass(this._offstyle + " off"), this.$element.prop("checked", !1), void(a || this.trigger()))
718    }, c.prototype.enable = function () {
719        this.$toggle.removeAttr("disabled"), this.$element.prop("disabled", !1)
720    }, c.prototype.disable = function () {
721        this.$toggle.attr("disabled", "disabled"), this.$element.prop("disabled", !0)
722    }, c.prototype.update = function (a) {
723        this.$element.prop("disabled") ? this.disable() : this.enable(), this.$element.prop("checked") ? this.on(a) : this.off(a)
724    }, c.prototype.trigger = function (b) {
725        this.$element.off("change.bs.toggle"), b || this.$element.change(), this.$element.on("change.bs.toggle", a.proxy(function () {
726            this.update()
727        }, this))
728    }, c.prototype.destroy = function () {
729        this.$element.off("change.bs.toggle"), this.$toggleGroup.remove(), this.$element.removeData("bs.toggle"), this.$element.unwrap()
730    };
731    var d = a.fn.bootstrapToggle;
732    a.fn.bootstrapToggle = b, a.fn.bootstrapToggle.Constructor = c, a.fn.toggle.noConflict = function () {
733        return a.fn.bootstrapToggle = d, this
734    }, a(function () {
735        a("input[type=checkbox][data-toggle^=toggle]").bootstrapToggle()
736    }), a(document).on("click.bs.toggle", "div[data-toggle^=toggle]", function (b) {
737        var c = a(this).find("input[type=checkbox]");
738        c.bootstrapToggle("toggle"), b.preventDefault()
739    })
740}(jQuery);
741
742jQuery(document).ready(function () {
743    "use strict";
744
745    var ident = Math.floor(Math.random() + 1000);	// generate unique element id
746
747    jQuery('.gdpr-content-allowed').each(function () {
748        var overlayId = 'content-' + (ident) + '-overlay';
749        var contentId = 'content-' + (ident++);
750        var overlay, caption, message, type, icon;
751
752        var width = jQuery(this).width();
753        var height = jQuery(this).height();
754
755        jQuery(this).attr('id', contentId);
756
757        var classList = jQuery(this).attr("class").split(/\s+/);
758        jQuery.each(classList, function (index, item) {
759
760            if (item === EUCookie.Cookies.Videos.Type + '-allowed') {
761                caption = EUCookie.Cookies.Videos.Name;
762                message = EUCookie.Cookies.Videos.Description;
763                type = EUCookie.Cookies.Videos.Type;
764                icon = EUCookie.Cookies.Videos.Icon;
765
766            } else if (item === EUCookie.Cookies.Maps.Type + '-allowed') {
767                caption = EUCookie.Cookies.Maps.Name;
768                message = EUCookie.Cookies.Maps.Description;
769                type = EUCookie.Cookies.Maps.Type;
770                icon = EUCookie.Cookies.Maps.Icon;
771
772            } else if (item === EUCookie.Cookies.Captcha.Type + '-allowed') {
773                caption = EUCookie.Cookies.Captcha.Name;
774                message = EUCookie.Cookies.Captcha.Description;
775                type = EUCookie.Cookies.Captcha.Type;
776                icon = EUCookie.Cookies.Captcha.Icon;
777                width = EUCookie.Cookies.Captcha.width;
778                height = EUCookie.Cookies.Captcha.height;
779            }
780        });
781
782        // Prepend an overlay div
783        if (caption === null) {
784            caption = EUCookie.Cookies.BlockedContent.Caption;
785            message = EUCookie.Cookies.BlockedContent.Message;
786        }
787        overlay = jQuery('<div id="' + overlayId + '">\n\
788                    <div class="overlay-message">\n\
789                        <h3 class="overlay-caption">' + caption + '</h3>\n\
790                        <p class="overlay-text">' + message + '</p>\n\
791                        <h2 class="overlay-icon"><span class="icon-' + icon + '"> </span></h2>\n\
792                        <div class="overlay-button">\n\
793                            <a href="javascript:void(0)" class="content-accept btn-module-class" id="button-accept-' + overlayId + '">\n\
794                                <button>' + EUCookie.Cookies.BlockedContent.Accept + '</button>\n\
795                            </a>\n\
796                        </div>\n\
797                    </div>');
798
799        overlay
800                .css({
801                    'top': '0px',
802                    'left': '0px',
803                    'width': width,
804                    'height': height,
805                    'z-index': 400,
806                    'display': 'none'
807                })
808                .addClass('clickmask ' + type + '-overlay')
809                ;
810
811        // append the overlay before the contnet element
812        jQuery(this).parent('div').css('position', 'relative');
813        jQuery(this).before(overlay);
814    });
815
816    // Find all blocked content without consent
817    jQuery('.gdpr-content-blocked-no-consent').each(function () {
818
819        var overlayId = 'content-' + (ident) + '-overlay';
820        var contentId = 'content-' + (ident++);
821        var overlay, caption, message, type, icon;
822
823        var width = jQuery(this).width();
824
825        jQuery(this).attr('id', contentId);
826        jQuery(this).css('display', 'none');
827
828        var classList = jQuery(this).attr("class").split(/\s+/);
829        jQuery.each(classList, function (index, item) {
830
831            if (item === EUCookie.Cookies.Videos.Type + '-blocked') {
832                caption = EUCookie.Cookies.Videos.Name;
833                message = EUCookie.Cookies.Videos.Description;
834                type = EUCookie.Cookies.Videos.Type;
835                icon = EUCookie.Cookies.Videos.Icon;
836
837            } else if (item === EUCookie.Cookies.Maps.Type + '-blocked') {
838                caption = EUCookie.Cookies.Maps.Name;
839                message = EUCookie.Cookies.Maps.Description;
840                type = EUCookie.Cookies.Maps.Type;
841                icon = EUCookie.Cookies.Maps.Icon;
842
843            } else if (item === EUCookie.Cookies.Captcha.Type + '-blocked') {
844                caption = EUCookie.Cookies.Captcha.Name;
845                message = EUCookie.Cookies.Captcha.Description;
846                type = EUCookie.Cookies.Captcha.Type;
847                icon = EUCookie.Cookies.Captcha.Icon;
848                width = EUCookie.Cookies.Captcha.width;
849            }
850        });
851
852        // Prepend an overlay div
853        if (caption === null) {
854            caption = EUCookie.Cookies.BlockedContent.Caption;
855            message = EUCookie.Cookies.BlockedContent.Message;
856        }
857        overlay = jQuery(
858                '<div id="' + overlayId + '">' +
859                '<div class="overlay-message"><h3 class="overlay-caption">' + caption + '</h3><p class="overlay-text">' + message + '</p>' +
860                '<div class="overlay-icon"><span class="icon-' + icon + '"></span></div>' +
861                '<div class="overlay-button"><a href="javascript:void(0)" class="content-accept btn-module-class" id="button-accept-' + overlayId + '"><button>' + EUCookie.Cookies.BlockedContent.Accept + '</button></a></div>' +
862                '</div>');
863
864        overlay
865                .css({
866                    'top': '0px',
867                    'left': '0px',
868                    'width': width,
869                    'z-index': 400
870                })
871                .addClass('clickmask ' + type + '-overlay')
872                ;
873
874        // append the overlay before the contnet element
875        jQuery(this).parent('div').css('position', 'relative');
876        jQuery(this).before(overlay);
877
878    });
879
880    var touchEvent = 'ontouchstart' in window ? 'touchstart' : 'click';
881
882    jQuery('#eu-cookies-deny').on(touchEvent,
883            function (e) {
884                e.preventDefault();
885                EUCookie.deny();
886                e.stopPropagation();
887            }
888    );
889    jQuery('#eu-cookies-accept').on(touchEvent,
890            function (e) {
891                e.preventDefault();
892                EUCookie.accept(0);
893                e.stopPropagation();
894            }
895    );
896    jQuery('#eu-cookies-accept-all').on(touchEvent,
897            function (e) {
898                e.preventDefault();
899                EUCookie.accept(1);
900                e.stopPropagation();
901            }
902    );
903    jQuery('#eu-cookies-settings').on(touchEvent,
904            function (e) {
905                e.preventDefault();
906                EUCookie.settings();
907                e.stopPropagation();
908            }
909    );
910    jQuery('#eu-cookies-save').on(touchEvent,
911            function (e) {
912                e.preventDefault();
913                EUCookie.save();
914                e.stopPropagation();
915            }
916    );
917    jQuery('#back-link').on(touchEvent,
918            function (e) {
919                EUCookie.back(e);
920                e.stopPropagation();
921            }
922    );
923    jQuery('#close-link-hidden').on(touchEvent,
924            function (e) {
925                EUCookie.close();
926                e.stopPropagation();
927            }
928    );
929    jQuery('.eucookies-show-settings').on(touchEvent,
930            function (e) {
931                EUCookie.showSettings();
932                e.stopPropagation();
933            }
934    );
935    jQuery('.content-accept').on(touchEvent,
936            function (e) {
937                e.preventDefault();
938                EUCookie.acceptBlockedContent(this);
939                e.stopPropagation();
940            }
941    );
942});

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.