var mobileAds = []; var desktopAds = []; var slots_default = {}; var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; var isSmallScreen = null; function hideAdSlot(slotId) { var slot = document.getElementById(slotId); if(slot === null){ return; } slot.style.display = 'none'; } function showAdSlot(slotId) { var slot = document.getElementById(slotId); if(slot === null){ return; } slot.removeAttribute('style'); } var switchAdsTo = function(){ var width = top.innerWidth || document.documentElement.clientWidth; if(isSmallScreen === null){isSmallScreen=(width >= 768);return '';} if (width >= 768 && isSmallScreen) { isSmallScreen = false; return 'desktop'; } if (width < 768 && !isSmallScreen) { isSmallScreen = true; return 'mobile'; } return ''; }; function onResize(){ var switchTo = switchAdsTo(); if(switchTo === ''){ return; } var showAds, hideAds = []; if(switchTo === 'mobile'){ showAds = mobileAds; hideAds = desktopAds; } if(switchTo === 'desktop'){ showAds = desktopAds; hideAds = mobileAds; } if(showAds.length > 0){ for (var i = 0; i < showAds.length; i++) { showAdSlot(showAds[i]); } for (var i = 0; i < hideAds.length; i++) { hideAdSlot(hideAds[i]); } adsLoadFunction(); } } function checkGoogleTagApi(){ if (window.googletag && googletag.apiReady) { adsLoadFunction(); setTimeout(function () { if (typeof lazyLoadFunc === "function") { lazyLoadFunc(); } }, 100); return; } setTimeout(function () { checkGoogleTagApi(); }, 100); } var SECONDS_TO_WAIT_AFTER_VIEWABILITY = 60; var SECONDS_TO_WAIT_AFTER_VIEWABILITY_ADHENCE = 30; googletag.cmd.push(function () { var stickySlotElementId = 'div-gpt-ad-1555778185332-0'; // Place Bottom Rail sticky element id here // Place Bottom Rail sticky element id here var targetSlot = '/1003244/GPT-Billboard'; var bottomAds = ['/1003244/desktop_leaderboard_adhesion', '/1003244/mobile_leaderboard_adhesion']; googletag.pubads().addEventListener('impressionViewable', function(event) { var slot = event.slot; if (bottomAds.includes(slot.getAdUnitPath())) { setTimeout(function() { googletag.pubads().refresh([slot]); }, SECONDS_TO_WAIT_AFTER_VIEWABILITY_ADHENCE * 1000); } if (slot.getSlotElementId() !== stickySlotElementId) { setTimeout(function() { googletag.pubads().refresh([slot]); }, SECONDS_TO_WAIT_AFTER_VIEWABILITY * 1000); } if(event.slot.getAdUnitPath() === targetSlot) { setTimeout(function() { var slotWrapper = document.getElementById(event.slot.getSlotElementId()).parentNode; slotWrapper.removeEventListener('scroll', scrollBillboard, false); slotWrapper.classList.add('ad-top-billboard-rendered'); slotWrapper.classList.remove('ad-top-billboard-init'); slotWrapper.removeAttribute('style'); }, 100); } }); googletag.pubads().addEventListener('slotRenderEnded', function(event) { if(event.slot.getAdUnitPath() === targetSlot) { setTimeout(function() { var slotWrapper = document.getElementById(event.slot.getSlotElementId()).parentNode; slotWrapper.classList.add('ad-top-billboard-loaded'); slotWrapper.removeEventListener('scroll', scrollBillboard, false); slotWrapper.classList.remove('ad-top-billboard-init'); slotWrapper.removeAttribute('style'); }, 100); } }); // Bottom Rail resfresh function var refreshTimeoutId; var refreshTimeout = 30; // Specify refresh interval in sec var visibilityPercent = 50; // Specify slot visibility percentage when refresh should occur. If current visibility is less no refresh happens. googletag.pubads().addEventListener('slotVisibilityChanged', function(event) { var slot = event.slot; if (slot.getSlotElementId() === stickySlotElementId) { if (event.inViewPercentage >= visibilityPercent) { if (refreshTimeoutId === undefined) { refreshTimeoutId = setTimeout(function() { googletag.pubads().refresh([slot]); refreshTimeoutId = undefined; }, refreshTimeout * 1000); } } else { clearTimeout(refreshTimeoutId); refreshTimeoutId = undefined; } } }); // Bottom Rail resfresh function ends googletag.pubads().disableInitialLoad(); googletag.pubads().collapseEmptyDivs(); googletag.enableServices(); }); function adsLoadFunction() { var adUnits = document.querySelectorAll("div.adSpace:not(.lazyLoadAd)"); var adUnitsLength = adUnits.length; var gptSlots; if (window.googletag && googletag.apiReady) { gptSlots = googletag.pubads().getSlots(); } for (var i = 0; i < adUnitsLength; i++) { var block = adUnits[i]; if(block.style.display === 'none'){ continue; } var slot = gptSlots.find( item => item.getSlotElementId() === block.id ); if (slot !== null && slot !== undefined) { googletag.cmd.push(function () { googletag.pubads().refresh([slot]); }); } } if (typeof lazyLoadFunc === "function") { window.onscroll = lazyLoadFunc; } } function scrollBillboard() { window.addEventListener('scroll', function(){ var billboardWrapper = document.getElementsByClassName('ad-top-billboard')[0]; if(!billboardWrapper || billboardWrapper.classList.contains('ad-top-billboard-rendered')){ return; } billboardWrapper.classList.add('ad-top-billboard-init'); }); } window.onload = function() { scrollBillboard(); var width = top.innerWidth || document.documentElement.clientWidth; if (width >= 768){ } else { } isSmallScreen = (width < 768); window.addEventListener("resize", onResize); checkGoogleTagApi(); // trackGoogleTagApiAndFetchUAM(); }; function trackGoogleTagApiAndFetchUAM(){ if (window.googletag && googletag.apiReady && window.googletag.pubadsReady) { fetchUam(); return; } setTimeout(function () { trackGoogleTagApiAndFetchUAM(); }, 100); } function fetchUam(){ var slots = googletag.pubads().getSlots(); if(slots.Length < 1){ return; } // var apstagSlots = []; for(var i in slots) { var slot = { slotID: slots[i].getSlotElementId(), slotName: slots[i].getAdUnitPath(), sizes: [] }; slots[i].getSizes().forEach(function(size) { if(typeof size != 'object'){ slot.sizes.push(size); return; } var currentSize = []; currentSize.push(size.getWidth()); currentSize.push(size.getHeight()); slot.sizes.push(currentSize); }); // apstagSlots.push(slot); } }