1/* WordPress loads jQuery in no-conflict mode. Keep the theme's long-standing 2 * `$` shorthand local to this script without loading a second jQuery runtime. */ 3var $ = jQuery; 4 5function toggleSecondDropdown() { 6 // Get the value of the main dropdown 7 var mainDropdown = document.getElementById("mainDropdown"); 8 var selectedOption = mainDropdown.options[mainDropdown.selectedIndex].value; 9 10 // Show or hide the second dropdown based on the selected option 11 var secondDropdown = document.getElementById("secondDropdown"); 12 secondDropdown.style.display = (selectedOption === "latest") ? "block" : "none"; 13 14 if (mainDropdown.value === "sort") { 15 // Reset second dropdown and show all posts 16 secondDropdown.style.display = "none"; 17 // Perform the action you need to display all posts, like reloading the page or triggering an AJAX call. 18 location.reload(); // This will reload the page and show all posts. 19 }else if(mainDropdown.value === "all") { 20 // Reset second dropdown and show all posts 21 secondDropdown.style.display = "none"; 22 // Perform the action you need to display all posts, like reloading the page or triggering an AJAX call. 23 location.reload(); // This will reload the page and show all posts. 24 } else { 25 // Show the second dropdown for category selection 26 secondDropdown.style.display = "block"; 27 // Perform any other actions you need when selecting other options. 28 } 29 30 } 31 32 33 34 jQuery(document).ready(function($) { 35 var currentUrl = window.location.pathname; 36 var menuParentSlug = currentUrl.split('/')[1].toLowerCase(); // Convert to lowercase 37 var mainSlug = $('input[name="main-slug"]').val(); 38 39 // This field only exists on templates that need manual menu highlighting. 40 if (typeof mainSlug !== 'string' || mainSlug.length === 0) { 41 return; 42 } 43 44 var slug = mainSlug.toLowerCase(); 45 46 $('.dl-site-header__menu, .main-menu .menu').find('a').each(function() { 47 // Get the text of the menu item and convert to lowercase for comparison 48 var menuItemText = $(this).text().toLowerCase(); 49 50 // Log menu item text for debugging 51 console.log(menuItemText); 52 53 // Check if the lowercase menu item text matches the lowercase menuParentSlug 54 if (menuItemText == slug) { 55 // console.log("Match found"); 56 $(this).parent().addClass("current-menu-item"); 57 } 58 }); 59 60 }) 61 62jQuery(document).ready(function ($) { 63 // Get URL Parameter 64 function getUrlParameter(name) { 65 name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); 66 var regex = new RegExp('[\\?&]' + name + '=([^&#]*)'); 67 var results = regex.exec(location.search); 68 return results === null ? null : decodeURIComponent(results[1].replace(/\+/g, ' ')); 69 } 70 71 // ========================== 72 // Watch=true Auto Play + Loop 73 // (text + image fade out together) 74 // ========================== 75 var watch = getUrlParameter('watch'); 76 if (watch === 'true') { 77 setTimeout(function () { 78 // --- Fade image AND text at the same time --- 79 $('.heroVideoCover img').fadeOut(750); 80 $('.featureTxt').fadeOut(750); 81 $('.titleCate').fadeOut(750); 82 $('.hero-banner .main-video a').addClass("bg-black"); 83 84 // --- Build the video URL and start it right away --- 85 var iframe = $('#video1 iframe'); 86 var currentSrc = iframe.attr('src'); 87 var dataSrc = iframe.attr('data-src'); 88 89 // If iframe is still about:blank then use data-src 90 if (!currentSrc || currentSrc.indexOf('about:blank') !== -1) { 91 currentSrc = dataSrc; 92 } 93 94 if (currentSrc) { 95 // Remove existing params if present 96 currentSrc = currentSrc.replace(/([?&])autoplay=1/g, ''); 97 currentSrc = currentSrc.replace(/([?&])loop=1/g, ''); 98 currentSrc = currentSrc.replace(/([?&])mute=[01]/g, ''); 99 100 var separator = currentSrc.indexOf('?') > -1 ? '&' : '?'; 101 currentSrc += separator + 'autoplay=1&loop=1&mute=0&rel=0'; 102 103 // YouTube requires a playlist param (same video ID) for loop to work 104 if (currentSrc.indexOf('youtube.com') > -1 || currentSrc.indexOf('youtube-nocookie.com') > -1) { 105 var idMatch = currentSrc.match(/embed\/([a-zA-Z0-9_-]{11})/); 106 if (idMatch && currentSrc.indexOf('playlist=') === -1) { 107 currentSrc += '&playlist=' + idMatch[1]; 108 } 109 } 110 111 iframe.attr('src', currentSrc); 112 } 113 114 // --- After 1400ms hide cover & show player --- 115 setTimeout(function () { 116 $('.heroVideoCover').hide(); 117 $('.heroVp').addClass("active"); 118 $('.single-directors .heroVp').addClass("heroVpProduction"); 119 $('.single-production .heroVp').addClass("heroVpProduction"); 120 $('.single-crew .heroVp').addClass("heroVpProduction"); 121 $('.single-video .heroVp').addClass("active"); 122 }, 1400); 123 }, 550); 124 } 125 126 // ========================== 127 // Homepage 128 // ========================== 129 $(".top4seemore0").click(function () { 130 $(".relatedsearchbtn1").click(); 131 }); 132 $(".top4seemore1").click(function () { 133 $(".relatedsearchbtn2").click(); 134 }); 135 $(".top4seemore2").click(function () { 136 $(".relatedsearchbtn3").click(); 137 }); 138 $(".top4seemore3").click(function () { 139 $(".relatedsearchbtn4").click(); 140 }); 141 $(".top4seemore").click(function () { 142 $(this).closest('.artistBox ul li').next().find('.relatedsearchbtn').click(); 143 }); 144}); 145 146 147jQuery(".tabs-inner .main-image").hover(function(){ 148 jQuery(this).parent().find(".main-content .tabcontent-gallery a").css("color","#828282"); 149}, function(){ 150 jQuery(this).parent().find(".main-content .tabcontent-gallery a").css("color",""); 151}); 152 153function getUrlParameter(name) { 154 name = name.replace(/[[]/, '\\[').replace(/[\]]/, '\\]'); 155 var regex = new RegExp('[\\?&]' + name + '=([^&#]*)'); 156 var results = regex.exec(location.search); 157 return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' ')); 158}; 159 160jQuery(document).ready(function ($) { 161 162 $('.thumbnail-slider .slick-slide').on('click', function() { 163 var index = $(this).data('slick-index'); 164 $('.latest-list.flex5b5').slick('slickGoTo', index); 165 }); 166 167 /* Video Detail Page Slider */ 168 var $thumSlider = $('.thumbnail-slider'); 169 var $mainSlider = $('.mainSlider'); 170 var $totalSlides = $('.total-slides'); 171 172 $thumSlider.on('init', function(event, slick) { 173 $thumSlider.find('.slick-slide').eq(0).addClass('current'); 174 }); 175 $thumSlider.slick({ 176 dots: false, 177 infinite: true, 178 speed: 300, 179 slidesToShow: 2, 180 slidesToScroll: 1, 181 autoplay: false, 182 // centerMode: true, 183 focusOnSelect: true, 184 arrows: true, 185 // asNavFor: $mainSlider, 186 responsive: [ 187 { 188 breakpoint: 1024, 189 settings: { 190 slidesToShow: 1, 191 slidesToScroll: 1, 192 infinite: true, 193 dots: false, 194 centerMode: true,
195 arrows: false, 196 focusOnSelect: true 197 } 198 }, 199 { 200 breakpoint: 600, 201 settings: { 202 slidesToShow: 1, 203 slidesToScroll: 1, 204 centerMode: true, 205 centerPadding: '60px', 206 } 207 }, 208 { 209 breakpoint: 480, 210 settings: { 211 slidesToShow: 1, 212 slidesToScroll: 1, 213 infinite: true, 214 dots: false, 215 centerMode: true, 216 centerPadding: '60px', 217 arrows: false, 218 focusOnSelect: true 219 } 220 } 221 ] 222 }); 223 224 $mainSlider.slick({ 225 slidesToShow: 1, 226 slidesToScroll: 1, 227 asNavFor: $thumSlider, 228 arrows: false, 229 fade: true 230}); 231 232// jQuery(".hero-banner .main-video > a").on("click", function(e) { 233// e.preventDefault(); // This prevents the default behavior of the anchor element 234// // Add your custom actions here or leave this function empty if you just want to prevent the default behavior 235// }); 236jQuery(document).on("click", "#playvideo, .play-video-trigger", function() { 237 238 jQuery('.heroVideoCover img').fadeOut(750); 239 jQuery('.featureTxt').hide(); 240 jQuery('.titleCate').hide(); 241 jQuery('.hero-banner .main-video a').addClass("bg-black"); 242 243 setTimeout(function(){ 244 // $('.heroVp').show(); 245 jQuery('.heroVideoCover').hide(); 246 $('.heroVp').addClass("active"); 247 $('.single-directors .heroVp').addClass("heroVpProduction"); 248 $('.single-production .heroVp').addClass("heroVpProduction"); 249 $('.single-crew .heroVp').addClass("heroVpProduction"); 250 $('.single-video .heroVp').addClass("active"); 251 }, 1400); 252 }); 253 254jQuery(document).on("keydown", ".play-video-trigger", function (event) { 255 if (event.key === "Enter" || event.key === " ") { 256 event.preventDefault(); 257 jQuery(this).trigger("click"); 258 } 259}); 260 261 262 // $('.heroVideoCover').click(function() { 263 // $('.titleCate').hide(); 264 // $('.heroVp').show(); 265 // }); 266 267 268 269 jQuery('.inSeries').on('click',function () { 270 if(!jQuery(this).hasClass("active")){ 271 272 var seriesIframe = jQuery(this).parent().find('.insVideo').find('iframe').first(); 273 var videoSrc = seriesIframe.attr('data-src') || seriesIframe.attr('src'); 274 $('#video1').find('iframe').attr('src', videoSrc); 275 jQuery('.heroVideoCover').fadeOut(750); 276 jQuery('.featureTxt').fadeOut(750); 277 $('.titleCate').hide(); 278 setTimeout(function(){ 279 // $('.heroVp').show(); 280 $('.heroVp').addClass("active"); 281 $('.single-directors .heroVp').addClass("heroVpProduction"); 282 $('.single-production .heroVp').addClass("heroVpProduction"); 283 $('.single-crew .heroVp').addClass("heroVpProduction"); 284 $('.single-video .heroVp').addClass("active"); 285 }, 750); 286 287 } 288 }) 289 290 jQuery('.inSeries').on('click',function () { 291 if(!jQuery(this).hasClass("active")){ 292 jQuery('#video1 iframe').attr('src', function(i, val) { 293 return val + '&autoplay=1'; // appending &autoplay=1 to the src attribute 294 }); 295 } 296 }) 297/*jQuery(document).on("click", "#playvideo", function() { 298 jQuery('.heroVp iframe').attr('src', function(i, val) { 299 return val + '&autoplay=1'; // appending &autoplay=1 to the src attribute 300 }); 301}); 302jQuery(document).on("click", "#playvideo", function() { 303 jQuery('#video1 iframe').attr('src', function(i, val) { 304 return val + '&autoplay=1'; // appending &autoplay=1 to the src attribute 305 }); 306});*/ 307jQuery(document).on("click", "#playvideo, .play-video-trigger", function () { 308 jQuery('#video1 iframe, .heroVp iframe').each(function () { 309 var src = this.getAttribute('src'), 310 data = this.getAttribute('data-src'); 311 if ((!src || src.indexOf('about:blank') === 0) && data) src = data; 312 if (src && src.indexOf('autoplay=1') === -1) 313 src += (src.indexOf('?') >
313 -1 ? '&' : '?') + 'autoplay=1'; 314 this.setAttribute('src', src); 315 }); 316}); 317 318 319 320jQuery('.inSeries').on('click',function () { 321 if(!jQuery(this).hasClass("active")){ 322 jQuery('.inSeries').removeClass("active"); 323 jQuery(this).addClass("active"); 324 jQuery('.videoThumHolder').find('a').removeClass('active'); 325 jQuery(this).find('a').addClass('active'); 326} 327}) 328 329 330 331jQuery(document).on("click", "section.bts-section-for-interview .main-bts-content .image", function () { 332 var $image = jQuery(this); 333 var $iframe = $image.find("iframe"); 334 335 $image.find("img").fadeOut(750); 336 $image.removeClass("play-icon"); 337 338 setTimeout(function () { 339 $iframe.addClass("active"); 340 }, 750); 341 342 // Source of truth: data-src (LiteSpeed lazyload) falling back to src. 343 var src = $iframe.attr("data-src") || $iframe.attr("src") || ""; 344 345 // Never act on the lazyload placeholder. 346 if ( ! src || 0 === src.indexOf("about:blank") ) { 347 return; 348 } 349 350 // Idempotent autoplay append (handles URLs with or without existing "?"). 351 if ( -1 === src.indexOf("autoplay=1") ) { 352 src += ( -1 !== src.indexOf("?") ? "&" : "?" ) + "autoplay=1"; 353 } 354 355 // Only reload the iframe if the src actually changes (prevents restart on re-click). 356 if ( $iframe.attr("src") !== src ) { 357 $iframe.attr("src", src); 358 } 359}); 360 361 362 363 364 365 366/* Video Detail Page Slider */ 367 368 369 // Open modal 370 // $(".btn-patron").click(function () { 371 // $("#myModal").css("display", "block"); 372 // $("body").addClass("modal-open"); 373 // }); 374 375 // Close modal 376 $("#closeModal").click(function () { 377 $("#myModal").css("display", "none"); 378 $("body").removeClass("modal-open"); 379 }); 380 381 // Close modal on outside click 382 $(window).click(function (e) { 383 if (e.target.id === "myModal") { 384 $("#myModal").css("display", "none"); 385 $("body").removeClass("modal-open"); 386 } 387 }); 388 389 390 391 /***** Script Name Here *****/ 392 393 var slickConfig = { 394 // mobileFirst: true, 395 slidesToShow: 3, 396 slidesToScroll: 1, 397 autoplay: false, 398 centerMode: false, 399 infinite: false, 400 initialSlide: 0, 401 arrows:false, 402 dots: false, 403 404 responsive: [ 405 406 { 407 breakpoint: 1025, 408 settings: { 409 slidesToShow: 3, 410 slidesToScroll: 1, 411 autoplay: false, 412 centerMode: false, 413 arrows:false, 414 dots: false, 415 } 416 }, 417 { 418 breakpoint: 767, 419 settings: { 420 slidesToShow: 2, 421 slidesToScroll: 1, 422 autoplay: false, 423 centerMode: false, 424 arrows:false, 425 dots: false, 426 } 427 }, 428 { 429 breakpoint: 560, 430 settings: { 431 slidesToShow: 1, 432 slidesToScroll: 1, 433 centerMode: false, 434 autoplay: false, 435 arrows:false, 436 dots: false, 437 } 438 }, 439 440 ] 441 }; 442 443 // Initialize Slick slider on document ready if the screen width is less than or equal to 992 444 const hm_slider = $(".latest-list.flex5b5"); 445 446function initSlider() { 447 if ($(window).innerWidth() <= 1024) { 448 if (!hm_slider.hasClass('slick-initialized')) { 449 hm_slider.slick(slickConfig); 450 } 451 } else { 452 if (hm_slider.hasClass('slick-initialized')) { 453 hm_slider.slick('unslick'); 454 } 455 } 456} 457 458initSlider(); 459 460 // Reinitialize the current page's slider on resize. The namespace 461 // prevents stale handlers accumulating after same-document visits. 462 $(window) 463 .off('resize.dlHomeSlider') 464 .on('resize.dlHomeSlider', initSlider); 465 466 467 /***** Script Name Here *****/ 468 // $(".btn-search-link").click(function(){ 469 // $(".search-submit").click(); 470 // }); 471 472 473 $(document).on('change', '#mainDropdown', function(){ 474 sortProjectItems($(this).val(), '.alm-listing', 'li.item'); 475 }); 476 477 $(document).on('change', '#mainDropdown_video', function(){ 478 sortProjectItems($(this).val(), '.list-of-tab', 'article.item'); 479 }); 480 481 function sortProjectItems(sortValue, containerSelector, itemSelector) { 482 var attribute = sortValue === 'az' ? 'ptext' : 'pdate'; 483 var order = sortValue === 'desc' ? 'desc' : 'asc'; 484 var $container = $(containerSelector); 485 var posts = $container.find(itemSelector).get(); 486 487 posts.sort(function(a, b) { 488 var aValue = $(a).data(attribute); 489 var bValue = $(b).data(attribute); 490 491 if($.isNumeric(aValue) && $.isNumeric(bValue)) { 492 aValue = parseFloat(aValue);
493 bValue = parseFloat(bValue); 494 } 495 496 if(order === "asc") { 497 return aValue < bValue ? -1 : (aValue > bValue ? 1 : 0); 498 } 499 500 return bValue < aValue ? -1 : (bValue > aValue ? 1 : 0); 501 }); 502 503 $container.append(posts); 504 } 505 506 507}); 508 509/* Production Detail Page Script */ 510 511 $(document).ready(function() { 512 513 // var locationList = $('#locationDiv ul'); 514 // var founderList = $('#founderEp ul'); 515 // var roster = $('#roster ul'); 516 517 518 }); 519 520/* Production Detail Page Script Close */ 521 522 523 524 525/***** Script Name Here *****/ 526function openCity(evt, cityName) { 527 var $button = $(evt.currentTarget); 528 var $section = $button.closest(".home-tab-section"); 529 530 if (!$section.length) { 531 return; 532 } 533 534 var tabBar = $section.find(".tab").get(0); 535 var tabBarTop = tabBar ? tabBar.getBoundingClientRect().top : null; 536 537 $section.find(".tabcontent").hide(); 538 $section.find(".tablinks").removeClass("active"); 539 $section.find(".tabcontent").filter(function () { 540 return this.id === cityName; 541 }).show(); 542 $button.addClass("active"); 543 544 // Keep the tab bar in the same viewport position while panels are swapped. 545 function restoreTabBarPosition() { 546 if (!tabBar || tabBarTop === null) { 547 return; 548 } 549 550 var movement = tabBar.getBoundingClientRect().top - tabBarTop; 551 if (Math.abs(movement) > 0.5) { 552 window.scrollBy(0, movement); 553 } 554 } 555 556 restoreTabBarPosition(); 557 window.requestAnimationFrame(restoreTabBarPosition); 558} 559 560 561 562 563jQuery(document).ready(function () { 564 function openCity(evt, cityName) { 565 var tabcontent = jQuery(".tabcontent-gallery"); 566 var tabcontentimg = jQuery(".tabcontent-gallery-img"); 567 tabcontent.hide(); 568 tabcontentimg.hide(); 569 570 var tablinks = jQuery(".tablinks-gallery"); 571 tablinks.removeClass("active"); 572 573 jQuery("[data-city='" + cityName + "']").show(); 574 jQuery(evt.currentTarget).addClass("active"); 575 } 576 577 // Set up click event for each button 578 jQuery(document).on("click",".tablinks-gallery", function (event) { 579 console.log("clicked"); 580 var cityName = jQuery(this).data("city"); 581 openCity(event, cityName); 582 }); 583}); 584 585 586 587 588$(document).ready(function () { 589 updateIndexes(); 590 591 $(".fancybox-infobar span[data-fancybox-index]").each(function () { 592 var index = parseInt($(this).text(), 10); 593 if (index < 10) { 594 $(this).text("0" + index); 595 } 596 }); 597 $(".fancybox-infobar span[data-fancybox-count]").each(function () { 598 var index = parseInt($(this).text(), 10); 599 if (index < 10) { 600 $(this).text("0" + index); 601 } 602 }); 603 604 605function initGallery() { 606 607 if ($(window).width() <= 767) { 608 609 $("[data-fancybox='gallery']").each(function () { 610 611 if (!$(this).attr("data-href")) { 612 $(this).attr("data-href", $(this).attr("href")); 613 } 614 615 $(this) 616 .removeAttr("data-fancybox") 617 .removeAttr("href") 618 .css("cursor", "default"); 619 }); 620 621 } else { 622 623 $("[data-href]").each(function () { 624 625 $(this) 626 .attr("href", $(this).attr("data-href")) 627 .attr("data-fancybox", "gallery"); 628 629 }); 630 631 if (!$("[data-fancybox='gallery']").hasClass("fb-init")) { 632 633 $("[data-fancybox='gallery']") 634 .addClass("fb-init") 635 .fancybox({ 636 637 smallBtn: true, 638 zoom: false, 639 640 animationEffect: "fade", 641 animationDuration: 400, 642 643 transitionEffect: "fade", 644 transitionDuration: 350, 645 646 clickContent: false, 647 648 iframe: { 649 preload: false, 650 }, 651 652 image: { 653 preload: true, 654 }, 655 656 btnTpl: { 657 smallBtn: 658 '<button type="button" data-fancybox-close class="fancybox-button fancybox-close-small" title="{{CLOSE}}">' + 659 '<img src="/wp-content/uploads/2024/01/Frame-1160.svg" alt="Close">' + 660 "</button>", 661 }, 662 663 tpl: { 664 arrowLeft: 665 '<button data-fancybox-prev class="fancybox-button fancybox-button--arrow_left" title="{{PREV}}"><div></div></button>', 666 667 arrowRight: 668 '<button data-fancybox-next class="fancybox-button fancybox-button--arrow_right" title="{{NEXT}}"><div></div></button>', 669 }, 670 671 onInit: function (instance) { 672 var $controls = $('<div class="dl-gallery-controls" aria-label="Gallery navigation"></div>'); 673 var $previous = instance.$refs.navigation.find('[data-fancybox-prev]'); 674 var $next = instance.$refs.navigation.find('[data-fancybox-next]'); 675 676 /* Fancybox normally positions these three pieces in t
676wo 677 * unrelated layers. Put the actual native controls and 678 * counter into one flex row so their alignment is structural. */ 679 $controls 680 .append($previous) 681 .append(instance.$refs.infobar) 682 .append($next); 683 684 instance.$refs.inner.append($controls); 685 }, 686 687 caption: function () { 688 return $(this).find("figcaption").html(); 689 }, 690 691 beforeLoad: function () { 692 updateIndexes(); 693 }, 694 695 afterLoad: function () { 696 updateIndexes(); 697 }, 698 699 beforeShow: function () { 700 701 $(".fancybox-inner > .fancybox-caption").css("opacity", "0"); 702 703 setTimeout(function () { 704 705 var contentWidth = $(".fancybox-slide--current .fancybox-content").width(); 706 var contentHeight = $(".fancybox-slide--current .fancybox-content").height(); 707 708 $(".fancybox-inner > .fancybox-caption").css({ 709 width: contentWidth, 710 height: contentHeight, 711 opacity: "1", 712 top: "50%", 713 transform: "translateY(-50%)", 714 "margin-top": "30px", 715 }); 716 717 }, 500); 718 } 719 720 }); 721 } 722 } 723} 724 725$(document).ready(function () { 726 727 initGallery(); 728 729 $(window).on("resize orientationchange", function () { 730 initGallery(); 731 }); 732 733}); 734 735$(document).ready(function () { 736 737 initGallery(); 738 739 $(window).on("resize orientationchange", function () { 740 initGallery(); 741 }); 742 743}); 744 745 746 747$(document).ready(function () { 748 749 initGallery(); 750 751 $(window).on("resize orientationchange", function () { 752 initGallery(); 753 }); 754 755}); 756 757 $(document).ready(function () { 758 initGallery(); 759 760 $(window).on("resize orientationchange", function () { 761 initGallery(); 762 }); 763 }); 764 765 function updateIndexes() { 766 $(".fancybox-infobar span[data-fancybox-index]").each(function () { 767 var index = parseInt($(this).text(), 10); 768 if (index < 10) { 769 $(this) 770 .hide() 771 .text("0" + index) 772 .show(); 773 } 774 }); 775 $(".fancybox-infobar span[data-fancybox-count]").each(function () { 776 var index = parseInt($(this).text(), 10); 777 if (index < 10) { 778 $(this) 779 .hide() 780 .text("0" + index) 781 .show(); 782 } 783 }); 784 785 // var imageWidth = $('.fancybox-slide--image .fancybox-content img.fancybox-image:nth-child(2)').width(); 786 // $('.fancybox-caption.fancybox-caption--separate.caption--bottom.caption--image').css('max-width', imageWidth + 'px'); 787 } 788 $(".awardImg").fancybox({ 789 buttons: ["close"], 790 loop: false, 791 protect: true, 792 zoom: false, 793 animationEffect: false, 794 clickContent: false, 795 btnTpl: { 796 smallBtn: 797 '<button type="button" data-fancybox-close class="fancybox-button fancybox-close-small" title="{{CLOSE}}">' + 798 '<img src="/wp-content/uploads/2024/01/Frame-1160.svg" alt="Close">' + 799 "</button>", 800 }, 801 802 tpl: { 803 tpl: { 804 closeBtn: 805 '<a title="Close" class="fancybox-item fancybox-close" href="javascript:;"></a>', 806 }, 807 }, 808 afterLoad: function (instance, current) { 809 instance.$refs.container.addClass("single-video-lightbox"); 810 }, 811 }); 812}); 813 814$(document).ready(function() { 815 $('section.bts-section-for-interview').each(function() { 816 if ($(this).next().hasClass('bts-section-for-interview')) { 817 $(this).addClass('has-padding-bottom'); 818 $(this).next().addClass('has-padding-top'); 819 } 820 }); 821 }); 822 823 824 825jQuery(document).ready(function () { 826 jQuery('.search-field').attr('placeholder', 'Search Directors\' Library'); 827 jQuery(document).on("click", "form.search-form label", function() { 828 console.log("clicked"); 829 jQuery('.search-field').val(""); 830 }); 831 832}); 833 834if ($('body.post-type-archive-frames').length || $('body.post-type-archive-bts').length || $('body.post-type-archive-interviews').length) { 835 836 837 838 var pType = ''; 839 var postsPerPage = 15; // Default value 840 841 if ($('body.post-type-archive-frames').length) { 842 pType = 'frames'; 843 postsPerPage = 16; 844 var page = 2; 845 846 var $loadMoreButton = $('#btnBTSF'); 847 var $loader = $('#loader'); // Loader element 848 $loader.hide(); 849 $loadMoreButton.text('See More'); 850 851 } else if ($('body.post-type-archive-bts').length) { 852 pType = 'bts'; 853 postsPerPage = 20; 854 var page = 2; 855 856 var $loadMoreButton = $('#btnBTSF'); 857 var $loader = $('#loader'); // Loader element 858 $loader.hide(); 859 $loadMoreButton.text('See More'); 860 861 } else if ($('body.post-type-archive-interviews').length) { 862 pType = 'interviews'; 863 postsPerPage = 15; 864 var page = 2; 865 866 var $loadMoreButton = $('#btnBTSF'); 867 var $loader = $('#loader'); // Loader element 868 $loader.hide(); 869 $loadMoreButton.text('See More'); 870 871 } 872 873 874 //jQuery(document).ready(function ($) { 875 876 var loading = false;
877 var $loadMoreButton = $('#btnBTSF'); 878 var $postsContainer = $('#primary'); 879 var $loader = $('#loader'); // Loader element 880 var $cpType = pType; 881 var scrollEnabled = false; 882 var $siteMain = $("#lmcFBTS"); 883 884 885 // jQuery('#main').addClass('active'); 886 887 // Function to load posts via AJAX 888 function loadPosts() { 889 if (!loading) { 890 loading = true; 891 $loader.show(); 892 $loadMoreButton.text('Loading...'); 893 $siteMain.addClass('active'); 894 895 $.ajax({ 896 url: custVar.ajax_url, 897 type: 'post', 898 data: { 899 action: 'load_more_posts_fbts', 900 page: page, 901 cpType: $cpType, 902 posts_per_page: postsPerPage 903 }, 904 success: function (response) { 905 var responseHtml = $.trim(response); 906 907 if (responseHtml && responseHtml !== '0') { 908 $postsContainer.append(responseHtml); 909 page++; 910 911 // Get all lazy images 912 // var $lazyImages = $(".lazy-img"); 913 // var imagesLoaded = 0; 914 915 } else { 916 scrollEnabled = false; 917 $loadMoreButton.hide(); 918 } 919 $loadMoreButton.text('See More'); 920 loading = false; 921 $loader.hide(); 922 $('.hide-section').show(); 923 $siteMain.removeClass('active'); 924 // $('section.b-top').css('opacity','1'); 925 // $('.latest-list.flex5b5').slick('refresh') 926 $('.see-more').removeClass("padding-bottom-90"); 927 initImgLazyLoad(); 928 } 929 }); 930 } 931 } 932 933 // $(".lazy-img").fadeIn(400); 934 935 // Load more posts on button click 936 $loadMoreButton.on('click', function () { 937 loadPosts(false); 938 }); 939 //}); 940} 941 942$(document).ready(function() { 943 $(document).ready(function() { 944 if ($(window).width() <= 768) { 945 $('.btn-watch').click(function() { 946 var src = $('#video1 iframe').attr('src') + '&allow="fullscreen"'; 947 $('#video1 iframe').attr('src', src); 948 }); 949 } 950 }); 951}); 952 953 954function hideShowElements() { 955 var mydummyList = document.querySelector('.mydummyList5'); 956 if (mydummyList) { 957 mydummyList.style.display = 'none'; 958 } 959 960 var latestList = document.querySelector('.loadall'); 961 if (latestList) { 962 latestList.classList.remove('display-none-sm'); 963 } 964} 965 966window.addEventListener('load', hideShowElements); 967 968window.addEventListener('resize', function() { 969 // Check screen width 970 if (window.innerWidth <= 1024) { 971 hideShowElements(); 972 } 973}); 974 975 976// Production detail 977 978 979 980document.addEventListener('DOMContentLoaded', function () { 981 var myList = document.getElementById('myList'); 982 var counter = document.getElementById('counter'); 983 updateCounter(); 984 985 function updateCounter() { 986 //var numberOfItems = myList.getElementsByTagName('li').length; 987 //counter.textContent = numberOfItems < 10 ? '0' + numberOfItems : numberOfItems; 988 } 989}); 990 991// Give selected Cognito form section headings stable, page-scoped hooks. 992function dlTagSubmitFormHeadings(root) { 993 var isSharedFormPage = document.body.classList.contains('page-id-62233') 994 || document.body.classList.contains('page-id-67410'); 995 996 if (!isSharedFormPage) { 997 return; 998 } 999 1000 var submitSectionHeadings = [ 1001 'Project Details', 1002 'Screening Link', 1003 'Project Description', 1004 'Technical Information',
1005 'Electronic Press Kit', 1006 'DIRECTORY', 1007 'Credits', 1008 'Crew Credits', 1009 'Ethics & Attribution', 1010 'Terms & Conditions', 1011 'Conduct', 1012 'Selection Criteria', 1013 'Release Details.' 1014 ]; 1015 1016 (root || document).querySelectorAll('.cog-html p').forEach(function (paragraph) { 1017 var headingText = paragraph.textContent.replace(/\u00a0/g, ' ').trim(); 1018 1019 if (submitSectionHeadings.indexOf(headingText) !== -1) { 1020 paragraph.classList.add('dl-submit-section-heading'); 1021 } 1022 }); 1023} 1024 1025document.addEventListener('DOMContentLoaded', function () { 1026 dlTagSubmitFormHeadings(document); 1027 1028 if ( 1029 document.body.classList.contains('page-id-62233') 1030 || document.body.classList.contains('page-id-67410') 1031 ) { 1032 new MutationObserver(function (mutations) { 1033 mutations.forEach(function (mutation) { 1034 mutation.addedNodes.forEach(function (node) { 1035 if (node.nodeType === 1) { 1036 dlTagSubmitFormHeadings(node); 1037 } 1038 }); 1039 }); 1040 }).observe(document.body, { childList: true, subtree: true }); 1041 } 1042}); 1043 1044 1045jQuery(function ($) { 1046 var homepageLoaders = [ 1047 { button: 'aVideos', postType: 'video' }, 1048 { button: 'filmTv', postType: 'video', categoryName: 'Film & Tv', categorySlug: 'film-tv' }, 1049 { button: 'vShorts', postType: 'video', categoryName: 'Shorts', categorySlug: 'shorts' }, 1050 { button: 'musicVideos', postType: 'video', categoryName: 'Music Videos', categorySlug: 'music-videos' }, 1051 { button: 'vCampaigns', postType: 'video', categoryName: 'Campaigns', categorySlug: 'campaigns' }, 1052 { button: 'vGallery', postType: 'video', categoryName: 'Galleries', categorySlug: 'galleries' }, 1053 { button: 'hInterviews', postType: 'interviews', categoryName: 'Interviews' }, 1054 { button: 'hBTS', postType: 'bts', categoryName: 'BTS' }, 1055 { button: 'hFrames', postType: 'frames', categoryName: 'FRAMES' } 1056 ]; 1057 1058 $('.home-tab-section .tablinks').on('click', function (event) { 1059 openCity(event, $(this).data('tab')); 1060 }); 1061 1062 $.each(homepageLoaders, function (_, config) { 1063 config.page = 2; 1064 1065 $('.' + config.button).on('click', function (event) { 1066 event.preventDefault(); 1067 1068 var $button = $(this); 1069 if ($button.hasClass('is-loading')) { 1070 return; 1071 } 1072 1073 $button.addClass('is-loading').text('Loading...'); 1074 $button.after( 1075 '<div class="homepage-tab-loader" style="width:100%;">' + 1076 '<img src="' + custVar.theme_url + '/assets/css/ajax-loader.gif" alt="">' + 1077 '</div>' 1078 ); 1079 1080 $.ajax({ 1081 url: custVar.ajax_url, 1082 type: 'POST', 1083 data: { 1084 action: 'load_more_seemore', 1085 postType: config.postType, 1086 catName: config.categoryName || '', 1087 catSlug: config.categorySlug || '', 1088 page: config.page 1089 } 1090 }).done(function (response) { 1091 $button.before(response); 1092 config.page++; 1093 $button.text('See More'); 1094 }).fail(function () { 1095 $button.text('Try Again'); 1096 }).always(function () { 1097 $button.removeClass('is-loading'); 1098 $button.siblings('.homepage-tab-loader').remove(); 1099 }); 1100 }); 1101 }); 1102}); 1103 1104 1105/*share button */ 1106$('.sharing .classic-heading').on('click', function () { 1107 // Find the closest '.sharing' element to the clicked '.classic-heading' 1108 var parentSharing = $(this).closest('.sharing'); 1109 1110 // Toggle 'active' class only on this '.sharing' element 1111 parentSharing.toggleClass('active'); 1112 1113 // Find the corresponding '.widget-area' within this '.sharing' element and toggle it 1114 parentSharing.find('.widget-area').toggle('slow'); 1115}); 1116 1117 1118 1119 1120// Detect Browser Script 1121 1122 1123var os 1124if (navigator.userAgent.indexOf('Mac OS X') != -1) { 1125 // console.log("mac"); 1126 var os = "Mac" 1127 // detectBrowser(os) 1128 $('body').addClass('mac-os') 1129} else { 1130 os = "Windows" 1131 // console.log("window"); 1132 // detectBrowser(os); 1133 $('body').addClass('window-os') 1134} 1135 1136 1137// Helper if element exist then call function 1138function isElementExist(_el, _cb) { 1139 var elem = document.querySelector(_el); 1140 1141 if (document.body.contains(elem)) { 1142 _cb(); 1143 } 1144} 1145 1146jQuery(window).on('load', function () { 1147 isElementExist(".initImg", initImgLazyLoad); 1148}) 1149 1150function initImgLazyLoad() { 1151 var images = document.querySelectorAll('.initImg'); 1152 1153 if (!window.IntersectionObserver) { 1154 [].forEach.call(images, function (item) { item.style.opacity = 1 }); 1155 } else { 1156 var isFirst = false;
1157 1158 var observer = new IntersectionObserver(function (entries, observer) { 1159 entries.forEach(function (entry) { 1160 var raf, time, lastFrame; 1161 1162 var speed = 0.025, value = 0; 1163 var step = 1 / speed; 1164 var bottom = entry.boundingClientRect.bottom; 1165 1166 if (!entry.isIntersecting) return; 1167 1168 // Check if the opacity is already 1 1169 if (entry.target.style.opacity === '1') { 1170 observer.unobserve(entry.target); // End observation if fully visible 1171 return; // Skip further processing for this image 1172 } 1173 1174 function loop(now) { 1175 lastFrame = performance.now(); 1176 time = 0; 1177 1178 raf = requestAnimationFrame(loop); 1179 1180 var deltaT = now - lastFrame; 1181 1182 if (deltaT < 160) { 1183 time += deltaT; 1184 1185 // Animation 1186 if (step >= 0) { 1187 step--; 1188 value += speed; 1189 } else { 1190 cancelAnimationFrame(raf); 1191 } 1192 1193 entry.target.style.opacity = value < 1 ? value.toFixed(2) : 1; 1194 } 1195 1196 lastFrame = now; 1197 } 1198 1199 // In viewport 1200 if (bottom >= 0 && entry.intersectionRatio >= 0.8) { 1201 setTimeout(function () { 1202 isFirst = true; 1203 loop(); 1204 }, isFirst ? 1 : 800); 1205 1206 observer.unobserve(entry.target); // End observation for this target 1207 } 1208 }); 1209 }, { 1210 root: null, 1211 rootMargin: "0px", 1212 threshold: [0, 0.5, 1] 1213 }); 1214 1215 // Observe each image 1216 images.forEach(function (img) { observer.observe(img); }); 1217 } 1218} 1219 1220// Share profiles and videos natively on touch devices, with a desktop copy fallback. 1221jQuery(document).on('click', '.copy-page-url', function () { 1222 var button = this; 1223 var pageUrl = window.location.href; 1224 var label = button.querySelector('span'); 1225 var originalLabel = button.getAttribute('data-label') || 'SHARE'; 1226 1227 function showCopiedState() { 1228 window.clearTimeout(button.copyStateTimer); 1229 button.style.width = button.getBoundingClientRect().width + 'px'; 1230 button.classList.remove('is-copied'); 1231 void button.offsetWidth; 1232 button.classList.add('is-copied'); 1233 if (label) { 1234 label.textContent = 'COPIED'; 1235 } 1236 button.setAttribute('aria-label', 'Page URL copied'); 1237 button.copyStateTimer = window.setTimeout(function () { 1238 button.classList.remove('is-copied'); 1239 if (label) { 1240 label.textContent = originalLabel; 1241 } 1242 button.style.width = ''; 1243 button.setAttribute('aria-label', 'Copy page URL'); 1244 }, 2000); 1245 } 1246 1247 function showCopyFallback() { 1248 window.prompt('Copy this page link:', pageUrl); 1249 } 1250 1251 function copyPageUrl() { 1252 if (navigator.clipboard && window.isSecureContext) { 1253 navigator.clipboard.writeText(pageUrl).then(showCopiedState).catch(showCopyFallback); 1254 return; 1255 } 1256 1257 var textArea = document.createElement('textarea'); 1258 textArea.value = pageUrl; 1259 textArea.setAttribute('readonly', ''); 1260 textArea.style.position = 'fixed'; 1261 textArea.style.opacity = '0'; 1262 document.body.appendChild(textArea); 1263 textArea.select(); 1264 1265 try { 1266 if (document.execCommand('copy')) { 1267 showCopiedState(); 1268 } else { 1269 showCopyFallback(); 1270 } 1271 } catch (error) { 1272 showCopyFallback(); 1273 } 1274 1275 document.body.removeChild(textArea); 1276 } 1277 1278 var prefersNativeShare = window.matchMedia('(hover: none) and (pointer: coarse)').matches; 1279 if (prefersNativeShare && navigator.share) { 1280 navigator.share({ 1281 title: document.title, 1282 url: pageUrl 1283 }).catch(function (error) { 1284 if (error.name !== 'AbortError') { 1285 copyPageUrl(); 1286 } 1287 }); 1288 return; 1289 } 1290 1291 copyPageUrl(); 1292});
1293// Keep mobile search categories in two independent, predictable columns. 1294function dlArrangeSuggestedTermColumns(root) { 1295 var navs = (root || document).querySelectorAll('.suggested-nav'); 1296 1297 navs.forEach(function (nav) { 1298 if (nav.querySelector(':scope > .suggested-column')) { 1299 return; 1300 } 1301 1302 var left = document.createElement('div'); 1303 var right = document.createElement('div'); 1304 left.className = 'suggested-column suggested-column-left'; 1305 right.className = 'suggested-column suggested-column-right'; 1306 1307 ['.suggested-director', '.suggested-format', '.suggested-festival'].forEach(function (selector) { 1308 var item = nav.querySelector(':scope > ' + selector); 1309 if (item) left.appendChild(item); 1310 }); 1311 1312 ['.suggested-location', '.suggested-production', '.suggested-record-label', '.suggested-agency'].forEach(function (selector) { 1313 var item = nav.querySelector(':scope > ' + selector); 1314 if (item) right.appendChild(item); 1315 }); 1316 1317 nav.appendChild(left); 1318 nav.appendChild(right); 1319 }); 1320} 1321 1322document.addEventListener('DOMContentLoaded', function () { 1323 dlArrangeSuggestedTermColumns(document); 1324 1325 var suggestedResults = document.querySelector('.suggested-results'); 1326 if (suggestedResults) { 1327 new MutationObserver(function () { 1328 dlArrangeSuggestedTermColumns(suggestedResults); 1329 }).observe(suggestedResults, { childList: true, subtree: true }); 1330 } 1331}); 1332 1333/* 1334 * Temporary Chrome/iOS navigation diagnostics. This is completely dormant 1335 * unless the current tab has first visited a URL containing 1336 * ?dl-chrome-debug=1. The flag and event history then persist in sessionStorage 1337 * across same-origin navigations so an iPhone test can capture the outgoing 1338 * page and the incoming page in one log. 1339 */ 1340(function dlChromeNavigationDiagnostics() { 1341 var enabledKey = 'dlChromeNavigationDebugEnabled'; 1342 var logKey = 'dlChromeNavigationDebugLog'; 1343 var query = new URLSearchParams(window.location.search); 1344 1345 try { 1346 if (query.get('dl-chrome-debug') === '1') { 1347 window.sessionStorage.setItem(enabledKey, '1'); 1348 window.sessionStorage.removeItem(logKey); 1349 } else if (query.get('dl-chrome-debug') === '0') { 1350 window.sessionStorage.removeItem(enabledKey); 1351 window.sessionStorage.removeItem(logKey); 1352 } 1353 1354 if (window.sessionStorage.getItem(enabledKey) !== '1') { 1355 return; 1356 } 1357 } catch (error) { 1358 return; 1359 } 1360 1361 function readLog() { 1362 try { 1363 return JSON.parse(window.sessionStorage.getItem(logKey) || '[]'); 1364 } catch (error) { 1365 return []; 1366 } 1367 } 1368 1369 function elementSummary(element) { 1370 if (!element || element === document.body) { 1371 return element === document.body ? 'body' : ''; 1372 } 1373 1374 var result = element.tagName ? element.tagName.toLowerCase() : ''; 1375 if (element.id) result += '#' + element.id; 1376 if (element.classList && element.classList.length) { 1377 result += '.' + Array.prototype.slice.call(element.classList, 0, 3).join('.'); 1378 } 1379 return result; 1380 } 1381 1382 function record(name, details) { 1383 var header = document.querySelector('#site-header'); 1384 var headerRect = header ? header.getBoundingClientRect() : null; 1385 var viewport = window.visualViewport; 1386 var entries = window.performance && window.performance.getEntriesByType 1387 ? window.performance.getEntriesByType('navigation') 1388 : []; 1389 var logs = readLog(); 1390 1391 logs.push({ 1392 event: name, 1393 at: Date.now(), 1394 perf: window.performance ? Math.round(window.performance.now()) : null, 1395 path: window.location.pathname + window.location.search, 1396 navigationType: entries[0] ? entries[0].type : null, 1397 scrollX: Math.round(window.scrollX), 1398 scrollY: Math.round(window.scrollY), 1399 innerHeight: Math.round(window.innerHeight), 1400 clientHeight: Math.round(document.documentElement.clientHeight), 1401 viewport: viewport ? { 1402 pageTop: Math.round(viewport.pageTop), 1403 offsetTop: Math.round(viewport.offsetTop), 1404 height: Math.round(viewport.height), 1405 scale: viewport.scale 1406 } : null, 1407 header: headerRect ? { 1408 top: Math.round(headerRect.top), 1409 bottom: Math.round(headerRect.bottom), 1410 height: Math.round(headerRect.height) 1411 } : null, 1412 active: elementSummary(document.activeElement), 1413 details: details || null 1414 }); 1415 1416 if (logs.length > 120) { 1417 logs = logs.slice(logs.length - 120); 1418 } 1419 1420 try { 1421 window.sessionStorage.setItem(logKey, JSON.stringify(logs)); 1422 } catch (error) { 1423 /* Diagnostic storage must never affect the live page. */ 1424 } 1425 } 1426 1427 function addCopyButton() { 1428 if (!document.body || document.getElementById('dl-copy-chrome-debug')) { 1429 return; 1430 } 1431 1432 var button = document.createElement('button'); 1433 button.id = 'dl-copy-chrome-debug'; 1434 button.type = 'button'; 1435 button.textContent = 'COPY DL DEBUG'; 1436 button.style.cssText = 'position:fixed;left:10px;bottom:10px;z-index:2147483647;padding:8px 10px;border:0;border-radius:2px;background:#1a1919;color:#fff;font:11px/1.2 sans-serif;letter-spacing:.02em;'; 1437 1438 button.addEventListener('click', function () { 1439 record('copy-debug'); 1440 var value = window.sessionStorage.getItem(logKey) || '[]'; 1441 1442 function copied() { 1443 button.textContent = 'COPIED'; 1444 window.setTimeout(function () { 1445 button.textContent = 'COPY DL DEBUG'; 1446 }, 1200); 1447 } 1448 1449 if (window.navigator.clipboard && window.isSecureContext) { 1450 window.navigator.clipboard.writeText(value).then(copied); 1451 return; 1452 } 1453 1454 var field = document.createElement('textarea'); 1455 field.value = value; 1456 field.setAttribute('readonly', ''); 1457 field.style.position = 'fixed'; 1458 field.style.opacity = '0'; 1459 document.body.appendChild(field); 1460 field.select(); 1461 document.execCommand('copy'); 1462 document.body.removeChild(field); 1463 copied(); 1464 }); 1465 1466 document.body.appendChild(button); 1467 } 1468 1469 var scrollQueued = false;
1470 function recordScroll(name) { 1471 if (scrollQueued) return; 1472 scrollQueued = true; 1473 window.requestAnimationFrame(function () { 1474 scrollQueued = false; 1475 record(name); 1476 }); 1477 } 1478 1479 record('script-ready', { 1480 userAgent: window.navigator.userAgent, 1481 chromeIosNativeNavigation: document.documentElement.classList.contains('dl-crios-native-navigation'), 1482 chromeIosSameDocumentNavigation: document.documentElement.classList.contains('dl-crios-same-document-navigation'), 1483 startViewTransition: typeof document.startViewTransition === 'function', 1484 pageSwapEvent: typeof window.PageSwapEvent === 'function' 1485 }); 1486 1487 document.addEventListener('touchstart', function (event) { 1488 var link = event.target && event.target.closest ? event.target.closest('a[href]') : null; 1489 record('touchstart', { href: link ? link.href : null }); 1490 }, { capture: true, passive: true }); 1491 1492 document.addEventListener('click', function (event) { 1493 var link = event.target && event.target.closest ? event.target.closest('a[href]') : null; 1494 record('click', { href: link ? link.href : null, prevented: event.defaultPrevented }); 1495 }, true); 1496 1497 document.addEventListener('visibilitychange', function () { 1498 record('visibilitychange', { state: document.visibilityState }); 1499 }); 1500 window.addEventListener('scroll', function () { recordScroll('window-scroll'); }, { passive: true }); 1501 window.addEventListener('beforeunload', function () { record('beforeunload'); }); 1502 window.addEventListener('pagehide', function (event) { record('pagehide', { persisted: event.persisted }); }); 1503 window.addEventListener('pageswap', function (event) { record('pageswap', { hasViewTransition: Boolean(event.viewTransition) }); }); 1504 window.addEventListener('pagereveal', function (event) { record('pagereveal', { hasViewTransition: Boolean(event.viewTransition) }); }); 1505 window.addEventListener('pageshow', function (event) { record('pageshow', { persisted: event.persisted }); }); 1506 window.addEventListener('load', function () { record('load'); }); 1507 1508 document.addEventListener('turbo:before-visit', function (event) { 1509 record('turbo-before-visit', { url: event.detail && event.detail.url ? event.detail.url.href : null }); 1510 }); 1511 document.addEventListener('turbo:before-render', function () { record('turbo-before-render'); }); 1512 document.addEventListener('turbo:render', function () { record('turbo-render'); }); 1513 document.addEventListener('turbo:load', function () { 1514 record('turbo-load'); 1515 addCopyButton(); 1516 }); 1517 1518 if (window.visualViewport) { 1519 window.visualViewport.addEventListener('scroll', function () { recordScroll('viewport-scroll'); }, { passive: true }); 1520 window.visualViewport.addEventListener('resize', function () { recordScroll('viewport-resize'); }, { passive: true }); 1521 } 1522 1523 if (document.readyState === 'loading') { 1524 document.addEventListener('DOMContentLoaded', function () { 1525 record('dom-content-loaded'); 1526 addCopyButton(); 1527 }); 1528 } else { 1529 record('dom-already-ready'); 1530 addCopyButton(); 1531 } 1532}());
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.