PageSourceSearch

https://fhburger.ru/wp-content/plugins/dificento-elementor-stuff/p…?ver=ebe1a8fe01c7e4791ab3f5b0c7761702

js fhburger.ru collected 2026-10-02 01:08:46 UTC 5,610 bytes, 122 lines download raw bytes

1(function ($) {
2    $(window).on('elementor/frontend/init', function () {
3        class SectionWidgetHandlerClass extends elementorModules.frontend.handlers.Base {
4
5            onInit() {
6                super.onInit();
7                this.initSection();
8            }
9
10            getDefaultSettings() {
11                return {
12                    selectors: {
13                        items: 'section.elementor-element[data-element_type=section]',
14                    },
15                };
16            }
17
18            getDefaultElements() {
19                const selectors = this.getSettings('selectors');
20                return {
21                    $items: this.$element.find(selectors.items),
22                };
23            }
24
25            bindEvents() {
26            }
27
28            initSection() {
29                let self = this;
30                const {
31                    is_used_as_slider,
32                    section_slider_navigation,
33                    section_slider_effect,
34                    section_slider_data_interval,
35                    section_slider_dark_mode,
36                    /* -- */
37                    section_slider_controls,
38                } = self.getElementSettings();
39
40                if (is_used_as_slider === "yes") {
41                    let items = self.elements.$items,
42                        wrap = items.first().closest(".elementor-widget-wrap"), // default elementor wrapper for inner things
43                        carouselID = "carousel" + self.getID(),
44                        carouselClass =
45                            "carousel w-100 h-100 " +
46                            "d-flex align-items-center " +
47                            "slide" +
48                            (section_slider_effect === "fade" ? " carousel-fade" : "") +
49                            (section_slider_dark_mode === "yes" ? " carousel-dark" : "");
50
51                    let carousel = $("<div></div>").addClass(carouselClass).attr("id", carouselID);
52
53                    // process navigation buttons list
54                    if (section_slider_navigation === "yes") {
55                        let navigation = $("<div></div>").addClass("carousel-indicators"),
56                            navElements = [];
57                        items.each(function (i, e) {
58                            let li = $("<button></button>").attr({
59                                "data-bs-target": "#" + carouselID,
60                                "data-bs-slide-to": i
61                            });
62                            navElements.push(li);
63                        });
64
65                        navElements[0].addClass("active").attr("aria-current", "true"); // set first as active
66                        navigation.append(navElements); // append to nav container
67                        carousel.append(navigation); // append to carousel
68                    }
69
70                    // process items
71                    let carouselInner = $("<div></div>").addClass("carousel-inner"),
72                        carouselItems = [];
73                    items.each(function (i, e) {
74                        let carouselItem = $("<div></div>").addClass("carousel-item");
75                        carouselItem.append(e);
76                        carouselItems.push(carouselItem);
77                    });
78                    carouselItems[0].addClass("active"); // set first as active
79                    carouselInner.append(carouselItems); // append to inner container
80                    carousel.append(carouselInner); // append to carousel
81
82                    // process controls
83                    if (section_slider_controls === "yes") {
84                        const
85                            prevControl = $("<button></button>")
86                                .addClass("carousel-control-prev")
87                                .attr({
88                                    "data-bs-slide": "prev",
89                                    "data-bs-target": "#" + carouselID
90                                }).append(
91                                    $("<span></span>").addClass("carousel-control-prev-icon").attr("aria-hidden", "true")
92                                ),
93                            nextControl = $("<button></button>")
94                                .addClass("carousel-control-next")
95                                .attr({
96                                    "data-bs-slide": "next",
97                                    "data-bs-target": "#" + carouselID
98                                }).append(
99                                    $("<span></span>").addClass("carousel-control-next-icon").attr("aria-hidden", "true")
100                                );
101                        carousel.append(prevControl, nextControl);
102                    }
103
104                    wrap.append(carousel);
105
106                    let carouselArgs = {};
107                    carouselArgs["interval"] = typeof (section_slider_data_interval) === "number" ? section_slider_data_interval : false;
108                    carousel.carousel(carouselArgs);
109                }
110            }
111        }
112
113        // from [email protected] we cannot use addHandler event directly, we should use attachHandler+class
114        elementorFrontend.elementsHandler.attachHandler('section', SectionWidgetHandlerClass, false);
115
116        // /*
117        // const SectionSliderWidgetHandler = ($element, $) => elementorFrontend.elementsHandler.addHandler(SectionWidgetHandlerClass, {$element});
118        // elementorFrontend.hooks.addAction('frontend/element_ready/section', SectionSliderWidgetHandler);
119        // */
120
121    });
122})(jQuery);

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.