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.