PageSourceSearch

https://skolegpt.dk/wp-content/plugins/wp-magazine-modules-lite/in…/assets/js/elementor-frontend.js?ver=1.1.3

js skolegpt.dk collected 2026-10-01 16:25:32 UTC 8,486 bytes, 177 lines download raw bytes

1/**
2 * Elementor live preview handler
3 * 
4 */
5jQuery(document).ready(function($) {
6    if( window.elementorFrontend ) {
7        if( typeof( elementorFrontend.hooks ) != 'undefined' ) {
8            var ajaxUrl = wpmagazineModulesElementorObject.ajax_url;
9            var _wpnonce = wpmagazineModulesElementorObject._wpnonce;
10            /**
11             * Ticker elementor preview
12             * 
13             */
14            elementorFrontend.hooks.addAction( 'frontend/element_ready/ticker.default', function( $scope, $ ) {
15                var newID = $scope.find( ".cvmm-ticker-content" );
16                var tickerDuration = newID.data( "duration" );
17                var tickerDirection = newID.data( "direction" );
18                var tickerStart = newID.data( "start" );
19                var tickerpauseonHover = newID.data( "pauseonhover" );
20                newID.marquee({
21                    allowCss3Support: true,
22                    delayBeforeStart:tickerStart,
23                    duration : tickerDuration,
24                    pauseOnHover : tickerpauseonHover,
25                    direction: tickerDirection,
26                    startVisible: true,
27                    gap: 6,
28                    duplicated: true
29                });
30            });
31
32            /**
33             * Slider elementor preview
34             * 
35             */
36            elementorFrontend.hooks.addAction( 'frontend/element_ready/post-slider.default', function( $scope, $ ) {
37                var newID = $scope.find( ".cvmm-slider-post-wrapper" );
38                var blockSliderdots = newID.data( "dots" );
39                var blockSliderloop = newID.data( "loop" );
40                var blockSlidercontrol = newID.data( "control" );
41                var blockSliderauto = newID.data( "auto" );
42                var blockSlidertype = newID.data( "type" );
43                var blockSliderspeed = newID.data( "speed" );
44                var blockSliderautoplayspeed = newID.data( "autoplayspeed" );
45                newID.slick({
46                    dots: ( blockSliderdots == '1' ),
47                    arrows: ( blockSlidercontrol == '1' ),
48                    infinite: ( blockSliderloop == '1' ),
49                    autoplay: ( blockSliderauto == '1' ),
50                    fade: ( blockSlidertype == '1' ),
51                    speed: blockSliderspeed,
52                    autoplaySpeed: blockSliderautoplayspeed,
53                    prevArrow: '<span class="slickArrow prev-icon"><i class="fas fa-chevron-left"></i></span>',
54                    nextArrow: '<span class="slickArrow next-icon"><i class="fas fa-chevron-right"></i></span>',
55                });
56            });
57
58            /**
59             * Tiles elementor preview
60             * 
61             */
62            elementorFrontend.hooks.addAction( 'frontend/element_ready/post-tiles.default', function( $scope, $ ) {
63                var newID = $scope.find( ".cvmm-post-tiles-slider-post-wrapper" );
64                var blockSliderdots = newID.data( "dots" );
65                var blockSliderloop = newID.data( "loop" );
66                var blockSlidercontrol = newID.data( "control" );
67                var blockSliderauto = newID.data( "auto" );
68                var blockSlidertype = newID.data( "type" );
69                var blockSliderspeed = newID.data( "speed" );
70                var blockSliderItems = newID.data( "item" );
71                newID.slick({
72                    dots: ( blockSliderdots == '1' ),
73                    arrows: ( blockSlidercontrol == '1' ),
74                    infinite: ( blockSliderloop == '1' ),
75                    autoplay: ( blockSliderauto == '1' ),
76                    slidesToShow: blockSliderItems,
77                    fade: ( blockSlidertype == '1' ),
78                    speed: blockSliderspeed,
79                    margin:20
80                });
81            })
82
83            /**
84             * Post Carousel elementor preview
85             * 
86             */
87            elementorFrontend.hooks.addAction( 'frontend/element_ready/post-carousel.default', function( $scope, $ ) {
88                var newID = $scope.find( ".cvmm-post-carousel-wrapper" );
89                var blockpostCarouseldots = newID.data( "dots" );
90                var blockpostCarouselloop = newID.data( "loop" );
91                var blockpostCarouselcontrol = newID.data( "control" );
92                var blockpostCarouselauto = newID.data( "auto" );
93                var blockpostCarouseltype = newID.data( "type" );
94                var blockpostCarouselspeed = newID.data( "speed" );
95                var blockpostCarouselColumn = newID.data( "column" );
96                newID.slick({
97                    dots: ( blockpostCarouseldots == '1' ),
98                    arrows: ( blockpostCarouselcontrol == '1' ),
99                    infinite: ( blockpostCarouselloop == '1' ),
100                    autoplay: ( blockpostCarouselauto == '1' ),
101                    fade: ( blockpostCarouseltype == '1' ),
102                    speed: blockpostCarouselspeed,
103                    slidesToShow: blockpostCarouselColumn,
104                    responsive: [
105                        {
106                            breakpoint:991,
107                            settings: {
108                            slidesToShow: 2,
109                            slidesToScroll: 1
110                            }
111                        },
112                        {
113                            breakpoint: 480,
114                            settings: {
115                            slidesToShow: 1,
116                            slidesToScroll: 1
117                            }
118                        }
119                    ],
120                    prevArrow: '<span class="slickArrow prev-icon"><i class="fas fa-chevron-left"></i></span>',
121                    nextArrow: '<span class="slickArrow next-icon"><i class="fas fa-chevron-right"></i></span>',
122                });
123            })
124
125
126            /**
127             * Post Carousel elementor preview
128             * 
129             */
130            elementorFrontend.hooks.addAction( 'frontend/element_ready/post-filter.default', function( $scope, $ ) {
131                var activePostsButton;
132                activePostsButton = $scope.find( ".cvmm-title-posts-main-wrapper .cvmm-post-filter-cat-title-wrapper ul li" );
133                activePostsButton.on( 'click', function() {
134                    var _this = $( this ), postContainer = _this.parents( ".cvmm-post-filter-cat-title-wrapper" ).next( ".cvmm-post-wrapper" );
135                    var term_id = _this.data( "id" );
136                    var ajaxAction = 'wpmagazine_modules_lite_post_filter_load_new_posts';
137                    var attributes = JSON.parse( _this.siblings( 'input[name="wpmagazine_modules_lite_post_filter_attrs"]' ).val() );
138                    _this.addClass( 'active' );
139                    _this.siblings().removeClass( 'active' );
140                    /**
141                     * Get ajax posts response
142                     * 
143                     */
144                    $.ajax({
145                        method: 'POST',
146                        url: ajaxUrl,
147                        data: {
148                            'action': ajaxAction,
149                            '_wpnonce': _wpnonce,
150                            'term_id': term_id,
151                            'attributes': attributes
152                        },
153                        beforeSend: function() {
154                            postContainer.addClass( 'retrieving-posts' );
155                        },
156                        success: function(response) {
157                            postContainer.removeClass( 'retrieving-posts' );
158                            postContainer.html( response );
159                        }
160                    })
161                });
162            })
163
164            /**
165             * Post Carousel elementor preview
166             * 
167             */
168            elementorFrontend.hooks.addAction( 'frontend/element_ready/post-masonry.default', function( $scope, $ ) {
169                var masonryContainer;
170                masonryContainer = $scope.find( ".cvmm-post-wrapper" );
171                masonryContainer.imagesLoaded( function() {
172                    masonryContainer.masonry();
173                })
174            })
175        }
176    } // Ends window.elementorFrontend
177});

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.