1/** 2 * 3 * 1. Page Loader 4 * 2. FitVids Setting 5 * 3. Flexslider 6 * 4. Parallax 7 * 5. Sidebar Newsfeed-1 8 * 6. Sidebar Newsfeed-2 9 * 7. Sidebar Newsfeed-3 10 * 8. Sidebar Newsfeed-4 11 * 9. Sidebar Newsfeed-5 12 * 10. Sidebar Newsfeed-6 13 * 11. News Ticker 14 * 12. News Ticker RSS Feed 15 * 13. RSS Feed 16 * 14. To Top Button 17 * 15. Owl Carousel - News Slider 18 * 16. Owl Carousel - Schedule Slider 19 * 17. Owl Carousel - Mega Menu slider 20 * 18. Owl Carousel - Big Gallery Slider-1 21 * 19. Owl Carousel - Big Gallery Slider-2 22 * 20. Owl Carousel - Big Gallery Slider-3 23 * 21. Owl Carousel - Small Gallery Slider 24 * 22. Owl Carousel - News Gallery Slider 25 * 23. Owl Carousel - Logo Gallery Slider 26 * 24. Owl Carousel 27 * 25. Currency Converter 28 * 26. Sidebar Weather 29 * 27. About Us Page 30 * 28. Countdown 31 * 29. Fix jumping on top 32 * 30. Mobile Menu 33 * 31. Search box 34 * 32. Hide empty tags 35 * 33. Prevent menu from closing 36 * 34. Magnific popup 37 * 35. Sticky Module 38 * 36. Masonry Gallery 39 * 37. Google Ads 40 * 38. Vimeo video 41 * 39. Hide iframe if empty 42 * 40. Facebook video 43 * 41. Clock 44 * 45 * @package Reendex 46 */ 47 48(function($) { 49 "use strict"; 50 51 /* 1. Page Loader */ 52 // Wait for window load. 53 $( window ).on('load', function() { 54 $( '.pageloader' ).fadeOut( 'slow' ); 55 $( 'body' ).removeClass( 'loading' ); 56 }); 57 58 /* 59 * 2. FitVids Setting 60 */ 61 jQuery( '.fitvids-video' ).fitVids(); 62 63 /* 3. Flexslider */ 64 $( '.flexslider' ).flexslider( { 65 animation: "fade", 66 controlNav: false 67 } ); 68 69 /* 4. Parallax */
70 function parallaxInit() { 71 $( '.img-overlay1', '#parallax-section' ).parallax( "100%", 0.5 ); 72 $( '.img-overlay3', '#parallax-section3' ).parallax( "100%", 0.5 ); 73 } 74 parallaxInit(); 75 76 /* 5. Sidebar Newsfeed-1 */ 77 $( '.newsfeed-1' ).easyTicker( { 78 direction: 'up', 79 easing: 'easeOutSine', 80 speed: 'slow', 81 interval: 5000, 82 height: 'auto', 83 visible: 3, 84 mousePause: 1, 85 } ); 86 87 /* 6. Sidebar Newsfeed-2 */ 88 $( '.newsfeed-2' ).easyTicker( { 89 direction: 'up', 90 easing: 'easeOutSine', 91 speed: 'slow', 92 interval: 5000, 93 height: 'auto', 94 visible: 4, 95 mousePause: 1, 96 } ); 97 98 /* 7. Sidebar Newsfeed-3 */ 99 $( '.newsfeed-3' ).easyTicker( { 100 direction: 'up', 101 easing: 'easeInOutSine', 102 speed: 'slow', 103 interval: 5000, 104 height: 'auto', 105 visible: 5, 106 mousePause: 1, 107 } ); 108 109 /* 8. Sidebar Newsfeed-4 */ 110 $( '.newsfeed-4' ).easyTicker( { 111 direction: 'up', 112 easing: 'easeOutSine', 113 speed: 'slow', 114 interval: 5000, 115 height: 'auto', 116 visible: 6, 117 mousePause: 1, 118 } ); 119 120 /* 9. Sidebar Newsfeed-5 */ 121 $( '.newsfeed-5' ).easyTicker( { 122 direction: 'up', 123 easing: 'easeOutSine', 124 speed: 'slow', 125 interval: 5000, 126 height: 'auto', 127 visible: 7, 128 mousePause: 1, 129 } ); 130 131 /* 10. Sidebar Newsfeed-6 */ 132 $( '.newsfeed-6' ).easyTicker( { 133 direction: 'up', 134 easing: 'easeOutSine', 135 speed: 'slow', 136 interval: 5000, 137 height: 'auto', 138 visible: 8, 139 mousePause: 1, 140 } ); 141 142 /* 11. News Ticker */ 143 $( '.newsticker' ).easyTicker( { 144 direction: 'up', 145 easing: 'easeOutSine', 146 speed: 'slow', 147 interval: 7000, 148 height: 'auto', 149 visible: 1, 150 mousePause: 1, 151 controls: { 152 up: '.up', 153 down: '.down' 154 } 155 } ); 156 157 /* 12. News Ticker RSS Feed */ 158 var widget = $( '.news-ticker-rss' ); 159 $( '.news-ticker-rss .ticker-vticker' ).each(function() { 160 var visible = $( this ).attr( 'data-visible' ); 161 var interval = $( this ).attr( 'data-speed' ); 162 var height = ( parseInt( visible ) <= 20 ? 'auto' : visible ); 163 var ticker = $( this ).easyTicker( { 164 'visible': visible, 165 'easing': 'easeOutSine', 166 'height': height, 167 'interval': interval, 168 'mousePause': 1, 169 'controls': { 170 up: '.up', 171 down: '.down' 172 } 173 }); 174 }); 175 176 /* 13. RSS Feed */ 177 var widget = $( '.news-ticker-rss-widget' ); 178 $( '.ticker-vticker' ).each(function() { 179 var visible = $( this ).attr( 'data-visible' ); 180 var interval = $( this ).attr( 'data-speed' ); 181 var ticker = $( this ).easyTicker( { 182 'visible': visible, 183 'easing': 'easeOutSine', 184 'height': 'auto', 185 'interval': interval, 186 'mousePause': 1, 187 }); 188 }); 189 190 /* 14. To Top Button */ 191 $().UItoTop( { 192 easingType: 'easeOutQuart' 193 } ); 194 195 /* 15. Owl Carousel - News Slider */ 196 $( "#news-slider" ).owlCarousel( { 197 animateOut: 'fadeOut', 198 animateIn: 'fadeIn', 199 autoHeight:false, 200 items : 1, 201 center: true, 202 loop : false, 203 smartSpeed :900, 204 nav : true, 205 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 206 207 } ); 208
209 /* 16. Owl Carousel - Schedule Slider */ 210 $( "#sidebar-schedule-slider" ).owlCarousel( { 211 autoPlay: false, 212 autoHeight:false, 213 nav : true, 214 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 215 animateOut: 'fadeOut', 216 animateIn: 'fadeIn', 217 loop : false, 218 responsive:{ 219 0:{ 220 items:1, 221 nav:true 222 }, 223 320:{ 224 items:1, 225 nav:true 226 }, 227 667:{ 228 items:2, 229 nav:true 230 }, 231 980:{ 232 items:2, 233 nav:true 234 }, 235 1024:{ 236 items:3, 237 nav:true, 238 loop:false 239 }, 240 1183:{ 241 items:1, 242 nav:true, 243 loop:false 244 }, 245 1400:{ 246 items:1, 247 nav:true, 248 loop:false 249 } 250 } 251 } ); 252 253 /* 17. Owl Carousel - Mega Menu slider */ 254 $( ".menu-carousel-inner" ).owlCarousel( { 255 nav : true, 256 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 257 animateOut: 'fadeOut', 258 animateIn: 'fadeIn', 259 items:1, 260 loop:true, 261 autoHeight:true, 262 } ); 263 264 /* 18. Owl Carousel - Big Gallery Slider-1 */ 265 $( "#big-gallery-slider-1" ).owlCarousel( { 266 nav : true, 267 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 268 items: 3, 269 margin: 2, 270 responsive:{ 271 0: { 272 items:1, 273 nav:true 274 }, 275 479:{ 276 items:2, 277 nav:true 278 }, 279 768:{ 280 items:3, 281 nav:true, 282 loop:true 283 }, 284 } 285 } ); 286 287 /* 19. Owl Carousel - Big Gallery Slider-2 */ 288 $( "#big-gallery-slider-2" ).owlCarousel( { 289 nav : true, 290 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 291 items: 4, 292 margin: 2, 293 responsive:{ 294 0: { 295 items:1, 296 nav:true 297 }, 298 479:{ 299 items:2, 300 nav:true 301 }, 302 768:{ 303 items:3, 304 nav:true, 305 loop:true 306 }, 307 1000:{ 308 items:4, 309 nav:true, 310 loop:true 311 } 312 } 313 } ); 314 315 /* 20. Owl Carousel - Big Gallery Slider-3 */ 316 $( "#big-gallery-slider-3" ).owlCarousel( { 317 nav : true, 318 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 319 items: 5, 320 margin: 2, 321 responsive:{ 322 0: { 323 items:1, 324 nav:true 325 }, 326 479:{ 327 items:2, 328 nav:true 329 }, 330 768:{ 331 items:3, 332 nav:true, 333 loop:true 334 }, 335 1000:{ 336 items:5, 337 nav:true, 338 loop:true 339 } 340 } 341 } ); 342 343 /* 21. Owl Carousel - Small Gallery Slider */ 344 $( "#small-gallery-slider" ).owlCarousel( { 345 nav : true, 346 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 347 items: 4, 348 autoHeight:false, 349 loop:true, 350 responsive:{ 351 0: { 352 items:1, 353 nav:true, 354 }, 355 568: { 356 items:2, 357 nav:true, 358 }, 359 767:{ 360 items:2, 361 nav:true, 362 }, 363 900:{ 364 items:3, 365 nav:true, 366 }, 367 1400:{ 368 items:4, 369 nav:true, 370 } 371 } 372 } ); 373 374 /* 22. Owl Carousel - News Gallery Slider */ 375 $( "#news-gallery-slider" ).owlCarousel( { 376 nav : true, 377 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 378 items: 4, 379 autoHeight:false, 380 loop:false, 381 smartSpeed :900, 382 margin: 30, 383 responsive:{ 384 0: { 385 items:1, 386 nav:true, 387 }, 388 479:{ 389 items:2, 390 nav:true, 391 }, 392 767:{ 393 items:3, 394 nav:true, 395 loop:false 396 }, 397 1280:{ 398 items:4, 399 nav:true, 400 loop:false 401 }, 402 }, 403 } ); 404 405 /* 23. Owl Carousel - Logo Gallery Slider */ 406 $( "#logo-gallery-slider" ).owlCarousel( { 407 nav : true, 408 navText : ["<i class='pe-7s-angle-left'></i>","<i class='pe-7s-angle-right'></i>"], 409 autoHeight:false, 410 margin: 40, 411 loop:true, 412 stagePadding: 41, 413 smartSpeed :900, 414 responsive:{ 415 0: { 416 items:1, 417 nav:true, 418 }, 419 320:{ 420 items:2, 421 nav:true, 422 }, 423 479:{ 424 items:3, 425 nav:true, 426 }, 427 767:{ 428 items:4, 429 nav:true, 430 loop:false 431 }, 432 980:{ 433 items:5, 434 nav:true, 435 loop:false 436 }, 437 1400:{ 438 items:6, 439 nav:true, 440 loop:false 441 } 442 }, 443 } ); 444 445 /* 24. Owl Carousel */ 446 $( '.owl-carousel' ).find( '.owl-nav' ).removeClass( 'disabled' ); 447 $( '.owl-carousel' ).on( 'changed.owl.carousel', function(event ) { 448 $( this ).find( '.owl-nav' ).removeClass( 'disabled' ); 449 } ); 450 451 /* 26. Currency Converter */ 452 function convertCurrency() { 453 let fromCurrency = encodeURIComponent( $( '#from' ).val() ); 454 let toCurrency = encodeURIComponent( $( '#to' ).val() ); 455 let fromAmount = $( '#fromAmount' ).val(); 456 let query = fromCurrency + '_' + toCurrency; 457 /** Looping through currency **/ 458 let currenciesUrl = 'https://free.currencyconverterapi.com/api/v5/currencies'; 459 $.ajax({ 460 url: currenciesUrl, 461 type:"GET", 462 success: (result) => { 463 result = result.results; 464 for (const props in result) { 465 console.log( props ); 466 let html = ` <option value = "${props}"> ${result[props]["currencyName"]}(${props}) </option> `; 467 $( ".currency" ).append( html ); 468 } 469 }, 470 error: ( xhr,status,error ) => {console.log( status )}, 471 dataType: 'jsonp', 472 }); 473 let url = 'https://free.currencyconverterapi.com/api/v5/convert?q=' + query + '&compact=ultra&apiKey='; 474 var result = $.ajax({ 475 url: url, 476 type:"GET", 477 success: (data) => { 478 let val = data[query]; 479 if (val) { 480 let total = val * fromAmount; 481 let toAmount = Math.round( total * 100 ) / 100; 482 $( '#toAmount' ).val( toAmount ); 483 } else { 484 var err = new Error( "Value not found for " + query ); 485 } 486 }, 487 error: function(xhr,status,error) { 488 console.log( status ); 489 }, dataType: 'jsonp', 490 }); 491 return result; 492 } 493 $( "#fromAmount" ).keyup( convertCurrency ); 494 $( "#from" ).change( convertCurrency ); 495 $( "#to" ).change( convertCurrency ); 496 convertCurrency(); 497 498 /* 26. Sidebar Weather */ 499 function titleCase(str) { 500 str = str.split( ' ' ); 501 var length = str.length; 502 for (var i = 0; i < length; i++) { 503 str[i] = str[i][0].toUpperCase() + str[i].substring( 1 ); 504 } 505 return str.join( ' ' ); 506 } 507 508 function fullDay(str) { 509 if (str === 'Tue') { 510 str = 'Tuesday'; 511 } else if (str === 'Wed') { 512 str = 'Wednesday'; 513 } else if (str === 'Thu') { 514 str = 'Thursday'; 515 } else if (str === 'Sat') { 516 str = 'Saturday'; 517 } else { 518 str = str + 'day'; 519 } 520 return str; 521 } 522 523 $(function() { 524 525 var $wrapper = $( '.sidebar-weather' ), 526 $panel = $wrapper.find( '.panel' ), 527 $city = $panel.find( '#city' ), 528 $weather = $panel.find( '.weather' ), 529 $group = $panel.find( '.group' ), 530 $dt = $group.find( '#dt' ), 531 $description = $group.find( '#haze' ), 532 $wind = $group.find( '#wind' ), 533 $humidity = $group.find( '#humidity' ), 534 $temperature = $weather.find( '#temperature' ), 535 $temp = $temperature.find( '#temp' ), 536 $icon = $temp.find( '#condition' ), 537 $tempNumber = $temp.find( '#num' ), 538 $celsius = $temp.find( '#celsius' ),
539 $fahrenheit = $temp.find( '#fahrenheit' ), 540 $forecast = $weather.find( '#forecast' ), 541 $search = $wrapper.find( '.search' ), 542 $form = $search.find( 'form' ), 543 $button = $form.find( '#button' ); 544 var access_key = reendex_weather_settings.reendex_weather_access_key; 545 $.ajax({ 546 dataType: 'json', 547 url: 'http://api.ipstack.com/check?access_key=access_key' 548 }) 549 .then(function(data) { 550 var yourLocation = data.city + ',' + data.zip + ',' + data.countryCode; 551 getWeather( yourLocation ); 552 }); 553 554 function getWeather(input) { 555 556 var appid = reendex_weather_settings.reendex_wea_api; 557 var input = reendex_weather_settings.reendex_weather_location; 558 var weatherURL = 'https://api.openweathermap.org/data/2.5/weather'; 559 var data = { 560 q: input, 561 units: 'imperial', 562 appid: appid 563 }; 564 var requestWeather = $.getJSON( weatherURL, data ); 565 566 var forecastURL = 'https://api.openweathermap.org/data/2.5/forecast/daily'; 567 var data = { 568 q: input, 569 units: 'imperial', 570 cnt: '6', 571 appid: appid 572 }; 573 var requestForecast = $.getJSON( forecastURL, data ); 574 575 $fahrenheit.addClass( 'active' ).removeAttr( 'href' ); 576 $celsius.removeClass( 'active' ).attr( "href", '#' ); 577 $icon.removeClass(); 578 $button.removeClass().addClass( 'button transparent' ); 579 580 requestWeather.done(function(data) { 581 582 var weather = document.getElementById( 'weather' ); 583 if (data.cod === '404') { 584 $city.html( 'city not found' ); 585 setBackground( 'color404', 'button404' ); 586 weather.style.display = 'none'; 587 } 588 589 var dt = new Date( data.dt * 1000 ).toString().split( ' ' ); 590 591 $city.html( data.name + ', ' + data.sys.country ); 592 $tempNumber.html( Math.round( data.main.temp ) ); 593 $description.html( titleCase( data.weather[0].description ) ); 594 $wind.html( 'Wind: ' + data.wind.speed + ' mph' ); 595 $humidity.html( 'Humidity ' + data.main.humidity + '%' ); 596 $dt.html( fullDay( dt[0] ) + ' ' + dt[4].substring( 0, 5 ) ); 597 598 $celsius.on( 'click', toCelsius ); 599 $fahrenheit.on( 'click', toFahrenheit ); 600 601 function toCelsius() { 602 $( this ).addClass( 'active' ).removeAttr( 'href' ); 603 $fahrenheit.removeClass( 'active' ).attr( 'href', '#' ); 604 $tempNumber.html( Math.round( (data.main.temp - 32) * (5 / 9) ) ); 605 } 606 607 function toFahrenheit() { 608 $( this ).addClass( 'active' ).removeAttr( 'href' ); 609 $celsius.removeClass( 'active' ).attr( "href", '#' ); 610 $tempNumber.html( Math.round( data.main.temp ) ); 611 } 612 613 switch (data.weather[0].icon) { 614 case '01d': 615 $icon.addClass( 'wi wi-day-sunny' ); 616 break; 617 case '02d': 618 $icon.addClass( 'wi wi-day-sunny-overcast' ); 619 break; 620 case '01n': 621 $icon.addClass( 'wi wi-night-clear' ); 622 break; 623 case '02n': 624 $icon.addClass( 'wi wi-night-partly-cloudy' ); 625 break; 626 } 627 628 switch (data.weather[0].icon.substr( 0, 2 )) { 629 case '03': 630 $icon.addClass( 'wi wi-cloud' ); 631 break; 632 case '04': 633 $icon.addClass( 'wi wi-cloudy' ); 634 break; 635 case '09': 636 $icon.addClass( 'wi wi-showers' ); 637 break; 638 case '10': 639 $icon.addClass( 'wi wi-rain' ); 640 break; 641 case '11': 642 $icon.addClass( 'wi wi-thunderstorm' ); 643 break; 644 case '13': 645 $icon.addClass( 'wi wi-snow' ); 646 break; 647 case '50': 648 $icon.addClass( 'wi wi-fog' ); 649 break; 650 } 651 }); 652 653 requestForecast.done(function(data) { 654 655 $celsius.on( 'click', toCelsius ); 656 $fahrenheit.on( 'click', toFahrenheit ); 657 658 var forecast = []; 659 var length = data.list.length; 660 for (var i = 1; i < length; i++) { 661 forecast.push({ 662 date: new Date( data.list[i].dt * 1000 ).toString().split( ' ' )[0], 663 fahrenheit: { 664 high: Math.round( data.list[i].temp.max ), 665 low: Math.round( data.list[i].temp.min ), 666 }, 667 celsius: { 668 high: Math.round( (data.list[i].temp.max - 32) * (5 / 9) ), 669 low: Math.round( (data.list[i].temp.min - 32) * (5 / 9) ) 670 } 671 }); 672 } 673 674 function toCelsius() { 675 doForecast( 'celsius' ); 676 } 677 678 function toFahrenheit() { 679 doForecast( 'fahrenheit' ); 680 } 681 682 function doForecast(unit) { 683 var arr = []; 684 var length = forecast.length; 685 for (var i = 0; i < length; i++) { 686 arr[i] = ("<div class='block'><h3 class='secondary'>" + forecast[i].date + "</h3><h2 class='high'>" + forecast[i][unit].high + "</h2><h4 class='secondary'>" + forecast[i][unit].low + "</h4></div>"); 687 } 688 $forecast.html( arr.join( '' ) ); 689 } 690 691 doForecast( 'fahrenheit' ); 692 }); 693 } 694 }); 695 696 /* 27. About Us Page */ 697 698 $( 'body' ).scrollspy({ 699 target: '.editorial-section', 700 offset: 200 701 }); 702 // Animate The Scroll. 703 $( '.menuitem a' ).on('click', function(event) { 704 if (this.hash !== "") { 705 event.preventDefault(); 706 var hash = this.hash; 707 $( 'html, body' ).animate({ 708 scrollTop: $( hash ).offset().top - 160 709 }, 600); 710 } 711 }); 712 713 /* 28. Countdown */ 714 $( '[data-countdown]' ).each(function() { 715 var $this = $( this ), 716 finalDate = $( this ).data( 'countdown' ); 717 $this.countdown(finalDate, function(event) { 718 $this.html( event.strftime( '<div>%-D <span>days</span></div> <div>%-H <span>hrs</span></div> <div>%M <span>min</span></div> <div> %S <span>sec</span></div>' ) ); 719 }); 720 }); 721 722 /* 29. Fix jumping on top */ 723 $( 'a[href="#"]' ).live('click', function(e) { 724 e.preventDefault(); 725 }); 726 727 /* 30. Mobile menu */ 728 $( ".wprmenu_bar" ).click(function () { 729 if ($( "body" ).hasClass( "nav-open" ) ) { 730 $( "body" ).removeClass( "nav-open" ); 731 } else { 732 $( "body" ).addClass( "nav-open" ); 733 } 734 }); 735 $( ".js-toggleSidebar" ).click(function () { 736 if ($( "body" ).hasClass( "nav-open" ) ) { 737 $( "body" ).removeClass( "nav-open" ); 738 } else { 739 $( "body" ).addClass( "nav-open" ); 740 } 741 }); 742 743 $( '#wprmenu_menu_ul [class$="_sub-menu"]' ).hide(); 744 $( '#wprmenu_menu_ul li' ).on('click', function() {
745 $( this ).siblings( 'li' ).find( 'ul' ).slideUp(); 746 $( '[class$="_sub-menu"]', this ).slideToggle(); 747 $( this ).siblings( 'li' ).find( 'span' ).removeClass( 'wprmenu_par_opened' ); 748 }); 749 750 /* 31. Search box */ 751 if ( $( '.search-icon' ).length > 0 ) { 752 $( '.search-icon' ).on('click', function(e) { 753 e.preventDefault(); 754 $( '.search-box-wrap' ).slideToggle(); 755 }); 756 } 757 $( '.search-close-btn' ).on('click', function(e){ 758 e.preventDefault(); 759 $( '.search-box-wrap' ).slideToggle(); 760 }); 761 762 /* 32. Hide empty tags */ 763 $( "a:empty" ).parent().hide(); 764 $( "a:empty" ).remove(); 765 $( "a.external-link:empty" ).hide(); 766 767 /* 33. Prevent Menu from closing when click inside */ 768 $( 'ul.dropdown-menu' ).on('click', function(event) { 769 event.stopPropagation(); 770 } ); 771 772 $( document ).ready( function() { 773 /* 34. Magnific popup */ 774 $( 'a[href*=".jpg"]:not(.rollover-thumbnail a), a[href*=".jpeg"]:not(.rollover-thumbnail a), a[href*=".png"]:not(.rollover-thumbnail a), a[href*=".gif"]:not(.rollover-thumbnail a)' ).each(function() { 775 if ($( this ).parents( '.gallery' ).length == 0) { 776 $( this ).magnificPopup({ 777 type:'image', 778 closeOnContentClick: true, 779 image: { 780 titleSrc: function(item) { 781 return item.el.parents( 'article' ).find( 'figcaption' ).html(); 782 }, 783 verticalFit: true, 784 } 785 }); 786 } 787 }); 788 $( '.gallery' ).each(function() { 789 $( this ).magnificPopup({ 790 delegate: 'a', 791 type: 'image', 792 image: { 793 titleSrc: function(item) { 794 return item.el.parents( '.gallery-item' ).find( '.gallery-caption' ).text(); 795 }, 796 verticalFit: true, 797 }, 798 gallery: {enabled: true} 799 }); 800 }); 801 802 /* 35. Sticky Module */ 803 $( '.sticky-module' ).theiaStickySidebar( { 804 // or 'stick-to-top', 'stick-to-bottom'. 805 'sidebarBehavior': 'modern', 806 'updateSidebarHeight': true, 807 }); 808 $( '.editorial-sticky' ).theiaStickySidebar( { 809 // or 'stick-to-top', 'stick-to-bottom'. 810 'sidebarBehavior': 'modern', 811 'updateSidebarHeight': true, 812 'additionalMarginTop': 50, 813 }); 814 $( '.sticky-module' ) 815 .on( 'sticky_kit:bottom', function(e) { 816 $( this ).parent().css( 'position', 'static' ); 817 } ) 818 .on( 'sticky_kit:unbottom', function(e) { 819 $( this ).parent().css( 'position', 'relative' ); 820 } ); 821 822 /* 36. Masonry Gallery */ 823 $( '.content-archive-wrapper-1, .content-archive-wrapper-2, .content-archive-wrapper-3' ).masonry({ 824 // options... 825 itemSelector: 'article', 826 }); 827 $( '.related-posts-2, .related-posts-3' ).masonry({ 828 // options... 829 itemSelector: '.related-item-block', 830 }); 831 832 /* 37. Google Ads */ 833 var adsbygoogle = (adsbygoogle = window.adsbygoogle || []); 834 $( ".adsbygoogle" ).each( function() { adsbygoogle.push( this ) } ); 835 836 /* 38. Vimeo video */ 837 var iframe = document.getElementById( 'embeddedVideo' ); 838 if ( typeof( iframe ) != 'undefined' && iframe != null ) { 839 var player = new Vimeo.Player( iframe ); 840 player.ready().then(function () { 841 if ( $( '#video_mute' ).val() == 1 ) { 842 player.setVolume( 0 ); 843 } 844 if ( $( '#video_mute' ).val() == 0 ) { 845 player.setVolume( 1 ); 846 } 847 }); 848 } 849 }); 850 851 /* 39. Hide iframe if empty */ 852 $( 'iframe' ).each(function() { 853 var src = this.src.toLowerCase(); 854 if ( src === self.location.href || ! /^https?:[\/]{0,2}\w/i.test( src ) ) { 855 $( this ).hide(); 856 } else { 857 $( this ).show(); 858 } 859 }); 860 861 /* 40. Facebook video */ 862 (function(d, s, id) { 863 var js, fjs = d.getElementsByTagName( s )[0]; 864 if ( d.getElementById( id ) ) { 865 return; 866 } 867 js = d.createElement( s ); js.id = id; 868 js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; 869 fjs.parentNode.insertBefore( js, fjs ); 870 }(document, 'script', 'facebook-jssdk')); 871 872 /* 41. Clock */ 873 if ( $( 'body' ).hasClass( 'reendex_live_time' ) ) { 874 $.startTime = function () { 875 var today = new Date(); 876 var h = today.getHours(); 877 var m = today.getMinutes(); 878 var s = today.getSeconds(); 879 var suffix = h >= 12 ? " PM":" AM"; 880 if ( $( 'body' ).hasClass( 'reendex_time_in_twelve_format' ) ) { 881 h = ((h + 11) % 12) + 1; 882 m = $.checkTime( m ); 883 s = $.checkTime( s ) + suffix; 884 } else { 885 m = $.checkTime( m ); 886 s = $.checkTime( s ); 887 } 888 $( '#time' ).html( h + ":" + m + ":" + s ); 889 var t = setTimeout( function(){$.startTime()},500 ); 890 } 891 $.checkTime = function(i) { 892 if (i<10) {i = "0" + i}; // End if(). 893 return i; 894 } 895 $.startTime(); 896 } 897 898})(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.