‘; } function deleteExistingAds() { varadsSlots = $(‘.bm-widgets-ad’); adsSlots.each(function (index) { var ad = this googletag.destroySlots([window[‘slotWidgets’ + (index + 1)]]); ad.remove() }); } Функция lazyLoadAdWidgets (adToDisplay, InsertAdHere, divId, index) {вар adZone = adzone; вар sizeMapping = ”; вар adLoaded = ложь; window.scrollTo(window.scrollX, window.scrollY + 1); $(window).on(‘scroll’, function () { var adLazyLoaded = InsertAdHere.getBoundingClientRect(); var adWidth = adLazyLoaded.width; var adPlaceHolderCoords = getCoords(insertAdHere) var Margin = 0 if(adLazyLoaded.bottom <= window .innerHeight) { var adContainer = document.getElementById(divId).getBoundingClientRect(); var ajaxZone = document.getElementsByClassName('event-page-layout__replace-content') if (ajaxZone) { var ajaxZoneCoords = getCoords(ajaxZone)[0]) } var defaultTop = (ajaxZoneCoords) ? ajaxZoneCoords.top: 0 $(adToDisplay).css('top', (adPlaceHolderCoords.top + adLazyLoaded.height + 20 - defaultTop) + 'px'); если (window.enableFluidAds) { sizeMapping = [[300,250]'жидкость']; } else if (adWidth <728) { sizeMapping = [[300,250]]; InsertAdHere.style.margin = '0 0 290px 0'; } иначе если (adWidth < 970) { sizeMapping = [[728,90]]; insertAdHere.style.margin = '0 0 130px 0'; } else { sizeMapping = [[728,90],[970,90]]; insertAdHere.style.margin = '0 0 130px 0'; } if (!adLoaded) { adLoaded = true; window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function () { googletag.pubads().enableAsyncRendering(); googletag.pubads().collapseEmptyDivs(true); googletag.pubads().disableInitialLoad(); googletag.enableServices(); var mapping = googletag.sizeMapping().addSize([0, 0], sizeMapping).build(); window['slotWidgets-'+ index] = googletag.defineSlot("/5479/ctv.rds.ca/_" + adZone, sizeMapping, divId) .defineSizeMapping(mapping) .addService(googletag.pubads()) .setTargeting("pos", "widgets"); if (window.isMagniteEnabled) { function callAdserver(gptSlots) { if (pbjs.adserverCalled) return; pbjs.adserverCalled = true; googletag.pubads().refresh(gptSlots); }; pbjs.que.push(function() { pbjs.rp.requestBids({ callback: callAdserver, gptSlotObjects: JSON.stringify([divId]), sizeMappings: JSON.stringify([sizeMapping]) }); }); setTimeout(function() {callAdserver(JSON.stringify([divId]));}, 3500); } googletag.display(divId); googletag.pubads().refresh([window['slotWidgets-'+ index]]); }); } } }); }; function getCoords(elem) { var box = elem.getBoundingClientRect(); var body = document.body; var docEl = document.documentElement; var scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop; var scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft; var clientTop = docEl.clientTop || body.clientTop || 0; var clientLeft = docEl.clientLeft || body.clientLeft || 0; var top = box.top + scrollTop - clientTop; var left = box.left + scrollLeft - clientLeft; return { top: Math.round(top), left: Math.round(left) }; } function renderStandingsAds() { document.addEventListener('standingsWidgetRendered', function (e) { var tab = e.detail.tab var webComponent = document.querySelector('widgets-bms-league-standings'); var containers = webComponent.shadowRoot.querySelectorAll('.bms-league-standings__board'); deleteExistingAds(); if ((tab === 'wildcards' && standingsWidgets.displayWildcardAd) || (tab === 'conferences' && standingsWidgets.displayConferenceAd)) { var html = getAdHtml(0); $('.stats-widget__container--standings').append(html); var adContainer = $('#bm-widgets-ad-0'); var divId = 'leaderboard-ad-widget-0'; if ($(containers)[0]) { lazyLoadAdWidgets(adContainer, $(containers)[0], divId, (1)); } } else if(tab === 'divisions') { var displayAdsEach = standingsWidgets.displayAdsDivisions; var frequency = standingsWidgets.displayFrequencyDivisions; deleteExistingAds(); if (displayAdsEach > 0 && частота) { var i; for (i = 1; я <= частота; я++) {var html = getAdHtml(i); $('.stats-widget__container--standings').append(html); } if ((i - 1) === частота) { varadsContainer = $('.bm-widgets-ad'); вар счетчик = displayAdsEach; adsContainer.each(function (index) { if (index + 1 <= frequency) { var adContainer = $('#bm-widgets-ad-' + (index + 1)); var divId = 'leaderboard-ad-widget-' + (index + 1); if ($(containers)[count - 1]) { lazyLoadAdWidgets(adContainer, $(containers)[count - 1], divId, (index + 1)); } count += displayAdsEach; } }); } } } }); } function renderAds(params) { document.addEventListener(params.eventHandler, function (e) { var displayAdsEach = params.config.adsDisplay; var frequency = params.config.adsFrequency; var firstAdPosition = params.config.adsStart; deleteExistingAds(); if (displayAdsEach > 0 && частота) { var i; for (i = 1; я <= частота; я++) {var html = getAdHtml(i); $(params.container).append(html); } if ((i - 1) === частота) { var webComponent = document.querySelector(params.webcomComponent); вар контейнеры = webComponent.shadowRoot.querySelectorAll(params.containers); varadsContainer = $('.bm-widgets-ad'); вар счетчик = displayAdsEach; если (firstAdPosition) {count = firstAdPosition; }adsContainer.each(function (index) { if (index + 1 <= Frequency) { var adContainer = $('#bm-widgets-ad-' + (index + 1)); var divId = 'leaderboard-ad- виджет-' + (индекс + 1, если ($(контейнеры));[count - 1]) { lazyLoadAdWidgets(adContainer, $(containers)[count - 1]divId, (индекс + 1)); } Количество + = displayAdsEach; } }); } } }); } $(function () { var params; document.addEventListener('adsConfigurationsDefined', function (e) { if ($('.stats-widget__container--scores').length) { params = { eventHandler: 'scoresWidgetRendered', веб-компонент: 'widgets-bms-scores', контейнеры: '.bms-scores__container', контейнер: '.stats-widget__container--scores', конфигурация: ScoresWidgets } renderAds(params); else if ($('.stats-); widget__container--leaderboard').length) { params = { eventHandler: 'leaderBoardWidgetRendered', веб-компонент: 'widgets-bms-leaderboard', контейнеры: '.bms-leaderboard__board', контейнер: '.stats-widget__container--leaderboard', config: LeaderboardWidgets } renderAds(params); else if ($('.stats-widget__container--league-leaders').length) { params = { eventHandler: 'leagueLeadersWidgetRendered', веб-компонент: 'widgets-bms-league-leaders ', контейнеры: '.bms-leaders__container', контейнер: '.stats-widget__container--league-leaders', конфигурация: LeaderWidgets } renderAds(params); else if ($('.stats-widget__container--standings') .length) { renderStandingsAds() } else if (window.isSmartIdEnabled === 'true') { document.addEventListener('smartIdFlow', function () { renderAds(params) }) } }) }); #Результаты #MLB #РДС.ca

