PageSourceSearch

https://coeliac.ie/wp-content/plugins/dynamic-content-for-elementor/assets/js/settings.js?ver=2.6.0

js coeliac.ie collected 2026-09-24 11:26:10 UTC 4,740 bytes, 128 lines download raw bytes

1function dceGetElementSettings($element) {
2        var elementSettings = [];
3        var modelCID = $element.data('model-cid');
4        if (elementorFrontend.isEditMode() && modelCID) {
5            var settings = elementorFrontend.config.elements.data[modelCID];
6            var type = settings.attributes.widgetType || settings.attributes.elType;
7            var settingsKeys = elementorFrontend.config.elements.keys[ type ];
8            if (!settingsKeys) {
9                settingsKeys = elementorFrontend.config.elements.keys[type] = [];
10                jQuery.each(settings.controls, function (name, control) {
11                    if (control.frontend_available) {
12                        settingsKeys.push(name);
13                    }
14                });
15            }
16            jQuery.each(settings.getActiveControls(), function (controlKey) {
17                if (-1 !== settingsKeys.indexOf(controlKey)) {
18                    elementSettings[ controlKey ] = settings.attributes[ controlKey ];
19                }
20            });
21        } else {
22            elementSettings = $element.data('settings') || {};
23        }
24        return elementSettings;
25}
26
27function dceObserveElement( $target, $function_callback ){
28    if (elementorFrontend.isEditMode()) {
29        // Seleziona il nodo di cui monitare la mutazione
30        var elemToObserve = $target;
31
32        /*
33        // NOTA: le proprietà di observe
34        mutationObserver.observe(document.documentElement, {
35          attributes: true,
36          characterData: true,
37          childList: true,
38          subtree: true,
39          attributeOldValue: true,
40          characterDataOldValue: true
41        });*/
42
43        // Opzioni per il monitoraggio (quali mutazioni monitorare)
44        var config = {
45            attributes: true,
46            childList: false,
47            characterData: true
48        };
49
50        var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;
51        // Creazione di un'istanza di monitoraggio collegata alla funzione di callback
52        var observer = new MutationObserver( $function_callback );
53
54        // Inizio del monitoraggio del nodo target riguardo le mutazioni configurate
55        observer.observe(elemToObserve, config);
56
57        // Successivamente si può interrompere il monitoraggio
58    }
59
60}
61
62window.dynamicooo = {};
63
64dynamicooo.getActiveBreakpointsMinPointAndPostfix = () => {
65	let breakpoints = elementorFrontend.config.responsive.activeBreakpoints;
66	let ret = {};
67	for (let key in breakpoints) {
68		ret[key] = {
69			// Elementor widescreen value is actually the min breakpoint:
70			min_point: elementorFrontend.breakpoints.getDeviceMinBreakpoint(key),
71			postfix: `_${key}`,
72		};
73	}
74	ret.desktop = {
75		min_point: elementorFrontend.breakpoints.getDeviceMinBreakpoint('desktop'),
76		postfix: '',
77	}
78	return ret;
79}
80
81/**
82  * Create a Swiper settings breakpoints object .
83  *
84  * swiperSettings: An object with with Swiper settings keys as keys, and as values
85  *  an object contains:
86  * - elementor_key: The Elementor Settings Key from where the value of the
87  *    Swiper Key should be fetched.
88  * - default_value
89  * - filter: function that modifies the Elementor Setting value.>
90  *
91  *
92  *  Returns the breakpoints object as defined by Swiper, value are
93  *  automatically fetched from the Elementor settings.
94  */
95dynamicooo.makeSwiperBreakpoints = (swiperSettings, elementorSettings, elementorSettingsPrefix) => {
96	elementorSettingsPrefix = elementorSettingsPrefix || '';
97	swiperBreakpoints = {}
98	let elementorBreakpoints = dynamicooo.getActiveBreakpointsMinPointAndPostfix();
99	for(let device in elementorBreakpoints) {
100		let min_point = elementorBreakpoints[device].min_point;
101		let postfix = elementorBreakpoints[device].postfix;
102		let breakpointSettings = {}
103		for(let swiperSettingsKey in swiperSettings) {
104			let elementorSettingsKey = elementorSettingsPrefix + swiperSettings[swiperSettingsKey].elementor_key;
105			let default_value = swiperSettings[swiperSettingsKey].default_value;
106			let postfixedKey = elementorSettingsKey + postfix;
107			let value
108			if (typeof elementorSettings[postfixedKey] !== "undefined") {
109				value = elementorSettings[postfixedKey];
110			} else {
111				// fallback to desktop value:
112				value = elementorSettings[elementorSettingsKey]
113			}
114			if (typeof value !== "undefined") {
115				let filter = Number;
116				if ( typeof swiperSettings[swiperSettingsKey].filter === "function" ) {
117					filter = swiperSettings[swiperSettingsKey].filter;
118				}
119				value = filter(value);
120			} else {
121				value = default_value;
122			}
123			breakpointSettings[swiperSettingsKey] = value;
124		}
125		swiperBreakpoints[min_point] = breakpointSettings;
126	}
127	return swiperBreakpoints;
128}

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.