1/** 2 * Handles theme general events 3 * 4 * @package LocalNews 5 * @since 1.0.0 6 */ 7jQuery(document).ready(function($) { 8 "use strict" 9 var ajaxUrl = localNewsObject.ajaxUrl, _wpnonce = localNewsObject._wpnonce, sttOption = localNewsObject.stt, stickeyHeader = localNewsObject.stickey_header; 10 11 setTimeout(function() { 12 $('body .ln_loading_box').hide(); 13 }, 3000); 14 15 var lnrtl = false 16 var lndir = "left" 17 if ($('body').hasClass("rtl")) { 18 lnrtl = true; 19 lndir = "right"; 20 }; 21 22 // theme trigger modal close 23 function lnclosemodal( elm, callback ) { 24 $(document).mouseup(function (e) { 25 var container = $(elm); 26 if (!container.is(e.target) && container.has(e.target).length === 0) callback(); 27 }); 28 } 29 30 // ticker news slider events 31 var tc = $( ".ticker-news-wrap" ); 32 if( tc.length ) { 33 var tcM = tc.find( ".ticker-item-wrap" ).marquee({ 34 duration: 15000, 35 gap: 0, 36 delayBeforeStart: 0, 37 direction: lndir, 38 duplicated: true, 39 startVisible: true, 40 pauseOnHover: true, 41 }); 42 tc.on( "click", ".local-news-ticker-pause", function() { 43 $(this).find( "i" ).toggleClass( "fa-pause fa-play" ) 44 tcM.marquee( "toggle" ); 45 }) 46 } 47javascript: void(0); 48 // search form and sidebar toggle trigger 49 $( "#masthead" ).on( "click", ".search-trigger, .sidebar-toggle-trigger", function() { 50 $(this).next().slideDown('slow'); 51 $(this).addClass('slideshow'); 52 //$('body').addClass('bodynoscroll'); 53 }); 54 $( "#masthead" ).on( "click", ".search-trigger.slideshow, .sidebar-toggle-trigger.slideshow", function() { 55 $(this).next().slideUp('slow'); 56 $(this).removeClass('slideshow'); 57 //$('body').removeClass('bodynoscroll'); 58 }); 59 lnclosemodal( $( ".search-wrap" ), function () { 60 $( ".search-wrap .search-trigger" ).removeClass( "slideshow" ); 61 $( ".search-form-wrap" ).slideUp(); 62 }); // trigger search close 63 lnclosemodal( $( ".sidebar-toggle-wrap" ), function () { 64 $( ".sidebar-toggle-wrap .sidebar-toggle-trigger" ).removeClass( "slideshow" ); 65 $( ".sidebar-toggle-wrap .sidebar-toggle" ).slideUp(); 66 }); // trigger htsidebar close 67 68 // main banner slider events 69 var bc = $( "#main-banner-section" ); 70 if( bc.length ) { 71 var bic = bc.find( ".main-banner-slider" ) 72 var bAuto = bic.data( "auto" ) 73 var bArrows = bic.data( "arrows" ) 74 var bDots = bic.data( "dots" ) 75 bic.slick({ 76 dots: bDots, 77 infinite: true, 78 rtl: lnrtl, 79 arrows: bArrows, 80 autoplay: bAuto, 81 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 82 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>`, 83 }); 84 } 85 86 // banner-tabs 87 var bptc = bc.find( ".main-banner-tabs" ) 88 bptc.on( "click", ".banner-tabs li.banner-tab", function() { 89 var _this = $(this), tabItem = _this.attr( "tab-item" ); 90 _this.addClass( "active" ).siblings().removeClass( "active" ); 91 bptc.find( '.banner-tabs-content div[tab-content="' + tabItem + '"]' ).addClass( "active" ).siblings().removeClass( "active" ); 92 }) 93 94 // main banner popular posts slider events 95 var bpc = bc.find( ".popular-posts-wrap" ); 96 if( bpc.length ) { 97 var bpcAuto = bpc.data( "auto" ) 98 var bpcArrows = bpc.data( "arrows" ) 99 var bpcVertical = bpc.data( "vertical" ); 100 if( bpcVertical) { 101 bpc.slick({ 102 vertical: bpcVertical, 103 slidesToShow: 4, 104 dots: false, 105 infinite: true, 106 arrows: bpcArrows, 107 autoplay: bpcAuto, 108 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 109 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>`, 110 }) 111 } else { 112 bpc.slick({ 113 dots: false, 114 infinite: true, 115 arrows: bpcArrows, 116 rtl: lnrtl, 117 draggable: true, 118 autoplay: bpcAuto, 119 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 120 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>`, 121 }) 122 } 123 } 124 125 // news carousel events 126 var nc = $( ".local-news-section .news-carousel .news-carousel-post-wrap" ); 127 if( nc.length ) { 128 nc.each(function() { 129 var _this = $(this) 130 var ncDots= _this.data("dots") == '1' 131 var ncLoop= _this.data("loop") == '1' 132 var ncArrows= _this.data("arrows") == '1' 133 var ncAuto = _this.data("auto") == '1'
134 var ncColumns = _this.data("columns") 135 _this.slick({ 136 dots: ncDots, 137 infinite: ncLoop, 138 arrows: ncArrows, 139 autoplay: ncAuto, 140 rtl: lnrtl, 141 slidesToShow: ncColumns, 142 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 143 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>`, 144 responsive: [ 145 { 146 breakpoint: 1100, 147 settings: { 148 slidesToShow: 3, 149 }, 150 }, 151 { 152 breakpoint: 768, 153 settings: { 154 slidesToShow: 2, 155 }, 156 }, 157 { 158 breakpoint: 640, 159 settings: { 160 slidesToShow: 1, 161 }, 162 } 163 ] 164 }); 165 }) 166 } 167 168 // Filter posts 169 $( ".local-news-section .news-filter" ).each(function() { 170 var $scope = $(this), $scopeOptions = $scope.data("args"), newTabs = $scope.find( ".filter-tab-wrapper" ), newTabsContent = $scope.find( ".filter-tab-content-wrapper" ); 171 newTabs.on( "click", ".tab-title", function() { 172 var a = $(this), aT = a.data("tab") 173 a.addClass( "isActive" ).siblings().removeClass( "isActive" ); 174 if( newTabsContent.find( ".tab-content.content-" + aT ).length < 1 ) { 175 $scopeOptions.category_name = aT 176 $.ajax({
177 method: 'get', 178 url: ajaxUrl, 179 data: { 180 action: 'local_news_filter_posts_load_tab_content', 181 options : JSON.stringify( $scopeOptions ), 182 _wpnonce: _wpnonce 183 }, 184 beforeSend: function() { 185 $scope.addClass( 'retrieving-posts' ); 186 }, 187 success : function(res) { 188 var parsedRes = JSON.parse(res) 189 if( parsedRes.loaded ) { 190 newTabsContent.append(parsedRes.posts) 191 $scope.removeClass( 'retrieving-posts' ); 192 } 193 }, 194 complete: function() { 195 newTabsContent.find( ".tab-content.content-" + aT ).show().siblings().hide() 196 } 197 }) 198 } else { 199 newTabsContent.find( ".tab-content.content-" + aT ).show().siblings().hide() 200 } 201 }) 202 }) 203 204 // popular posts widgets 205 var ppWidgets = $( ".local-news-widget-popular-posts" ) 206 ppWidgets.each(function() { 207 var _this = $(this), parentWidgetContainerId = _this.parents( ".widget.widget_local_news_popular_posts_widget" ).attr( "id" ), parentWidgetContainer = $( "#" + parentWidgetContainerId ) 208 var ppWidget = parentWidgetContainer.find( ".popular-posts-wrap" ); 209 if( ppWidget.length > 0 ) { 210 var ppWidgetAuto = ppWidget.data( "auto" ) 211 var ppWidgetArrows = ppWidget.data( "arrows" ) 212 var ppWidgetLoop = ppWidget.data( "loop" ) 213 var ppWidgetVertical = ppWidget.data( "vertical" ) 214 if( ppWidgetVertical == 'vertical' ) { 215 ppWidget.slick({ 216 vertical: true, 217 slidesToShow: 4, 218 dots: false, 219 infinite: ppWidgetLoop, 220 arrows: ppWidgetArrows, 221 autoplay: ppWidgetAuto, 222 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 223 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>` 224 }) 225 } else { 226 ppWidget.slick({ 227 dots: false, 228 infinite: ppWidgetLoop, 229 rtl: lnrtl, 230 arrows: ppWidgetArrows, 231 autoplay: ppWidgetAuto, 232 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 233 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>` 234 }) 235 } 236 } 237 }) 238 239 // carousel posts widgets 240 var cpWidgets = $( ".local-news-widget-carousel-posts" ) 241 cpWidgets.each(function() { 242 var _this = $(this), parentWidgetContainerId = _this.parents( ".widget.widget_local_news_carousel_widget" ).attr( "id" ), parentWidgetContainer 243 if( typeof parentWidgetContainerId != 'undefined' ) { 244 parentWidgetContainer = $( "#" + parentWidgetContainerId ) 245 var ppWidget = parentWidgetContainer.find( ".carousel-posts-wrap" ); 246 } else { 247 var ppWidget = _this.find( ".carousel-posts-wrap" ); 248 } 249 if( ppWidget.length > 0 ) { 250 var ppWidgetAuto = ppWidget.data( "auto" ) 251 var ppWidgetArrows = ppWidget.data( "arrows" ) 252 var ppWidgetLoop = ppWidget.data( "loop" ) 253 var ppWidgetVertical = ppWidget.data( "vertical" ) 254 if( ppWidgetVertical == 'vertical' ) { 255 ppWidget.slick({ 256 vertical: true, 257 dots: false, 258 infinite: ppWidgetLoop, 259 arrows: ppWidgetArrows, 260 autoplay: ppWidgetAuto, 261 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 262 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>` 263 }) 264 } else { 265 ppWidget.slick({ 266 dots: false, 267 infinite: ppWidgetLoop, 268 rtl: lnrtl, 269 arrows: ppWidgetArrows, 270 autoplay: ppWidgetAuto, 271 nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`, 272 prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>` 273 }) 274 } 275 } 276 }) 277 278 // tabbed posts 279 var tabpWidgets = $( ".local-news-tabbed-widget-tabs-wrap" ) 280 tabpWidgets.each(function() { 281 var _this = $(this), parentWidgetContainerId = _this.parents( ".widget.widget_local_news_tabbed_posts_widget" ).attr( "id" ), parentWidgetContainer 282 if( typeof parentWidgetContainerId != 'undefined' ) { 283 parentWidgetContainer = $( "#" + parentWidgetContainerId ) 284 var tabpWidget = parentWidgetContainer.find( ".local-news-tabbed-widget-tabs-wrap" ); 285 } else { 286 var tabpWidget = _this; 287 } 288 if( tabpWidget.length > 0 ) { 289 tabpWidget.on( "click", ".tabbed-widget-tabs li.tabbed-widget", function() { 290 var _this = $(this), tabItem = _this.attr( "tab-item" ); 291 _this.addClass( "active" ).siblings().removeClass( "active" ); 292 tabpWidget.find( '.widget-tabs-content div[tab-content="' + tabItem + '"]' ).addClass( "active" ).siblings().removeClass( "active" ); 293 }) 294 } 295 }) 296 297 // stickey related posts 298 if( '.single-related-posts-section-wrap' ) { 299 $('.single .entry-footer').waypoint(function(direction) { 300 $('.single-related-posts-section-wrap.related_posts_popup').addClass('related_posts_popup_sidebar'); 301 }, { offset: + 50 }); 302 } 303 $('.related_post_close').on('click',function(){ 304 $('.single .single-related-posts-section-wrap.related_posts_popup').removeClass('related_posts_popup_sidebar related_posts_popup'); 305 });
306 307 // check for dark mode drafts 308 if( localStorage.getItem( "themeMode" ) && localStorage.getItem( "themeMode" ) == "dark" ) { 309 $( ".mode_toggle_wrap input" ).attr( "checked", true ); 310 if( ! $( "body" ).hasClass( "local_news_dark_mode" ) ) { 311 $( "body" ).addClass( "local_news_dark_mode" ); 312 $( "body" ).removeClass( "ln_main_body" ); 313 } 314 } 315 // toggle theme mode 316 $( ".mode_toggle_wrap" ).on( "click", function() { 317 var _this = $(this) 318 $( "body" ).toggleClass( "local_news_dark_mode" ) 319 if( _this.find( "input:checked" ).length > 0 && $( "body" ).hasClass( "local_news_dark_mode" ) ) { 320 localStorage.setItem("themeMode", "dark"); 321 $("body").removeClass("ln_main_body"); 322 } else { 323 localStorage.setItem( "themeMode", "light" ); 324 $("body").addClass("ln_main_body"); 325 } 326 }); 327 328 329 // header sticky 330 if( stickeyHeader ) { 331 var lastScroll = 0; 332 $(window).on('scroll',function() { 333 var scroll = $(window).scrollTop(); 334 if(scroll > 50){ 335 if(lastScroll - scroll > 0) { 336 $(".main-header .menu-section").addClass("fixed_header"); 337 } else { 338 $(".main-header .menu-section").removeClass("fixed_header"); 339 } 340 lastScroll = scroll; 341 }else{ 342 $(".main-header .menu-section").removeClass("fixed_header"); 343 } 344 }); 345 } 346 347 // back to top script 348 if( sttOption && $( "#ln-scroll-to-top" ).length ) { 349 var scrollContainer = $( "#ln-scroll-to-top" ); 350 $(window).scroll(function() { 351 if ( $(this).scrollTop() > 800 ) { 352 scrollContainer.addClass('show'); 353 } else { 354 scrollContainer.removeClass('show'); 355 } 356 }); 357 scrollContainer.click(function(event) { 358 event.preventDefault(); 359 // Animate the scrolling motion. 360 $("html, body").animate({scrollTop:0},"slow"); 361 }); 362 } 363})
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.