1/* eslint-env jquery */ 2jQuery("document").ready(function () { 3 jQuery(".navbar-toggler").click(function () { 4 jQuery("body").toggleClass("no-scroll"); 5 }); 6 var header = jQuery(".header-elements"); 7 var submitIcon = jQuery(".searchbox-icon"); 8 var inputBox = jQuery(".searchbox-input"); 9 var searchBox = jQuery(".site-search"); 10 var isOpen = false; 11 submitIcon.click(function () { 12 if (isOpen == false) { 13 header.addClass("search-active"); 14 //searchBox.addClass("searchbox-open"); 15 inputBox.focus(); 16 isOpen = true; 17 } else { 18 header.removeClass("search-active"); 19 //searchBox.removeClass("searchbox-open"); 20 inputBox.focusout(); 21 isOpen = false; 22 } 23 }); 24 submitIcon.mouseup(function () { 25 return false; 26 }); 27 searchBox.mouseup(function () { 28 return false; 29 }); 30 jQuery(document).mouseup(function () { 31 if (isOpen == true) { 32 jQuery(".searchbox-icon").css("display", "block"); 33 submitIcon.click(); 34 } 35 }); 36 jQuery(".show-map-btn").click(function () { 37 jQuery(".gmap-container").toggleClass("open"), 38 jQuery(this).toggleClass("up"), 39 jQuery(this).text( 40 "CLOSE MAP" === jQuery(this).text() ? "SHOW MAP" : "CLOSE MAP" 41 ); 42 }); 43 jQuery("#tribe-events").on( 44 "click", 45 "li.tribe-events-nav-next a, li.tribe-events-nav-previous a", 46 function () { 47 jQuery("html, body").animate( 48 { scrollTop: jQuery("#tribe-geo-map").offset().top }, 49 400 50 ); 51 } 52 ); 53 54 var navbarToggle = document.querySelector("#navbarSideCollapse"); 55 if (navbarToggle) { 56 navbarToggle.addEventListener("click", function () { 57 var offcanvas = document.querySelector(".offcanvas-collapse"); 58 var navbarButton = document.querySelector(".navbar-toggle"); 59 if (offcanvas) { 60 offcanvas.classList.toggle("open"); 61 } 62 if (navbarButton) { 63 navbarButton.classList.toggle("cross"); 64 } 65 document.querySelector("body").classList.toggle("no-scroll"); 66 }); 67 } 68 69 var kickoffCards = document.querySelectorAll( 70 ".fifa-activation .kickoff-card" 71 ); 72 if (kickoffCards.length) { 73 kickoffCards.forEach(function (card) { 74 var existingOverlay = card.querySelector(".kickoff-card__overlay"); 75 if (existingOverlay) { 76 existingOverlay.remove(); 77 } 78 79 var primaryAnchor = card.querySelector("h5 a[href]") || card.querySelector("a[href]"); 80 if (!primaryAnchor) { 81 return; 82 } 83 84 var destinationUrl = primaryAnchor.href; 85 var cardHeading = card.querySelector("h5"); 86 var headingText = cardHeading 87 ? cardHeading.textContent.trim() 88 : primaryAnchor.textContent.trim(); 89 90 primaryAnchor.setAttribute("data-card-link-source", "true"); 91 primaryAnchor.setAttribute("tabindex", "-1"); 92 primaryAnchor.setAttribute("aria-hidden", "true"); 93 primaryAnchor.style.pointerEvents = "none"; 94 95 var overlayLink = document.createElement("a"); 96 overlayLink.className = "kickoff-card__overlay"; 97 overlayLink.href = destinationUrl; 98 99 var targetAttr = primaryAnchor.getAttribute("target"); 100 if (targetAttr) { 101 overlayLink.setAttribute("target", targetAttr); 102 } 103 var relAttr = primaryAnchor.getAttribute("rel"); 104 if (relAttr) { 105 overlayLink.setAttribute("rel", relAttr); 106 } 107 108 if (headingText) { 109 overlayLink.textContent = headingText; 110 overlayLink.setAttribute("aria-label", headingText); 111 } else { 112 overlayLink.textContent = "Read more"; 113 overlayLink.setAttribute("aria-label", "Read more about this FIFA activation"); 114 } 115 116 card.appendChild(overlayLink); 117 }); 118 } 119 120 var kickoffCardsSecond = document.querySelectorAll( 121 ".fifa-activation-2 .wp-block-column" 122 ); 123 if (kickoffCardsSecond.length) { 124 kickoffCardsSecond.forEach(function (card) { 125 card.style.cursor = "pointer"; 126 127 var existingOverlay = card.querySelector(".kickoff-card__overlay"); 128 if (existingOverlay) { 129 existingOverlay.remove(); 130 } 131 132 var primaryAnchor = card.querySelector("h5 a[href]") || card.querySelector("a[href]"); 133 if (!primaryAnchor) { 134 return; 135 } 136 137 var destinationUrl = primaryAnchor.href; 138 var heading = card.querySelector("h5"); 139 var headingText = heading ? heading.textContent.trim() : primaryAnchor.textContent.trim(); 140 141 primaryAnchor.setAttribute("tabindex", "-1"); 142 primaryAnchor.setAttribute("aria-hidden", "true"); 143 primaryAnchor.style.pointerEvents = "none"; 144 145 var overlayLink = document.createElement("a"); 146 overlayLink.className = "kickoff-card__overlay"; 147 overlayLink.href = destinationUrl; 148 overlayLink.textContent = headingText || "Read more"; 149 overlayLink.setAttribute( 150 "aria-label", 151 headingText || "Read more about this FIFA activation" 152 ); 153 154 var targetAttr = primaryAnchor.getAttribute("target"); 155 if (targetAttr) { 156 overlayLink.setAttribute("target", targetAttr); 157 } 158 var relAttr = primaryAnchor.getAttribute("rel"); 159 if (relAttr) { 160 overlayLink.setAttribute("rel", relAttr); 161 } 162 163 card.appendChild(overlayLink); 164 }); 165 } 166 167 var translateEl = jQuery(".translate-toggle"); 168 if (translateEl.length) { 169 translateEl.on("click", function (e) { 170 if (jQuery(e.target).is("select, option")) { 171 return; 172 } 173 var $this = jQuery(this); 174 translateEl.not($this).removeClass("translate-active"); 175 $this.toggleClass("translate-active"); 176 }); 177 jQuery(document).on("click", function (e) { 178 if (!jQuery(e.target).closest(".translate-toggle").length) { 179 translateEl.removeClass("translate-active"); 180 } 181 }); 182 183 function placeOomphWidget() { 184 var widget = document.getElementById("oomph-translate-widget"); 185 if (!widget) return; 186 var isMobile = window.matchMedia("(max-width: 640px)").matches; 187 var mobileDrop = document.querySelector(".translate-dropdown-mobile"); 188 if (!mobileDrop) return; 189 190 if (isMobile && widget.parentNode !== mobileDrop) { 191 mobileDrop.appendChild(widget); 192 } else if (!isMobile && widget.closest(".translate-dropdown-mobile")) { 193 var desktopToggle = document.querySelector(".header-elements .translate-toggle"); 194 if (desktopToggle) { 195 desktopToggle.appendChild(widget); 196 } 197 } 198 } 199 200 var oomphCheck = setInterval(function () { 201 var w = document.getElementById("oomph-translate-widget"); 202 if (w && w.querySelector("select")) { 203 clearInterval(oomphCheck); 204 placeOomphWidget(); 205 window.addEventListener("resize", placeOomphWidget); 206 } 207 }, 500); 208 setTimeout(function () { clearInterval(oomphCheck); }, 15000); 209 } 210 211 var desktopHero = document.querySelector(".fifa-hero-method-2"); 212 var mobileHero = document.querySelector(".fifa-hero-mobile"); 213 if (desktopHero && mobileHero) { 214 var desktopHeroImage = desktopHero.querySelector( 215 "img.wp-block-cover__image-background" 216 ); 217 var mobileHeroImage = mobileHero.querySelector(".fifa-hero-mobile__image"); 218 if (desktopHeroImage && mobileHeroImage) { 219 var heroSrc = desktopHeroImage.getAttribute("data-lazy-src") || 220 desktopHeroImage.getAttribute("data-src") || 221 desktopHeroImage.getAttribute("src"); 222 if (heroSrc && !heroSrc.startsWith("data:")) { 223 mobileHeroImage.setAttribute("src", heroSrc); 224 } 225 var heroAlt = desktopHeroImage.getAttribute("alt") || ""; 226 mobileHeroImage.setAttribute("alt", heroAlt); 227 } 228 229 var desktopHeroHeading = desktopHero.querySelector("h1, h2"); 230 var mobileHeroHeading = mobileHero.querySelector("h1"); 231 if (desktopHeroHeading && mobileHeroHeading) { 232 mobileHeroHeading.textContent = desktopHeroHeading.textContent.trim(); 233 } 234 235 var desktopHeroParagraph = desktopHero.querySelector("p"); 236 var mobileHeroParagraph = mobileHero.querySelector("p"); 237 if (desktopHeroParagraph && mobileHeroParagraph) { 238 mobileHeroParagraph.textContent = desktopHeroParagraph.textContent.trim(); 239 mobileHeroParagraph.style.fontFamily = "'Sofia Pro', sans-serif"; 240 mobileHeroParagraph.style.fontWeight = "700"; 241 mobileHeroParagraph.style.fontSize = "20px"; 242 mobileHeroParagraph.style.lineHeight = "28px"; 243 mobileHeroParagraph.style.letterSpacing = "0"; 244 } 245 } 246 247 // FIFA blog intro: Extract first paragraph to intro section 248 var fifaBlogIntro = document.querySelector(".fifa-blog-intro"); 249 var fifaBlogFirstParaWrapper = document.querySelector(".fifa-blog-first-paragraph-wrapper"); 250 var blogContent = document.querySelector(".blog-content .entry-content"); 251 252 if (fifaBlogIntro && fifaBlogFirstParaWrapper && blogContent) { 253 var firstParagraph = blogContent.querySelector("p:first-of-type"); 254 if (firstParagraph && !fifaBlogFirstParaWrapper.querySelector("p")) { 255 var clonedParagraph = firstParagraph.cloneNode(true); 256 fifaBlogFirstParaWrapper.appendChild(clonedParagraph); 257 firstParagraph.style.display = "none"; 258 } 259 } 260});
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.