PageSourceSearch

https://www.hotel-ruchti.de/typo3conf/ext/boos_internetmedien_temp…/JavaScript/2Klick/2click.js?1616571204

js hotel-ruchti.de collected 2026-10-08 05:11:31 UTC 7,819 bytes, 217 lines download raw bytes

1/*!
2 * TwoClickPrivacy v0.1
3 * Licensed MIT © 2021 Florian Boos
4 *
5 * Based on 2Click-Iframe-Privacy v0.1.0 by Michael Lorer - https://www.01-scripts.de/
6 */
7
8 var TwoClickPrivacy = new function() {
9
10	// Cookie merken aktivieren/deaktivieren
11    var config = {
12        noCookies: true
13    };
14
15    this.types = new Array(
16        {
17            type: 'bauernhofurlaubkalender',
18            class: 'privacy-bauernhofurlaub',
19            description: 'Zum Aktivieren des Belegungskalenders bitte auf den Link klicken. Durch das Aktivieren von eingebetteten Belegungskalendern werden Daten an die Boos Onlinemarketing GmbH & Co. KG, Forggenseestraße 1, 87669 Rieden a. F. übermittelt und es werden Cookies gesetzt. Es können auch Drittanbietercookies gesetzt werden. Weitere Informationen können unserer <a href="/datenschutzerklaerung">Datenschutzerklärung</a> entnommen werden.<br />'
20        },
21        {
22            type: 'video',
23            class: 'privacy-video',
24            description: 'Zum Aktivieren des Videos bitte auf den Link klicken. Durch das Aktivieren von eingebetteten Videos werden Daten an den jeweiligen Anbieter übermittelt und es werden Cookies gesetzt. Weitere Informationen können unserer <a href="/datenschutz.html">Datenschutzerklärung</a> entnommen werden.<br />'
25        },
26        {
27            type: 'map',
28            class: 'privacy-map',
29            description: 'Zum Aktivieren der eingebetteten Karte bitte auf den Link klicken. Durch das Aktivieren werden Daten an Google Ireland Limited (“Google”), Gordon House, Barrow Street, Dublin 4, Irland übermittelt und es werden Cookies gesetzt. Weitere Informationen können unserer <a href="/datenschutz.html">Datenschutzerklärung</a> entnommen werden.<br />'
30        },
31        {
32            type: 'scriptholidaycheck',
33            class: 'privacy-holidaycheck',
34            description: 'Zum Aktivieren des Holidaycheck Widget bitte auf den Link klicken. Durch das Aktivieren werden Daten an die HolidayCheck AG, Bahnweg 8, CH-8598 Bottighofen übermittelt und es können Cookies gesetzt werden. Weitere Informationen können unserer <a href="/datenschutz.html">Datenschutzerklärung</a> entnommen werden.<br />'
35        },
36        {
37            type: 'scripteberl',
38            class: 'privacy-eberl',
39            description: 'Zum Aktivieren des eingebetteten Kalenders bitte auf den Link klicken. Durch das Aktivieren werden Daten an die EBERL ONLINE GmbH übermittelt. Weitere Informationen können unserer <a href="/datenschutz">Datenschutzerklärung</a> entnommen werden.<br />'
40        },
41        {
42            type: 'script',
43            class: 'privacy-script',
44            description: 'Zum Aktivieren des eingebetteten Kalenders bitte auf den Link klicken. Durch das Aktivieren werden Daten an die EBERL ONLINE GmbH übermittelt. Weitere Informationen können unserer <a href="/datenschutz">Datenschutzerklärung</a> entnommen werden.<br />'
45        }
46
47    );
48
49
50    function wrap(el, wrapper, type, selclass, text) {
51        el.parentNode.insertBefore(wrapper, el);
52        wrapper.className = 'privacy-msg '+selclass+'-msg';
53        //wrapper.style.width = el.clientWidth+'px';
54        //wrapper.style.height = el.clientHeight+'px';
55        wrapper.innerHTML = '<p>'+ text +'<a class="btn" href="#foo" onclick="TwoClickPrivacy.EnableContent(\''+ type +'\', \''+ selclass +'\', \''+ el.id +'\'); return false;">Inhalt anzeigen</a></p>';
56        wrapper.appendChild(el);
57    }
58
59    this.EnableContent = function (type, selclass, id){
60
61        if(!config.noCookies){
62            setCookie('TwoClickEnable-'+type, '1', 1);
63        }
64
65        if(document.getElementById(id)){
66        	var element = document.getElementById(id);
67        	element.parentNode.removeChild(element.parentNode.children[0]);
68        	element.src = element.getAttribute('data-src');
69				if(selclass=="privacy-holidaycheck"){
70					getHolidaycheckScript();
71				}
72				if(selclass=="privacy-eberl"){
73					getEberlScript();
74				}
75				if(selclass=="privacy-script"){
76					getOwnScript();
77				}
78        }
79		else{
80
81			var x = document.querySelectorAll('div.'+selclass+'-msg p');
82			var i;
83			for (i = 0; i < x.length; i++) {
84				x[i].parentNode.removeChild(x[i]);
85			}
86
87			x = document.querySelectorAll('div.'+selclass+'-msg');
88			for (i = 0; i < x.length; i++) {
89				var parent = x[i].parentNode;
90
91				// Move all children out of the element
92				while (x[i].firstChild) parent.insertBefore(x[i].firstChild, x[i]);
93
94				// Remove the empty element
95				parent.removeChild(x[i]);
96			}
97
98			x = document.getElementsByClassName(selclass);
99
100        	for (i = 0; i < x.length; i++) {
101        	    x[i].src = x[i].getAttribute('data-src');
102
103				// Insert own Script to Load
104				if(selclass=="privacy-holidaycheck"){
105					getHolidaycheckScript();
106				}
107				if(selclass=="privacy-eberl"){
108					getEberlScript();
109				}
110				if(selclass=="privacy-script"){
111					getOwnScript();
112				}
113
114       	 	}
115        }
116    }
117
118    this.init = function (Userconfig) {
119
120        if (typeof Userconfig.noCookies !== 'undefined') {
121            config.noCookies = Userconfig.noCookies;
122        }
123
124        if (Array.isArray(Userconfig.CustomTypes)) {
125            this.types = Userconfig.CustomTypes;
126        }
127
128        for (i = 0; i < this.types.length; i++) {
129            var selector = document.getElementsByClassName(this.t
129ypes[i].class);
130            var x;
131            if(!getCookie('TwoClickEnable-'+this.types[i].type)){
132                for (x = 0; x < selector.length; x++) {
133                    wrap(selector[x], document.createElement('div'), this.types[i].type, this.types[i].class, this.types[i].description);
134                }
135            }else{
136                for (x = 0; x < selector.length; x++) {
137                    selector[x].src = selector[x].title;
138
139					// Insert own Script to Load
140					if(selector[x].className=="privacy-holidaycheck"){
141						getHolidaycheckScript();
142					}
143					if(selector[x].className=="privacy-eberl"){
144						getEberlScript();
145					}
146					if(selector[x].className=="privacy-script"){
147						getOwnScript();
148					}
149
150
151                }
152			}
153        }
154
155    };
156
157    /* Holidaycheck Script */
158    function getHolidaycheckScript(){
159		loadScript("https://www.holidaycheck.de/widgets?step=code&type=code&options=hotel-1-1324059-de_DE-m-w-1-1-1-3-0", function(){
160			//initialization code
161		});
162    }
163
164    /* Eberl Belegungskalender Script */
165    function getEberlScript(){
166			if (!document.head.querySelector('script[data-id=eobp]')){
167				var script = document.createElement('script');
168				script.src = 'https://belegungskalender.api.eberl-online.net/v1/bundle.js';
169				script.async = true;
170				script.setAttribute('data-id', 'eobp');
171				document.head.appendChild(script);
172			}
173    }
174
175    /* Eigenes Script laden */
176    function getOwnScript(){
177		loadScript("https://www.besipielurl.de/script.js", function(){
178			//initialization code
179		});
180    }
181
182	/* Skript nachladen */
183	function loadScript(url, callback){
184
185		var script = document.createElement("script")
186		script.type = "text/javascript";
187
188		if (script.readyState){  //IE
189			script.onreadystatechange = function(){
190				if (script.readyState == "loaded" ||
191						script.readyState == "complete"){
192					script.onreadystatechange = null;
193					callback();
194				}
195			};
196		} else {  //Others
197			script.onload = function(){
198				callback();
199			};
200		}
201
202		script.src = url;
203		document.getElementsByTagName("head")[0].appendChild(script);
204	}
205
206    function setCookie(name, value, days) {
207        var d = new Date;
208        d.setTime(d.getTime() + 24*60*60*7*days);
209        document.cookie = name + "=" + value + ";path=/;expires=" + d.toGMTString();
210    }
211
212    function getCookie(name) {
213        var v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
214        return v ? v[2] : null;
215    }
216
217}

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.