PageSourceSearch

https://meincode.eu/wp-content/themes/consultio/elementor/js/ct-post-carousel-widget.js

js meincode.eu collected 2026-10-09 21:47:54 UTC 8,281 bytes, 214 lines download raw bytes

1(function ($) {
2    /**
3     * @param $scope The Widget wrapper element as a jQuery element
4     * @param $ The jQuery alias
5     */
6    var WidgetCTPostCarouselHandler = function ($scope, $) {
7        setTimeout(function () {
8            var breakpoints = elementorFrontend.config.breakpoints;
9            var carousel = $scope.find(".ct-slick-carousel");
10            var data = carousel.data();
11            var slickOptions = {
12                slidesToShow: data.colxl,
13                slidesToScroll: data.slidestoscroll,
14                autoplay: true === data.autoplay,
15                autoplaySpeed: data.autoplayspeed,
16                infinite: true === data.infinite,
17                pauseOnHover: true === data.pauseonhover,
18                speed: data.speed,
19                arrows: true === data.arrows,
20                dots: true === data.dots,
21                rtl: true === data.dir,
22                responsive: [
23                    {
24                        breakpoint: 1200,
25                        settings: {
26                            slidesToShow: data.collg,
27                        },
28                    },
29                    {
30                        breakpoint: 992,
31                        settings: {
32                            slidesToShow: data.colmd,
33                        },
34                    },
35                    {
36                        breakpoint: 767,
37                        settings: {
38                            slidesToShow: data.colsm,
39                        },
40                    },
41                    {
42                        breakpoint: 575,
43                        settings: {
44                            slidesToShow: data.colxs,
45                            slidesToScroll: data.colxs,
46                        },
47                    },
48                ],
49            };
50
51            var nav_for = $scope.find(".ct-slick-nav");
52            if (nav_for.length > 0) {
53                slickOptions.asNavFor = nav_for;
54            }
55
56            if (typeof carousel.attr("data-centerMode") !== "undefined") {
57                slickOptions.centerMode =
58                    carousel.attr("data-centerMode") == "true" ? true : false;
59            }
60            if (typeof carousel.attr("data-fade") !== "undefined") {
61                slickOptions.fade =
62                    carousel.attr("data-fade") == "true" ? true : false;
63            }
64            carousel.slick(slickOptions);
65
66            $(".ct-nav-carousel")
67                .parents(".elementor-section")
68                .addClass("hide-nav");
69            $(".ct-nav-carousel .nav-prev").on("click", function () {
70                $(this)
71                    .parents(".elementor-element")
72                    .find(".slick-prev")
73                    .trigger("click");
74            });
75            $(".ct-nav-carousel .nav-next").on("click", function () {
76                $(this)
77                    .parents(".elementor-element")
78                    .find(".slick-next")
79                    .trigger("click");
80            });
81
82            $(".arrow-focus1 .ct-nav-carousel")
83                .parents(".site-content")
84                .find(".carousel-focus1")
85                .addClass("hide-nav");
86            $(".arrow-focus1 .ct-nav-carousel .nav-prev").on(
87                "click",
88                function () {
89                    $(this)
90                        .parents(".site-content")
91                        .find(".carousel-focus1 .slick-prev")
92                        .trigger("click");
93                }
94            );
95            $(".arrow-focus1 .ct-nav-carousel .nav-next").on(
96                "click",
97                function () {
98                    $(this)
99                        .parents(".site-content")
100                        .find(".carousel-focus1 .slick-next")
101                        .trigger("click");
102                }
103            );
104
105            $(".ct-nav-slick").parent().addClass("hide-nav");
106            $(".ct-nav-slick .nav-prev").on("click", function () {
107                $(this)
108                    .parents(".ct-slick-slider")
109                    .find(".slick-prev")
110                    .trigger("click");
111            });
112            $(".ct-nav-slick .nav-next").on("click", function () {
113                $(this)
114                    .parents(".ct-slick-slider")
115                    .find(".slick-next")
116                    .trigger("click");
117            });
118
119            var slider_nav = $scope.find(".ct-slick-nav");
120            if (slider_nav.length > 0) {
121                $(slider_nav).slick({
122                    slidesToShow: parseInt(slider_nav.attr("data-nav")),
123                    slidesToScroll: 1,
124                    asNavFor: carousel,
125                    dots: false,
126                    arrows: false,
127                    centerMode: true,
128                    infinite: true,
129                    focusOnSelect: true,
130                    autoplay: false,
131                    autoplaySpeed: 8000,
132                    speed: 800,
133                    rtl: true === slider_nav.data("dir"),
134                    responsive: [
135                        {
136                            breakpoint: 768,
137                            settings: {
138                                slidesToShow: 3,
139                            },
140                        },
141                    ],
142                });
143            }
144        }, 500);
145    };
146
147    // Make sure you run this code under Elementor.
148    $(window).on("elementor/frontend/init", function () {
149        elementorFrontend.hooks.addAction(
150            "frontend/element_ready/ct_blog_carousel.default",
151            WidgetCTPostCarouselHandler
152        );
153        elementorFrontend.hooks.addAction(
154            "frontend/element_ready/ct_service_carousel.default",
155            WidgetCTPostCarouselHandler
156        );
157        elementorFrontend.hooks.addAction(
158            "frontend/element_ready/ct_portfolio_carousel.default",
159            WidgetCTPostCarouselHandler
160        );
161        elementorFrontend.hooks.addAction(
162            "frontend/element_ready/ct_gallery_carousel.default",
163            WidgetCTPostCarouselHandler
164        );
165        elementorFrontend.hooks.addAction(
166            "frontend/element_ready/ct_testimonial_carousel.default",
167            WidgetCTPostCarouselHandler
168        );
169        elementorFrontend.hooks.addAction(
170            "frontend/element_ready/ct_team_carousel.default",
171            WidgetCTPostCarouselHandler
172        );
173        elementorFrontend.hooks.addAction(
174            "frontend/element_ready/ct_fancybox_carousel.default",
175            WidgetCTPostCarouselHandler
176        );
177        elementorFrontend.hooks.addAction(
178            "frontend/element_ready/ct_clients_list.default",
179            WidgetCTPostCarouselHandler
180        );
181        elementorFrontend.hooks.addAction(
182            "frontend/element_ready/ct_case_study_carousel.default",
183            WidgetCTPostCarouselHandler
184        );
185        elementorFrontend.hooks.addAction(
186            "frontend/element_ready/ct_fancy_box_carousel.default",
187            WidgetCTPostCarouselHandler
188        );
189        elementorFrontend.hooks.addAction(
190            "frontend/element_ready/ct_offer_carousel.default",
191            WidgetCTPostCarouselHandler
192        );
193        elementorFrontend.hooks.addAction(
194            "frontend/element_ready/ct_courses_carousel.default",
195            WidgetCTPostCarouselHandler
196        );
197        elementorFrontend.hooks.addAction(
198            "frontend/element_ready/ct_slider.default",
199            WidgetCTPostCarouselHandler
200        );
201        elementorFrontend.hooks.addAction(
202            "frontend/element_ready/ct_portfolio_external.default",
203            WidgetCTPostCarouselHandler
204        );
205        elementorFrontend.hooks.addAction(
206            "frontend/element_ready/ct_service_external.default",
207            WidgetCTPostCarouselHandler
208        );
209        elementorFrontend.hooks.addAction(
210            "frontend/element_ready/ct_history_carousel.default",
211            WidgetCTPostCarouselHandler
212        );
213    });
214})(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.