PageSourceSearch

https://www.mairiesquiffiec.fr/components/com_pagebuilderck/assets/pagebuilderck.js?ver=3.6.5

js mairiesquiffiec.fr collected 2026-10-03 02:47:23 UTC 4,766 bytes, 149 lines download raw bytes

1/**
2 * @name		Page Builder CK
3 * @package		com_pagebuilderck
4 * @copyright	Copyright (C) 2015. All rights reserved.
5 * @license		GNU General Public License version 2 or later; see LICENSE.txt
6 * @author		Cedric Keiflin - https://www.template-creator.com - https://www.joomlack.fr
7 */
8
9jQuery(document).ready(function($){
10	var hashtag = window.location.hash;
11	$('.accordionsck,.faqsck[data-accordion="1"]').each(function() {
12		var activetab = typeof($(this).attr('activetab')) != 'undefined' ? parseInt($(this).attr('activetab')) : false;
13		var scrolltoactive = typeof($(this).attr('activetab')) != 'undefined' ? ($(this).attr('scrolltoactive') === '1') : false;
14		var multiplecollapse = typeof($(this).attr('multiplecollapse')) != 'undefined' ? ($(this).attr('multiplecollapse') === '1') : false;
15		if (window.location.hash) {
16			if (hashtag.substr(0, 5) == '#tab-') {
17				var tabindex = 0;
18				$('h3 > .itemtitleck', $(this)).each(function() {
19					if ('#tab-' + $(this).text().toLowerCase().replace(/ /g, '-') == decodeURI(hashtag)) {
20						activetab = tabindex;
21					}
22					tabindex++;
23				});
24			}
25		}
26		$(this).accordionck({
27			header: "> h3",
28			collapsible: true,
29			active: activetab,
30			heightStyle: "content",
31			scrollToActive: scrolltoactive,
32			multiple: multiplecollapse
33		});
34		$('> h3', $(this)).click(function() {
35			$(window).trigger('resize');
36		});
37	});
38	$('.tabsck').each(function() {
39		var activetab = parseInt($(this).attr('activetab'));
40		if (window.location.hash) {
41			if (hashtag.substr(0, 5) == '#tab-') {
42				var tabindex = 0;
43				$('> ol > li a', $(this)).each(function() {
44					if ('#tab-' + $(this).text().toLowerCase().replace(/ /g, '-') == decode
44URI(hashtag)) {
45						activetab = tabindex;
46					}
47					tabindex++;
48				});
49			}
50		}
51		$(this).tabsck({
52			active: activetab
53		});
54		$('.ui-tabs-nav > li', $(this)).click(function() {
55			$(window).trigger('resize');
56		});
57	});
58	$('.blockck, .rowck').each(function() {
59		var $this = $(this);
60		$window = $(window);
61
62		// function to be called whenever the window is scrolled or resized
63		function update($this){
64				var top = $this.offset().top;
65				var pos = $window.scrollTop();
66				var height = $this.height();
67				var windowheight = $(window).height();
68
69			// check if totally above or totally below viewport
70			if (top + height < pos || top > pos + windowheight) {
71				if (! $this.hasClass('noreplayck')) $this.removeClass('animateck');
72				return;
73			}
74			// animate the content if found
75			if (top < pos || top > pos + windowheight-30) {
76				// is out of the screen
77			} else {
78				$this.addClass('animateck');
79			}
80		}
81		if (PAGEBUILDERCK_DISABLE_ANIMATIONS && PAGEBUILDERCK_DISABLE_ANIMATIONS >= $window.width()) {
82			$this.addClass('noanimationck');
83			$this.addClass('animateck');
84			return;
85		} else {
86			update($this);
87			$this.removeClass('noanimationck');
88			$window.scroll(function() { update($this); });
89		}
90	});
91	$('.rowckfullwidth .rowckfullwidth').removeClass('rowckfullwidth'); // remove for imbricated rows
92	$('.rowckfullwidth').each(function() {
93		var $this = $(this);
94		$window = $(window);
95		$this.css('position', 'relative');
96		$this.css('z-index', '1');
97		function update($this){
98			var w = $window.width();
99			if ($this.offset().left != 0) $this.css('margin-left', '-=' + $this.offset().left);
100			$this.css('width', w);
101		}
102		update($this);
103		$window.on('resize load', function() { update($this); });
104	});
105	$('.messageck .close').click(function() {
106		$(this).parent().hide();
107	});
108
109	var faqAccordionEffect = 'single'; // single or multiple, allow which are opened in the same time
110	$('.faqsck[data-display="accordion"]').each(function() {
111		var $faq = $(this);
112		$faq.find('.faqck-heading').on('click', function() {
113			// var $h = $(this);
114			if (faqAccordionEffect == 'single') {
115				$faq.find('.faqck-heading').not(this).removeClass('faqsck-open').find('+ div').each(function() {
116					this.style.maxHeight = null;
117				});
118			}
119			var panel = this.nextElementSibling;
120			if (panel.style.maxHeight) {
121				panel.style.maxHeight = null;
122				this.classList.remove('faqsck-open');
123			} else {
124				panel.style.maxHeight = panel.scrollHeight + "px";
125				this.classList.add('faqsck-open');
126			} 
127		});
128	});
129});
130
131/**
132 * Replace the iframe to load the youtube video
133 * 
134 * @returns void
135 */
136function ckLoadYoutube(thumb) {
137	var videock = $ck(thumb).parent();
138	var framecode = videock.find('i-frame').get(0).outerHTML;
139	framecode = framecode.replace('<i-frame', '<iframe');
140	framecode = framecode.replace('</i-frame>', '</iframe>');
141	videock.find('i-frame').get(0).outerHTML = framecode;
142	var url = videock.find('iframe').attr('src');
143	if (url.indexOf("?") == -1) {
144		url += '?autoplay=1';
145	} else {
146		url += '&autoplay=1';
147	}
148	videock.find('iframe').attr('src', url);
149}

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.