PageSourceSearch

https://www.mercedes-benz-werkstatt.at/files/tpl/set1/js/main.js

js mercedes-benz-werkstatt.at collected 2026-10-10 02:21:38 UTC 15,123 bytes, 371 lines download raw bytes

1// cookiebanner
2function info_cookie() {
3    if (typeof ga === 'function' || typeof gtag === 'function') {
4        jQuery("body").prepend("<p id='info_cookie' title='Info schlie&szlig;en'>Diese Seite verwendet Cookies, Google Analytics und Social Media Plugins mit Trackingcookies. Durch die Nutzung dieser Webseite erkl&auml;ren Sie sich mit der Verwendung von Google Analytics und Cookies einverstanden! <a href=\"/de/datenschutz\" title=\"Infos zu Cookies, Google Analytics und Social Media Plugins\">Infos zu Cookies, Google Analytics und Social Media Plugins</a><span class=\"clickme\">Ich bin einverstanden! [schlie&szlig;en]</span></p>");
5        jQuery("#info_cookie .clickme").click(function() {
6            jQuery("#info_cookie").hide();
7            jQuery.cookie("info_cookie", "true");
8            document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
9            window[disableStr] = true;
10        })
11    } 
12    else {  	
13        jQuery("body").prepend("<p id='info_cookie' title='Info schlie&szlig;en'>Um unsere Webseite f&uuml;r Sie optimal zu gestalten und fortlaufend verbessern zu k&ouml;nnen, verwenden wir Cookies und Social Media Plugins mit Trackingcookies. Durch die Nutzung dieser Webseite erkl&auml;ren Sie sich mit der Verwendung von Cookies einverstanden! Weitere Informationen zu Cookies erhalten Sie in unserer <a href=\"/de/datenschutz\" title=\"Infos zu Cookies und Social Media Plugins\">Datenschutzerkl&auml;rung</a>! <span class=\"clickme\">Ich bin einverstanden! [schlie&szlig;en]</span></p>");
14        jQuery("#info_cookie").click(function() {
15            jQuery("#info_cookie").hide();
16            jQuery.cookie("info_cookie", "true");
17        })
18    }
19}
20
21
22/**
23 * detects mobile devices and makes a better usability of dropdown menus for them
24 * Author: Alex Gassner
25 */
26function MobileDropDownNavImprover(observedNavs) {
27    this.observedNavs = observedNavs;
28
29    this.startImproving = function() {
30        var userAgent = navigator.userAgent.toLowerCase();
31//        alert(userAgent);
32        var regex = /(iphone|ipod|ipad|opera mini|opera mobi|fennec|palm|blackberry|android|symbian|series60|mobile)/;
33
34        if (userAgent.search(regex) > -1) {
35            // mobile device found
36            // click handler for every menu point in given menus
37            jQuery.each(observedNavs, function(i, val) {
38                if (val == 'nav2' && jQuery('#sidenavi').css('width') == '285px') { // SPECIFIC HACK!!!
39                    return; // continue
40                }
41                jQuery('ul[id=' + this + '] li a').click(function(event) {
42                    handleClicked(event);
43                });
44            });
45        }
46    };
47
48    var handleClicked = function(event) {
49        var target = jQuery(event.target);
50
51        // if click is eg. on a span -> go up to the a
52        while (!target.is('a')) {
53            target = target.parent();
54        }
55
56        jQuery.each(target.siblings(), function() {
57            if (jQuery(this).is('ul')) {
58                // prevent the execution of the href when submenu isn't open
59                if (!jQuery(this).hasClass('visible')) {
60                    event.preventDefault();
61                }
62
63                jQuery(this).show();
64                jQuery(this).addClass('visible');
65            }
66        });
67    }
68};
69
70function initResponsiveSwitcher(options) {
71    var cookieOpts = { path: '/' };
72    var isResponsive = jQuery.cookie('is_responsive');
73    if (typeof isResponsive === 'undefined') {
74        jQuery.cookie('is_responsive', 'true', cookieOpts);
75        isResponsive = 'true';
76    }
77    isResponsive = isResponsive == 'true' ? true : false;
78    if (!isResponsive) {
79        jQuery('body').removeClass('responsive');
80        jQuery('#wrapper').css({'min-width': options.fixedWidthDesktop});
81    }
82
83    var mobiles = /(iphone|ipod|ipad|opera mini|opera mobi|fennec|palm|blackberry|android|symbian|series60|mobile)/;
84    var userAgent = navigator.userAgent.toLowerCase();
85    if (userAgent.search(mobiles) > -1) {
86        var link = jQuery('<a />', {
87            href: '/',
88            id: 'responsive-switcher',
89            title: isResponsive ? 'Zur Desktop-Version' : 'Zur Mobile-Version',
90            text: isResponsive ? 'Zur Desktop-Version' : 'Zur Mobile-Version'
91        });
92        link.click(function(event) {
93            if (isResponsive) {
94                jQuery.cookie('is_responsive', 'false', cookieOpts);
95            } else {
96                jQuery.cookie('is_responsive', 'true', cookieOpts);
97            }
98        });
99        link.appendTo('#footer');
100    }
101
102    return isResponsive;
103}
104
105jQuery.fn.exists = function(){return jQuery(this).length>0;}
106jQuery(document).ready(function() {
107
108    var active_selector = '#hauptnavi, #nav1';
109    jQuery(active_selector).each(function(){
110        jQuery(this).click(function() {
111            jQuery(active_selector).not(this).removeClass('active')
112            jQuery(this).toggleClass('active');
113        })
114    });
115
116
117    // cookiebanner
118    if ("undefined" === typeof jQuery.cookie("info_cookie")) {
119        info_cookie();
120    }
121
122    // to observe more than one navigation, you have to fill in the navigations
123    // eg. for nav1, nav2 and nav3: new Array('nav1', 'nav2', 'nav3');
124    var	navigations = new Array('nav1', 'nav2');
125    var navImprover = new MobileDropDownNavImprover(navigations);
126    navImprover.startImproving();
127
128    
129    // fade-in for the main navigation
130    jQuery('#nav1 li').has('ul').hover(
131        function() {
132            // disable css hover
133            jQuery(this).children('ul').css('display', 'none');
134            // fade in
135            jQuery(this).children('ul').fadeIn('slow');
136        }, function() {
137            // hide subnav
138            jQuery(this).children('ul').stop(true, true).css('display', 'none');
139        }
140    );	
141	
142    var isResponsive = initResponsiveSwitcher({
143        fixedWidthDesktop: '1400px'
144    });
145    /* =============== DATEPICKER BEGIN =============== */
146    var disabledHours = function( currentDateTime ){
147        switch (currentDateTime.getDay()) {
148            case 0: // so
149            case 6: // sa
150                this.setOptions({
151                    minTime:'8:00',
152                    maxTime:'18:00'
153                });
154                break;
155
156            default: //alle
157                this.setOptions({
158                    minTime:'8:00',
159                    maxTime:'20:00'
160                });
161                break;
162            }
163    };
164    function disabledWeekdays(date) {
165        var day = date.getDay();
166        //0 is Sunday, 1 is Monday, 2 is Tuesday , 3 is Wednesday, 4 is Thursday, 5 is Friday and 6 is Saturday
167        if (day == 1 || day == 2 ||day == 3 ||day == 4 ||day == 5 ||day == 6) {
168            return [true] ;
169        } else {
170            return [false] ;
171        }
172    }
173    if (jQuery().datetimepicker) {
174        jQuery('input.datetime').datetimepicker({lang:'de', dayOfWeekStart:1, format:'d.m.Y H:i', formatDate:'d.m.Y', step:15, allowBlank:true, validateOnBlur:false, minDate:0, onChangeDateTime:disabledHours,onShow:disabledHours, beforeShowDay: disabledWeekdays});
175        jQuery('input.date').datetimepicker({lang:'de', dayOfWeekStart:1, format:'d.m.Y', formatDate:'d.m.Y', timepicker:false, allowBlank:true, validateOnBlur:false});
176        jQuery('input.time').datetimepicker({lang:'de', dayOfWeekStart:1, format:'H:i', datepicker:false, step:15, allowBlank:true, validateOnBlur:false});
177    }
178
179    /* =============== DATEPICKER END =============== */
180    /* =============== STYLE SWITCHER BEGIN =============== */
181    var styles = jQuery.cookie('style-switcher');
182    if (typeof styles !== typeof undefined) {
183        styles = JSON.parse(styles);
184        jQuery.each(styles, function(index, item) {
185            jQuery('body').addClass(item);
186        });
187    } else {
188        styles = [];
189    }
190
191
192    jQuery('#style-switcher a.switchable').click(function(event) {
193        event.preventDefault();
194        var className = jQuery(event.target).attr('id');
195        var firstPart = className.match(/^[a-zA-Z0-9]+/)[0];
196
197        var bodyClass = jQuery('body').attr('class');
198        if (typeof bodyClass !== typeof undefined && bodyClass !== false) {
199            var classList = bodyClass.split(/\s+/);
200            jQuery.each(classList, function(index, item) {
201                if (item.substring(0, firstPart.length) === firstPart &&
202                    item.substring(firstPart.length, firstPart.length + 1) === '-') {
203                    jQuery('body').removeClass(item);
204                    styles.splice(jQuery.inArray(item, styles), 1);
205                    jQuery.cookie('style-switcher', JSON.stringify(styles), { path: '/' });
206                }
207            });
208        }
209
210        if (!jQuery(event.target).hasClass('default')) {
211            jQuery('body').addClass(className);
212            styles.push(className);
213            jQuery.cookie('style-switcher', JSON.stringify(styles), { path: '/' });
214        }
215    });
216    /* =============== STYLE SWITCHER END =============== */
217
218    jQuery('.fb-like-box').hide();
219    fb_timer = setInterval(function(){
220        if (jQuery('.fb_iframe_widget').length > 0 ) {
221            clearInterval(fb_timer);
222            jQuery('.fb-like-box').delay(500).fadeIn();
223        }
224    },500);
225    if (jQuery().datetimepicker) {
226        jQuery('input.datetime').datetimepicker({lang:'de', dayOfWeekStart:1, format:'d.m.Y H:i', formatDate:'d.m.Y', step:15, allowBlank:true, validateOnBlur:false, minDate:0});
227        jQuery('input.date').datetimepicker({lang:'de', dayOfWeekStart:1, format:'d.m.Y', formatDate:'d.m.Y', timepicker:false, allowBlank:true, validateOnBlur:false});
228        jQuery('input.time').datetimepicker({lang:'de', dayOfWeekStart:1, format:'H:i', datepicker:false, step:15, allowBlank:true, validateOnBlur:false});
229    }
230
231    // to observe more than one navigation, you have to fill in the navigations
232    // eg. for nav1, nav2 and nav3: new Array('nav1', 'nav2', 'nav3');
233     var	navigations = new Array('subnavi2');
234     var navImprover = new MobileDropDownNavImprover(navigations);
235     navImprover.startImproving();
236
237//    jQuery('.pic_gallery img').each(function(index) {
238//        if (jQuery(this).hasClass('noframe')) {
239//            return;
240//        }
241//        var my_src = this.src;
242//        jQuery(this).replaceWith('<div class="piclayer" style="background-image:url('+my_src+');"></div>');
243//    });
244
245
246    // fade-in for the main navigation
247    jQuery('.submenu2 ul li').has('ul').hover(
248        function() {
249            // disable css hover
250            jQuery(this).children('ul').css('display', 'none');
251            // fade in
252            jQuery(this).children('ul').fadeIn('slow');
253        }, function() {
254            // hide subnav
255            jQuery(this).children('ul').stop(true, true).css('display', 'none');
256        }
257    );
258
259    jQuery( "#ie_warn" ).click(function() {
260        jQuery("#ie_warn").hide();
261    });
262
263	// hide #sprung first
264	jQuery("#sprung").hide();
265
266	// fade in #sprung
267	jQuery(window).scroll(function () {
268		if (jQuery(this).scrollTop() > 100) {
269			jQuery('#sprung').fadeIn();
270		} else {
271			jQuery('#sprung').fadeOut();
272		}
273	});
274
275	// scroll body to 0px on click
276	jQuery('#sprung').click(function() {
277		jQuery('body,html').animate({
278			scrollTop: 0
279		}, 800);
280		return false;
281	});
282
283  
284
285//    var $elements = jQuery('h2.togglein, h3.togglein, h6.togglein, .mehr.togglein, div.togglein, p.togglein');
286//    jQuery('div.togglein, p.togglein').not('.active').hide();
287//    jQuery('h2.togglein, h3.togglein, h6.togglein, .mehr.togglein').click(function() {
288//        jQuery(this).toggleClass('active');
289//        $elements.eq($elements.index(this) + 1).slideToggle().addClass('active');
290//        jQuery('div.togglein, p.togglein').not($elements.eq($elements.index(this) + 1)).removeClass('active').slideUp();
291//        jQuery('h2.togglein, h3.togglein, h6.togglein, .mehr.togglein').not(this).removeClass('active');
292//    });
293    var $elements = jQuery('h2.togglein, h3.togglein, h6.togglein, .mehr.togglein, div.togglein, p.togglein');
294    jQuery('div.togglein, p.togglein').not('.active').hide();
295    jQuery('h2.togglein, h3.togglein, h6.togglein, .mehr.togglein').click(function() {
296        if (undefined == jQuery(this).attr('name') ||
297            '#' + jQuery(this).attr('name') == window.location.hash
298        ) {
299            jumpto(this);
300        } else {
301            window.location.hash = jQuery(this).attr('name');
302        }
303    });
304    function jumpto(me) {
305        var jumpto_offset = 30;
306        if ('' != location.hash) {
307            var me = jQuery('[name="'+location.hash.substring(1)+'"]');
308        }
309        jQuery(me).toggleClass("active");
310        $elements.eq($elements.index(me) + 1).slideToggle().addClass("active");
311        jQuery("div.togglein, p.togglein").not($elements.eq($elements.index(me) + 1)).removeClass("active").hide();
312        jQuery("h2.togglein, h3.togglein, h6.togglein, .mehr.togglein").not(me).removeClass("active");
313        jQuery('html, body').animate({
314                scrollTop: jQuery($elements.eq($elements.index(me))).offset().top - jumpto_offset
315            }, 2000);
316    }
317    window.onhashchange = jumpto;
318    if (window.location.hash) {
319        jumpto();
320    }
321
322    var $elements2 = jQuery('h2.togglein2, h3.togglein2, h6.togglein2, .mehr.togglein2, div.togglein2, p.togglein2');
323    jQuery('div.togglein2, p.togglein2').not('.active').hide();
324    jQuery('h2.togglein2, h3.togglein2, h6.togglein2, .mehr.togglein2').click(function() {
325        jQuery(this).toggleClass('active');
326        $elements2.eq($elements2.index(this) + 1).slideToggle().addClass('active');
327        jQuery('div.togglein2, p.togglein2').not($elements2.eq($elements2.index(this) + 1)).removeClass('active').slideUp();
328        jQuery('h2.togglein2, h3.togglein2, h6.togglein2, .mehr.togglein2').not(this).removeClass('active');
329    });
330
331
332    jQuery('.dir2 .box_out_3').click(function() {
333        jQuery(this).addClass('activebox')
334    })
335    jQuery('.dir2 .box_out_3 #togi').click(function(e) {
336        e.stopPropagation();
337        jQuery('.dir2 .box_out_3').removeClass('activebox');
338    })
339
340});
341
342jQuery(function(){
343    if(jQuery("form").exists()){clear_form()}
344
345    jQuery('a.newspicbox').each(function(i, el) {
346        jQuery(el).attr( "onclick", '' );
347        jQuery(el).attr('href', jQuery(el).attr('href').replace('&amp;','&'));
348    });
349    jQuery('a.newspicbox').fancybox({type: 'image'});
350
351    jQuery('a[rel="lightbox_prev\[picgallery\]"]').each(function(i, el) {
352        jQuery(el).attr('href', jQuery(el).attr('href')+'?.jpg');
353    });
354    jQuery('a[rel="lightbox_prev\[picgallery\]"], a[rel="lightbox[gallery]"]').fancybox();
355
356    linkopener();
357
358});
359
360function updateIFrame(height) {
361	var iframe = document.getElementById('myiframe');
362	iframe.style.height = height + 'px';
363}
364
365function clear_form(){
366    jQuery(":input","form").not(":button, :submit, :reset, :hidden").each(function(){
367        if(jQuery(this).val()==jQuery("#"+jQuery(this).attr("id")).val()){
368            jQuery(this).val("")
369        }
370    })
371}

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.