{"version":3,"file":"tgCommon.8c7fb6a7886f40a0e382.min.js","mappings":"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IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAMA,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAMA,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAA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","sources":["webpack://tg/./Assets/Js/todays-golfer/adverts/advert.js","webpack://tg/./Assets/Js/todays-golfer/adverts/skins.js","webpack://tg/./Assets/Js/todays-golfer/adverts/slotSettings.js","webpack://tg/./Assets/Js/todays-golfer/base-page.js","webpack://tg/./Assets/Js/todays-golfer/ui/grid-heights.js","webpack://tg/./Assets/Js/todays-golfer/ui/layout.js","webpack://tg/./Assets/Js/todays-golfer/ui/menu.js","webpack://tg/./Assets/Js/todays-golfer/ui/sticky.js","webpack://tg/./Assets/Js/todays-golfer/utils/admiral-targeting.js","webpack://tg/./Assets/Js/todays-golfer/utils/affiliate-links.js","webpack://tg/./Assets/Js/todays-golfer/utils/analytics.js","webpack://tg/./Assets/Js/todays-golfer/utils/config.js","webpack://tg/./Assets/Js/todays-golfer/utils/covatic.js","webpack://tg/./Assets/Js/todays-golfer/utils/jquery-extensions.js","webpack://tg/./Assets/Js/todays-golfer/utils/logger.js","webpack://tg/./Assets/Js/todays-golfer/utils/permutive.js","webpack://tg/./Assets/Js/todays-golfer/utils/sourcepoint.js","webpack://tg/./Assets/Js/todays-golfer/utils/timer.js","webpack://tg/./Assets/Js/todays-golfer/utils/vendor-consent.js","webpack://tg/./Assets/Js/todays-golfer/watchers/height-watcher.js","webpack://tg/./Assets/Js/todays-golfer/watchers/screen-size-watcher.js","webpack://tg/./Assets/Js/vendors/sourcepoint/bootstrap.js","webpack://tg/./Assets/Js/vendors/waypoints/jquery.waypoints.min.js","webpack://tg/./bower_components/foundation/js/foundation/foundation.offcanvas.js"],"sourcesContent":["'use strict';\n\nrequire('../utils/jquery-extensions.js');\n\nvar $ = require('jquery');\nvar adSlotSettings = require('./slotSettings.js');\nvar layout = require('../ui/layout.js');\nvar logger = require('../utils/logger.js');\nvar sticky = require('../ui/sticky.js');\nvar timer = require('../utils/timer.js');\nvar config = require('../utils/config.js');\nvar analytics = require('../utils/analytics.js');\n\nvar classNames = {\n\tsiteRoot: 'site-root',\n\ttopAd: 'top-ad',\n\ttopAdContainer: 'top-ad-container'\n};\n\nvar modifierNames = {\n\tloaded: 'loaded',\n\tviewed: 'viewed'\n};\n\nvar googletag;\n\nvar adSlots = {};\nvar definedSlots = [];\nvar slotSettings = adSlotSettings.slotSettings;\n\n// Note that no ad provider scripts are currently implemented but leaving the mechanism in place in case they become required again\nvar providers = [];\nvar providerEventDetails = {};\n\nvar adConfig;\n\nvar events = {\n\tinit: 'onInit',\n\tdefineSlot: 'onDefineSlot',\n\trequestAds: 'onRequestAds',\n\tslotTargeting: 'onSlotTargeting'\n};\n\nvar mpuAds = [];\nvar definedAdSlots = [];\n\nfunction setVisibleMpuAds() {\n\tvar numOfVisibleMpuAds = $('.mpu-ad:visible').toArray();\n\n\tfor (var i = 0; i <= numOfVisibleMpuAds.length - 1; i++) {\n\t\tmpuAds.push(\n\t\t\t{\n\t\t\t\tid: numOfVisibleMpuAds[i].id,\n\t\t\t\tsizes: slotSettings.mpu.sizes\n\t\t\t}\n\t\t);\n\t}\n}\n\nfunction isSlotVisible(slotId) {\n\treturn $('#' + slotId).is(':visible');\n}\n\nfunction resizeStickyLeaderboard(size) {\n\tif (!size) {\n\t\treturn;\n\t}\n\n\tvar $leaderboardAd = $('#' + slotSettings.leaderboard1.id);\n\t$leaderboardAd.css('width', size[0]);\n\t$leaderboardAd.css('height', size[1]);\n}\n\nvar callbacks = {\n\trequestInitialAdsCallback: function () {\n\t\tgoogletag.cmd.push(function () {\n\t\t\tlogger.debug('GAM: Load initial ads - after ' + logger.secondsSincePageStart());\n\t\t\tfor (var i = 0; i < definedSlots.length; i++) {\n\t\t\t\tgoogletag.display(definedSlots[i]);\n\t\t\t}\n\t\t\t\n\t\t\tgoogletag.pubads().refresh(definedAdSlots);\n\t\t});\n\n\t\tlogger.debug('GAM: Defined initial slots - after ' + logger.secondsSincePageStart());\n\t},\n\n\tloadAdsCallback: function () {\n\t\tgoogletag.cmd.push(function () {\n\t\t\tlogger.debug('GAM: Reload ads');\n\t\t\t\n\t\t\tgoogletag.pubads().refresh(definedAdSlots);\n\t\t});\n\t},\n\n\tloadInfiniteEditorialAdsCallback: function () {\n\t\tgoogletag.cmd.push(function () {\n\t\t\t//remove overylay from definedAdSlots\n\t\t\tvar adSlots = definedAdSlots.filter(function (item) {return item.id !== slotSettings.overlay; });\n\t\t\tgoogletag.pubads().refresh(adSlots);\n\t\t});\n\t},\n\n\tloadGalleryAdsCallback: function () {\n\t\tgoogletag.cmd.push(function () {\n\t\t\tlogger.debug('GAM: Reload Gallery ad');\n\t\t\tvar slotsToLoad = [adSlots.mpuGallery];\n\t\t\tgoogletag.pubads().refresh(slotsToLoad);\n\t\t});\n\t}\n};\n\nvar gamEventHandlers = {\n\tonSlotOnLoad: {\n\t\t'leaderboard-1': function () {\n\t\t\t$('#' + slotSettings.leaderboard1.id).addBemClass(classNames.topAdContainer, classNames.topAd, modifierNames.loaded);\n\t\t}\n\t},\n\tonSlotRenderEnded: {\n\t\t'leaderboard-1': function (event) {\n\t\t\tresizeStickyLeaderboard(event.size);\n\t\t}\n\t},\n\tonImpressionViewable: {\n\t\t'leaderboard-1': function () {\n\t\t\t$('#' + slotSettings.leaderboard1.id).addBemClass(classNames.topAdContainer, classNames.topAd, modifierNames.viewed);\n\t\t\tsticky.unsetStickyLeaderboard();\n\t\t}\n\t}\n};\n\nfunction providerComplete(eventId, providerId) {\n\t/*jshint validthis: true */\n\n\tvar eventDetails = providerEventDetails[eventId];\n\tif (!eventDetails) {\n\t\t// Must have timed out and removed the event already\n\t\treturn false;\n\t}\n\n\ttimer.pause(eventDetails.timeout);\n\t\n\tvar index = -1;\n\teventDetails.providers.some(function (element, i) {\n\t\tif (element.id === providerId) {\n\t\t\tindex = i;\n\t\t\treturn true;\n\t\t}\n\t});\n\n\tif (index >= 0) {\n\t\teventDetails.providers[index].isComplete = true;\n\t}\n\n\tvar allComplete = eventDetails.providers.every(function (item) {\n\t\treturn item.isComplete === true;\n\t});\n\n\tif (allComplete) {\n\t\tdelete providerEventDetails[eventId];\n\n\t\tif (eventDetails.callback && $.isFunction(eventDetails.callback)) {\n\t\t\ttimer.cancel(eventDetails.timeout);\n\t\t\tlogger.debug('GAM: All providers complete');\n\t\t\teventDetails.callback.apply(this, eventDetails.arguments);\n\t\t}\n\t} else {\n\t\ttimer.resume(eventDetails.timeout);\n\t}\n}\n\nfunction providerTimeout(eventId) {\n\t/*jshint validthis: true */\n\tvar eventDetails = providerEventDetails[eventId];\n\n\tdelete providerEventDetails[eventId];\n\n\tif (eventDetails.callback && $.isFunction(eventDetails.callback)) {\n\t\tlogger.debug('GAM: Provider timeout');\n\t\teventDetails.callback.apply(this, eventDetails.arguments);\n\t}\n}\n\n// Note that no ad provider scripts are currently implemented but leaving the mechanism in place in case they become required again\nfunction fireProviderEvent(event, eventData, callback, args) {\n\tvar eventId = event + '_' + Date.now();\n\tvar eventProviders = providers.filter(function (provider) {\n\t\treturn provider[event];\n\t});\n\n\tif (callback) {\n\t\tvar eventDetails = {\n\t\t\teventId: eventId,\n\t\t\tcallback: callback,\n\t\t\targuments: args,\n\t\t\tproviders: eventProviders.map(function (provider) {\n\t\t\t\tvar result = {\n\t\t\t\t\tid: provider.getId(),\n\t\t\t\t\tisComplete: false\n\t\t\t\t};\n\n\t\t\t\treturn result;\n\t\t\t})\n\t\t};\n\n\t\tproviderEventDetails[eventId] = eventDetails;\n\n\t\t// If we have no providers, don't bother waiting, just invoke the timeout\n\t\tif (eventProviders.length > 0) {\n\t\t\tproviderEventDetails[eventId].timeout = timer.begin(function () {\n\t\t\t\tproviderTimeout(eventId);\n\t\t\t}, adConfig.bidProviderTimeout > 0 ? adConfig.bidProviderTimeout : 5000);\n\t\t} else {\n\t\t\tproviderTimeout(eventId);\n\t\t\treturn;\n\t\t}\n\t}\n\n\tvar data = {\n\t\teventId: eventId,\n\t\teventData: eventData,\n\t\tonCompleteCallback: providerComplete\n\t};\n\n\teventProviders.forEach(function (provider) {\n\t\tprovider[event](data);\n\t});\n}\n\nfunction setVisibility($context) {\n\t// add or remove ID attribute based on whether ad is visible or not so there are no
tags with duplicate IDs\n\t$('.advert[data-id]', $context).each(function () {\n\t\tvar $adContainer = $(this);\n\t\tif ($adContainer.parent().is(':visible')) {\n\t\t\tvar dataVariable = 'data-id';\n\n\t\t\t$adContainer.attr('id', $adContainer.attr(dataVariable));\n\t\t} else {\n\t\t\t$adContainer.removeAttr('id');\n\t\t}\n\t});\n}\n\n// Call this within a googletag.cmd.push function\nfunction setTargeting() {\n\n\tfor (var key in adConfig.targetingKeyValues) {\n\t\tif (adConfig.targetingKeyValues.hasOwnProperty(key)) {\n\t\t\tvar value = adConfig.targetingKeyValues[key];\n\n\t\t\tgoogletag.pubads().setTargeting(key, [value]);\n\t\t}\n\t}\n\n\tgoogletag.pubads().setTargeting('pageview_id', config.pageViewId);\n\n\tvar paidTrafficValue = 'no';\n\t\n\tif (config.ppcTrackingParams) {\n\t\tpaidTrafficValue = 'yes';\n\n\t\tvar params = config.ppcTrackingParams;\n\t\tvar paidCampaignValue = `${params.utmMedium}|${params.utmSource}|${params.trackingIdName},${params.trackingId}`;\n\t\tgoogletag.pubads().setTargeting('paidcampaign', paidCampaignValue);\n\t}\n\t\t\n\tgoogletag.pubads().setTargeting('paidtraffic', paidTrafficValue);\n\n\tlogger.debug('GAM: Targetting set - after ' + logger.secondsSincePageStart());\n}\n\n// Call this within a googletag.cmd.push function\nfunction defineAdSlot(adSlot) {\n\tvar slotSize = layout.isMobile() ? adSlot.sizes.mobile : adSlot.sizes.desktop;\n\tvar adUnitPath = '/24156345/' + adConfig.site + '/' + adConfig.sectionName;\n\n\tvar slot = googletag.defineSlot(adUnitPath, slotSize, adSlot.id)\n\t\t.setTargeting('position', [adSlot.id]);\n\n\tfireProviderEvent(events.slotTargeting, slot);\n\n\tslot.addService(googletag.pubads());\n\n\tif (adSlot.sizes.sizeMapping) {\n\t\tslot.defineSizeMapping(adSlot.sizes.sizeMapping);\n\t}\n\n\tdefinedSlots.push(adSlot.id);\n\treturn slot;\n}\n\nfunction defineAdSlots() {\n\tsetVisibleMpuAds();\n\n\tif (mpuAds.length > 0) {\n\t\tmpuAds.forEach(function (adSlot) {\n\t\t\tfireProviderEvent(events.defineSlot, adSlot);\n\t\t});\n\t}\n\n\tfireProviderEvent(events.defineSlot, slotSettings.leaderboard1);\n\tfireProviderEvent(events.defineSlot, slotSettings.inlineFooter);\n\tfireProviderEvent(events.defineSlot, slotSettings.overlay);\n\n\tif (isSlotVisible(slotSettings.gumGum.id)) {\n\t\tfireProviderEvent(events.defineSlot, slotSettings.gumGum);\n\t}\n\n\tif (isSlotVisible(slotSettings.seedTag.id)) {\n\t\tfireProviderEvent(events.defineSlot, slotSettings.seedTag);\n\t}\n\n\tgoogletag.cmd.push(function () {\n\t\tlogger.debug('GAM: Starting initial slot definition - after ' + logger.secondsSincePageStart());\n\n\t\tadSlots.leaderboard1 = defineAdSlot(slotSettings.leaderboard1);\n\t\tadSlots.inlineFooter = defineAdSlot(slotSettings.inlineFooter);\n\t\tadSlots.overlay = defineAdSlot(slotSettings.overlay);\n\t\tdefinedAdSlots.push(adSlots.leaderboard1);\n\t\tdefinedAdSlots.push(adSlots.inlineFooter);\n\t\tdefinedAdSlots.push(adSlots.overlay);\t\t\n\n\t\tif (isSlotVisible(slotSettings.gumGum.id)) {\n\t\t\tadSlots.gumGum = defineAdSlot(slotSettings.gumGum);\n\t\t\tdefinedAdSlots.push(adSlots.gumGum);\n\t\t}\n\n\t\tif (isSlotVisible(slotSettings.seedTag.id)) {\n\t\t\tadSlots.seedTag = defineAdSlot(slotSettings.seedTag);\n\t\t\tdefinedAdSlots.push(adSlots.seedTag);\n\t\t}\n\n\t\tif (mpuAds.length > 0) {\n\t\t\tmpuAds.forEach(function (adSlot) {\n\t\t\t\tvar mpuAdSlot = defineAdSlot(adSlot);\n\t\t\t\tdefinedAdSlots.push(mpuAdSlot);\n\t\t\t});\n\t\t} \n\n\t\tsetTargeting();\n\n\t\tgoogletag.pubads().enableSingleRequest();\n\n\t\tgoogletag.pubads().enableLazyLoad({\n\t\t\tfetchMarginPercent: 25,\n\t\t\trenderMarginPercent: 5,\n\t\t\tmobileScaling: 2.0\n\t\t});\n\n\t\tgoogletag.cmd.push(function () {\n\t\t\t// _pdfps stands for Permutive DFP Storage\n\t\t\tif (googletag.pubads().getTargeting('permutive').length === 0) {\n\t\t\t\tvar keyValuePairs = window.localStorage.getItem('_pdfps');\n\t\t\t\tgoogletag.pubads().setTargeting('permutive', keyValuePairs ? JSON.parse(keyValuePairs) : []);\n\t\t\t}\n\t\t});\n\n\t\tgoogletag.cmd.push(function () {\n\t\t\tvar vendorName = 'covatic';\n\t\t\tif (googletag.pubads().getTargeting(vendorName).length === 0) {\n\t\t\t\tvar keyValuePairs = window.localStorage.getItem('_audienceProfile');\n\t\t\t\tgoogletag.pubads().setTargeting(vendorName, keyValuePairs ? keyValuePairs : []);\n\t\t\t}\n\t\t});\n\n\t\tgoogletag.pubads().addEventListener('slotOnload', function (event) {\n\t\t\tvar slotElementId = event.slot.getSlotElementId();\n\t\t\tlogger.debug('GAM: slotOnLoad fired for slot ' + slotElementId + ' - after ' + logger.secondsSincePageStart());\n\t\t\t\n\t\t\tif (gamEventHandlers.onSlotOnLoad.hasOwnProperty(slotElementId)) {\n\t\t\t\tgamEventHandlers.onSlotOnLoad[slotElementId](event);\n\t\t\t}\n\t\t});\n\n\t\tgoogletag.pubads().addEventListener('slotRenderEnded', function(event) {\n\t\t\tvar slotElementId = event.slot.getSlotElementId();\n\t\t\tlogger.debug('GAM: slotRenderEnded fired for slot ' + slotElementId + ' - after ' + logger.secondsSincePageStart());\n\t\t\t\n\t\t\tif (gamEventHandlers.onSlotRenderEnded.hasOwnProperty(slotElementId)) {\n\t\t\t\tgamEventHandlers.onSlotRenderEnded[slotElementId](event);\n\t\t\t}\n\t\t});\n\n\t\tgoogletag.pubads().addEventListener('impressionViewable', function(event) {\n\t\t\tvar slotElementId = event.slot.getSlotElementId();\n\t\t\tlogger.debug('GAM: impressionViewable fired for slot ' + slotElementId + ' - after ' + logger.secondsSincePageStart());\n\n\t\t\tif (gamEventHandlers.onImpressionViewable.hasOwnProperty(slotElementId)) {\n\t\t\t\tgamEventHandlers.onImpressionViewable[slotElementId](event);\n\t\t\t}\n\t\t});\t\t\n\n\t\tanalytics.addDataLayerValues({\n\t\t\t'potentialAdCount': definedAdSlots.length\n\t\t});\n\n\t\tgoogletag.enableServices();\n\t\tfireProviderEvent(events.requestAds, null, callbacks.requestInitialAdsCallback);\n\t});\n}\n\nfunction initInjectedMpus() {\n\tvar $mpuInjectionPoints = $('.mpu-inject:visible');\n\tvar initialInjectedAdIndex = $('[id^=mpu-]').filter('[id!=mpu-gallery]').length + 1;\n\tvar maxAdInjections = adConfig.maxMpuCount - initialInjectedAdIndex; // max ad slots minus already existing ad slots\n\n\t// Add an adslot to each injection point\n\t$mpuInjectionPoints.each(function (index, element) {\n\t\tvar adIndex = index + initialInjectedAdIndex;\n\t\tvar $injectionElement = $(element);\n\n\t\tif (adIndex > maxAdInjections) {\n\t\t\t$injectionElement.remove();\n\t\t\treturn;\n\t\t}\n\n\t\tvar slotId = 'mpu-' + adIndex;\n\t\tvar $slotElement = $injectionElement.find('.advert');\n\t\t$slotElement.addClass('mpu-ad').attr('id', slotId);\n\t});\n}\n\nmodule.exports = {\n\tinit: function (config) {\n\t\tlogger.debug('Initialising ads - after ' + logger.secondsSincePageStart());\n\n\t\tadConfig = config;\n\n\t\t// initialise googletag, if it doesnt already exist\n\t\tgoogletag = window.googletag = window.googletag || {};\n\t\tgoogletag.cmd = googletag.cmd || [];\n\n\t\tgoogletag.cmd.push(function () {\n\t\t\tgoogletag.pubads().disableInitialLoad();\n\t\t});\n\n\t\tfireProviderEvent(events.init, adConfig);\n\n\t\tsetVisibility();\n\t\tinitInjectedMpus();\n\t\tdefineAdSlots();\n\n\t\tif (window.location.search.indexOf('takeover=1') > 0) {\n\t\t\t$.findByBem(classNames.siteRoot).addBemClass(classNames.siteRoot, null, 'has-takeover');\n\t\t}\n\t},\n\n\tloadAds: function ($context) {\n\t\tsetVisibility($context);\n\t\tfireProviderEvent(events.requestAds, null, callbacks.loadAdsCallback);\n\t},\n\n\tloadInfiniteEditorialAds: function ($context) {\n\t\tsetVisibility($context);\n\n\t\tgoogletag.cmd.push(function () {\n\t\t\tfireProviderEvent(events.requestAds, null, callbacks.loadInfiniteEditorialAdsCallback);\n\t\t});\n\t},\n\n\tloadGalleryAds: function ($context) {\n\t\tif ($context) {\n\t\t\tsetVisibility($context);\n\t\t}\n\n\t\tgoogletag.cmd.push(function () {\n\t\t\tif (definedSlots.indexOf(slotSettings.mpuGallery.id) === -1) {\n\t\t\t\tfireProviderEvent(events.defineSlot, slotSettings.mpuGallery);\n\n\t\t\t\tlogger.debug('GAM: Defining mpu-gallery ad');\n\t\t\t\tadSlots.mpuGallery = defineAdSlot(slotSettings.mpuGallery);\n\n\t\t\t\tgoogletag.display(slotSettings.mpuGallery.id);\n\t\t\t}\n\n\t\t\tfireProviderEvent(events.requestAds, null, callbacks.loadGalleryAdsCallback);\n\t\t});\n\t}\n};","'use strict';\n\nvar $ = require('jquery');\n\nfunction initTakeover(settings) {\n\tif ($(window).width() >= 1100) {\n\t\tif (settings && settings.link) {\n\t\t\tvar $body = $('body');\n\t\t\tif ($body.hasClass('takeover')) {\n\n\t\t\t\tvar style = {};\n\n\t\t\t\tif (settings.backgroundColor) {\n\t\t\t\t\tstyle.backgroundColor = settings.backgroundColor;\n\t\t\t\t}\n\n\t\t\t\tvar leftBackgroundImage;\n\t\t\t\tvar leftBackgroundPosition;\n\t\t\t\tvar rightBackgroundImage;\n\t\t\t\tvar rightBackgroundPosition;\n\n\t\t\t\tif (settings.leftGutterImage) {\n\t\t\t\t\tleftBackgroundImage = \"url('\" + settings.leftGutterImage + \"')\";\n\t\t\t\t\tleftBackgroundPosition = \"left 0 top 0\";\n\t\t\t\t}\n\n\t\t\t\tif (settings.rightGutterImage) {\n\t\t\t\t\trightBackgroundImage = \"url('\" + settings.rightGutterImage + \"')\";\n\t\t\t\t\trightBackgroundPosition = \"right 0 top 0\";\n\t\t\t\t}\n\n\t\t\t\tvar backgroundImage = '';\n\t\t\t\tvar backgroundPosition = '';\n\t\t\t\tvar backgroundSize = '';\n\n\t\t\t\tif (leftBackgroundImage) {\n\t\t\t\t\tbackgroundImage += leftBackgroundImage + \", \";\n\t\t\t\t\tbackgroundPosition += leftBackgroundPosition + \", \";\n\t\t\t\t\tbackgroundSize += \"auto, \";\n\t\t\t\t}\n\n\t\t\t\tif (rightBackgroundImage) {\n\t\t\t\t\tbackgroundImage += rightBackgroundImage + \", \";\n\t\t\t\t\tbackgroundPosition += rightBackgroundPosition + \", \";\n\t\t\t\t\tbackgroundSize += \"auto, \";\n\t\t\t\t}\n\n\t\t\t\tbackgroundImage += \"url('\" + settings.mainImage + \"')\";\n\n\t\t\t\tstyle.backgroundImage = backgroundImage;\n\n\t\t\t\tif (settings.backgroundFixed) {\n\t\t\t\t\tstyle.backgroundAttachment = \"fixed\";\n\t\t\t\t\t$body.addClass('takeover-fixed');\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tstyle.backgroundRepeat = \"no-repeat, no-repeat, no-repeat\";\n\t\t\t\tbackgroundPosition += \"center top 0\";\n\t\t\t\tstyle.backgroundPosition = backgroundPosition;\n\t\t\t\t\n\t\t\t\tvar paddingTop = settings.topAdSpaceHeight + \"px\";\n\t\t\t\tvar paddingRight = settings.rightGutterWidth + \"px\";\n\t\t\t\tvar paddingLeft = settings.leftGutterWidth + \"px\";\n\n\t\t\t\tstyle.padding = paddingTop + \" \" + paddingRight + \" 0 \" + paddingLeft;\n\n\t\t\t\tif (settings.mainImageBackgroundSize) {\n\t\t\t\t\tstyle.backgroundSize = backgroundSize + settings.mainImageBackgroundSize;\n\t\t\t\t} else {\n\t\t\t\t\tstyle.backgroundSize = backgroundSize + \"auto\";\n\t\t\t\t}\n\n\t\t\t\tif ($(window).width() > 1500) {\n\t\t\t\t\tstyle.backgroundSize = backgroundSize + \"cover\";\n\t\t\t\t}\n\n\t\t\t\tstyle.cursor = \"pointer\";\n\n\t\t\t\t$body.css(style);\n\n\t\t\t\t$body.find('.site-root').css({\n\t\t\t\t\t\"cursor\" : \"default\"\n\t\t\t\t});\n\n\t\t\t\t$body.off('click.takeover').on('click.takeover', function (e) {\n\t\t\t\t\tif (e.target.tagName.toLowerCase() === 'body') {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\tvar win = window.open(settings.link);\n\t\t\t\t\t\twin.focus();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n}\n\nmodule.exports = {\n\tinitTakeover: initTakeover\n};","'use strict';\n\nvar slotSettings = {\n\tleaderboard1: {\n\t\tid: 'leaderboard-1',\n\t\tsizes: {\n\t\t\tdesktop: [[728, 90], [970, 250]],\n\t\t\tmobile: [[320, 50], [320, 100]],\n\t\t\tsizeMapping: [\n\t\t\t\t[\n\t\t\t\t\t[1050, 0], [[970, 250], [728, 90]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[767, 0], [[728, 90]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[640, 0], [[320, 100], [320, 50]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[0, 0], [[320, 100], [320, 50]]\n\t\t\t\t]\n\t\t\t]\n\t\t}\n\t},\n\n\tmpu: {\n\t\tsizes: {\n\t\t\tdesktop: [[300, 250], [300, 600]],\n\t\t\tmobile: [[300, 250], [320, 480], [300, 600], [320, 50], [320, 100]]\n\t\t}\n\t},\n\n\tmpuGallery: {\n\t\tid:'mpu-gallery',\n\t\tsizes: {\n\t\t\tdesktop: [[300, 250], [300, 600]],\n\t\t\tmobile: [[300, 250], [320, 480], [300, 600]]\n\t\t}\n\t},\n\n\toverlay: {\n\t\tid: 'overlay',\n\t\tsizes: {\n\t\t\tdesktop: [[1, 1]],\n\t\t\tmobile: [[1, 1]]\n\t\t}\n\t},\n\n\tinlineFooter: {\n\t\tid: 'inline-footer',\n\t\tpositionValue: 'inline-footer',\n\t\tsizes: {\n\t\t\tdesktop: [[300, 250], [300, 600], [728, 90], [970, 250]],\n\t\t\tmobile: [[300, 250], [320, 480], [300, 600]],\n\t\t\tsizeMapping: [\n\t\t\t\t[\n\t\t\t\t\t[1324, 0], [[300, 250], [300, 600], [728, 90], [970, 250]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[748, 0], [[300, 250], [300, 600], [728, 90]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[488, 0], [[300, 250], [300, 600]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t[0, 0], [[300, 250], [300, 600]]\n\t\t\t\t]\n\t\t\t]\n\t\t}\n\t},\n\n\tseedTag: {\n\t\tid: 'in_image',\n\t\tsizes: {\n\t\t\tdesktop: [[1, 3]],\n\t\t\tmobile: [[1, 3]]\n\t\t}\n\t},\n\t\n\tgumGum: {\n\t\tid: 'sticky_ad_bottom',\n\t\tsizes: {\n\t\t\tdesktop: [[1, 2]],\n\t\t\tmobile: [[1, 2]]\n\t\t}\n\t},\n};\n\nmodule.exports = {\n\tslotSettings: slotSettings\n};","'use strict';\n\nrequire('foundation-offcanvas');\n\nrequire('./utils/jquery-extensions.js');\n\nvar $ = require('jquery');\n\nvar analytics = require('./utils/analytics.js');\nvar config = require('./utils/config.js');\nvar menu = require('./ui/menu.js');\nvar sticky = require('./ui/sticky.js');\n\nvar advert = require('./adverts/advert.js');\nvar skins = require('./adverts/skins.js');\n\nvar heightWatcher = require('./watchers/height-watcher.js');\nvar screenSizeWatcher = require('./watchers/screen-size-watcher.js');\n\nvar sourcepoint = require('./utils/sourcepoint.js');\n\nvar permutive = require('./utils/permutive.js');\nvar affiliateLinks = require('./utils/affiliate-links.js');\nvar admiralTargeting = require('./utils/admiral-targeting.js');\nvar covatic = require('./utils/covatic.js');\n\nfunction initConfig() {\n\tif (typeof config === 'undefined') {\n\t\twindow.alert('The tgConfig JSON object must be defined before js loaded.');\n\t} else {\n\t\tconsole.info('TG config', config);\n\t\tanalytics.pushToDataLayer(config.data);\n\t}\n}\n\nfunction loadWatchers() {\n\theightWatcher.start();\n\tscreenSizeWatcher.start();\n}\n\nfunction initialiseBasePage() {\n\tinitConfig();\n\n\t$(document).foundation();\n\n\tloadWatchers();\n\n\tmenu.init();\n\tsticky.init();\n\tsourcepoint.init();\n\tpermutive.init();\n\tcovatic.init();\n\taffiliateLinks.init();\n\tadmiralTargeting.init();\n}\n\nmodule.exports = {\n\tinitBasePage: initialiseBasePage,\n\n\tinit: initialiseBasePage,\n\n\tinitDfp: advert.init,\n\n\tadverts: {\n\t\tskins: skins\n\t}\n};","'use strict';\n\nvar $ \t = require('jquery');\nvar layout = require('./layout.js');\nvar heightWatcher = require('../watchers/height-watcher.js');\n\n\nfunction equalizeGridHeights() {\n\t$('.block-grid').each(function () {\n\t\tvar $grid = $(this);\n\t\tvar $items = $grid.children('li:not(.equalised)');\n\t\tvar screenSize = layout.getScreenSize();\n\t\tvar columns = $grid.attr('data-columns-' + screenSize);\n\t\tvar innerTag;\n\n\t\tif ($items.children().prop('tagName') === 'A') {\n\t\t\tinnerTag = $items.find('a').children().prop('tagName');\n\t\t} else {\n\t\t\tinnerTag = $items.children().prop('tagName');\n\t\t}\n\n\t\tif (columns && !isNaN(columns)) {\n\t\t\tcolumns = parseInt(columns);\n\t\t\tif (columns > 1) {\n\t\t\t\tvar count = 0;\n\t\t\t\tvar highest = 0;\n\t\t\t\tvar $item, row = [];\n\t\t\t\t$items.each(function () {\n\t\t\t\t\tcount++;\n\t\t\t\t\t$item = $(this);\n\t\t\t\t\trow.push($item.find(innerTag).not(innerTag + \" > \" + innerTag));\n\t\t\t\t\t$item.find(innerTag).not(innerTag + \" > \" + innerTag).css('height','auto');\n\t\t\t\t\thighest = $item.height() > highest ? $item.height() : highest;\n\t\t\t\t\tif (count % columns === 0 || $items.length === count) {\n\t\t\t\t\t\t$(row).each(function () {\n\t\t\t\t\t\t\t$(this).css('height', highest + 'px').parent().addClass('equalised');\n\t\t\t\t\t\t});\n\t\t\t\t\t\thighest = 0;\n\t\t\t\t\t\trow = [];\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t$items.find(innerTag).not(innerTag + \" > \" + innerTag).css('height', 'auto');\n\t\t\t}\n\t\t}\n\t});\n}\n\nmodule.exports = {\n\tinit: function () {\n\t\tequalizeGridHeights();\n\n\t\t$(window).on('resize.gridHeights', function () {\n\t\t\tequalizeGridHeights();\n\t\t});\n\n\t\t$(window).on('load.gridHeights', function () {\n\t\t\tequalizeGridHeights();\n\t\t});\n\n\t\t$('img').each(function(){\n\t\t\tif ($(this).parents('.grid-panel').length) {\n\t\t\t\theightWatcher.watchElementHeight($(this), 1000, function(){\n\t\t\t\t\tequalizeGridHeights();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n};","'use strict';\n\nvar $ = require('jquery');\n\nvar classNames = {\n\tscreenSizeDetector: 'screen-size-detector',\n\tsiteHeader: 'site-header'\n};\n\nvar self = module.exports = {\n\tgetContentOffset: function () {\n\t\tvar result = 0, screenSize = this.getScreenSize();\n\t\tif (screenSize === 'L' || screenSize === 'XL') {\n\t\t\tvar $siteHeader = $.findByBem(classNames.siteHeader);\n\t\t\tif ($siteHeader.length > 0) {\n\t\t\t\tresult = $siteHeader.outerHeight();\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t},\n\n\tgetScreenSize: function () {\n\t\treturn $.findByBem(classNames.screenSizeDetector).css('font-family').toUpperCase();\n\t},\n\t\n\tscrollTop: function (offset, duration) {\n\t\tduration = duration || 200;\n\n\t\tif (offset > 0 && this.getScreenSize() === 'XL') {\n\t\t\tvar $siteHeader = $.findByBem(classNames.siteHeader);\n\t\t\tif ($siteHeader.length > 0 && offset > $siteHeader.height()) {\n\t\t\t\toffset = offset - $siteHeader.height();\n\t\t\t}\n\t\t}\n\n\t\tif (duration > 0) {\n\t\t\t$('html, body').animate({\n\t\t\t\tscrollTop: offset\n\t\t\t}, 200);\n\t\t} else {\n\t\t\t$('html, body').css('scrollTop', offset);\n\t\t}\n\t},\n\n\tisMobile: function () {\n\t\tvar screenSize = self.getScreenSize();\n\t\treturn screenSize === 'S' || screenSize === 'M';\n\t}\n};","'use strict';\n\nvar $\t = require('jquery');\nvar layout = require('./layout.js');\n\nvar classNames = {\n\tmoreMenu: 'more-menu',\n\tprimaryNavHorizontal: 'primary-nav-horizontal',\n\tsiteHeaderHorizontal: 'site-header-horizontal'\n};\n\nvar initSubMenus = function (block) {\n\tvar element = 'menu__link';\n\t$.findByBem(block, element, 'has-sub-menu').on('click.menu', function (e) {\n\t\tvar isActive = $(this).parent().hasBemClass(block, element, 'active');\n\t\tif ($(this).prop('href') === '#' || !isActive) {\n\t\t\te.preventDefault();\n\t\t\tif (isActive) {\n\t\t\t\t$(this).parent().trigger('mouseleave');\n\t\t\t} else {\n\t\t\t\t$(this).parent().trigger('mouseenter').siblings().trigger('mouseleave');\n\t\t\t}\n\t\t}\n\t}).parent().on('mouseenter.menu', function () {\n\t\t$(this).addBemClass(block, element, 'active').childrenByBem(block, 'sub-menu').show().children('li').css('min-width', $(this).width());\n\t}).on('mouseleave.menu', function () {\n\t\t$(this).removeBemClass(block, element, 'active').childrenByBem(block, 'sub-menu').hide();\n\t});\n};\n\nvar initMoreMenu = function () {\n\tvar screenSize = layout.getScreenSize();\n\tif (screenSize === 'L' || screenSize === 'XL' || screenSize === 'XXL') {\n\t\tvar width = 0;\n\t\tvar $horizontalNav = $.findByBem(classNames.primaryNavHorizontal);\n\t\tvar menuTop;\n\t\tif ($horizontalNav.findByBem(classNames.primaryNavHorizontal, 'menu').length > 0) {\n\t\t\tmenuTop = $horizontalNav.findByBem(classNames.primaryNavHorizontal, 'menu').position().top;\n\t\t} else {\n\t\t\tmenuTop = 0;\n\t\t}\n\t\tvar $moreLink = $horizontalNav.findByBem(classNames.primaryNavHorizontal, 'more');\n\t\tvar $moreMenu = $.findByBem(classNames.moreMenu);\n\t\tvar $moreMenuList = $moreMenu.findByBem(classNames.moreMenu, 'list');\n\t\tvar overflowDropdowns = [];\n\t\tvar overflowSingles = [];\n\n\t\t$moreLink.off('click.menu').on('click.menu', function (e) {\n\t\t\te.preventDefault();\n\t\t\tif ($moreMenu.is(':visible')) {\n\t\t\t\t$moreMenu.slideUp('fast');\n\t\t\t} else {\n\t\t\t\t$moreMenu.slideDown('fast');\n\t\t\t}\n\t\t});\n\n\t\t$horizontalNav.findByBem(classNames.primaryNavHorizontal, 'menu__item').each(function () {\n\t\t\tif ($(this).position().top > menuTop && window.getComputedStyle(this, null).display !== 'none') {\n\t\t\t\tvar $item = $(this).clone();\n\t\t\t\tif ($item.children('a').attr('data-text-expanded')) {\n\t\t\t\t\t$item.children('a').html($item.children('a').attr('data-text-expanded'));\n\t\t\t\t}\n\t\t\t\t$item.removeAttr('class id style').addClass('more-menu__item')\n\t\t\t\t\t.children('a').removeAttr('class id style data-text-expanded').addClass('more-menu__link more-menu__link--heading');\n\t\t\t\tif ($item.children('ul').length > 0) {\n\t\t\t\t\t$item.children('ul').removeAttr('class id style').addClass('more-menu__sub-list')\n\t\t\t\t\t\t.children('li').removeAttr('class id style').addClass('more-menu__sub-list__item')\n\t\t\t\t\t\t.children('a').removeAttr('class id style').addClass('more-menu__sub-list__link');\n\t\t\t\t\toverflowDropdowns.push($item);\n\t\t\t\t} else {\n\t\t\t\t\toverflowSingles.push($item);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\twidth += $(this).width();\n\t\t\t}\n\t\t});\n\n\t\tif (overflowDropdowns.length > 0) {\n\t\t\t$moreMenuList.html(overflowDropdowns);\n\t\t\tif (overflowSingles.length > 0) {\n\t\t\t\tif (overflowDropdowns.length > 1) {\n\t\t\t\t\tvar $list = $('
  • ').appendTo($moreMenuList);\n\t\t\t\t\t$(overflowSingles).each(function () {\n\t\t\t\t\t\t$list.append($(this).children('a'));\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\t$moreMenuList.append(overflowSingles);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (overflowSingles.length > 0) {\n\t\t\t$moreMenuList.html(overflowSingles);\n\t\t}\n\n\t\tif (overflowDropdowns.length > 0 || overflowSingles.length > 0) {\n\t\t\t$moreLink.show();\n\t\t} else {\n\t\t\t$moreLink.hide();\n\t\t\t$moreMenu.hide();\n\t\t}\n\t}\n};\n\nmodule.exports = {\n\n\tinit: function () {\n\t\tinitSubMenus(classNames.primaryNavHorizontal);\n\n\t\tinitMoreMenu();\n\n\t\t$(window).on('resize.menu', function () {\n\t\t\tinitMoreMenu();\n\t\t});\n\t}\n\n};","'use strict';\n\n/*globals Waypoint */\nrequire('waypoints');\n\nvar $\t\t\t \t = require('jquery');\nvar heightWatcher \t = require('../watchers/height-watcher.js');\nvar layout = require('./layout.js');\nvar logger\t\t\t = require('../utils/logger.js');\n\nvar classNames = {\n\tbackToTop: 'back-to-top',\n\tdesktopSidebar: 'desktop-sidebar__sticky-wrapper',\n\tinner: 'inner',\n\tsiteContent: 'site-content',\n\tsiteFooter: 'site-footer',\n\tstickyContainer: 'sticky-container',\n\ttopAd: 'top-ad',\n\ttopAdContainer: 'top-ad-container'\n};\n\nvar modifierNames = {\n\tstuck: 'stuck'\n};\n\nvar waypointInstances = {};\nvar stickyMpuAdWaypoints = [];\n\n// Creates a waypoint that will cause the element to stick if scrolled past\nfunction createStickyInstance(baseClassName, $stickyElement, stickyOffset, $bottomElement, bottomOffset) {\n\tif (!$stickyElement || $stickyElement.length === 0) {\n\t\treturn;\n\t}\n\n\tstickyOffset = stickyOffset || 0;\n\tbottomOffset = bottomOffset || 0;\n\n\t$stickyElement.parent().css('height', $stickyElement.parent().height()); // Preserve container size when element position is set to fixed\n\n\tvar stickyInstance = new Waypoint({\n\t\telement: $stickyElement,\n\t\toffset: stickyOffset,\n\t\thandler: function (direction) {\n\t\t\t\tif (direction === 'up') {\n\t\t\t\t\t$stickyElement.removeBemClass(baseClassName, null, 'stuck');\n\t\t\t\t} else {\n\t\t\t\t\t$stickyElement.addBemClass(baseClassName, null, 'stuck');\n\t\t\t\t}\n\t\t}\n\t});\n\n\twaypointInstances[baseClassName + '--sticky-element'] = stickyInstance;\n\n\tif ($bottomElement && $bottomElement.length > 0) {\n\t\tvar stickyElementBottom = stickyOffset + $stickyElement.outerHeight(true);\n\n\t\tvar bottomInstance = new Waypoint({\n\t\t\telement: $bottomElement,\n\t\t\toffset: stickyElementBottom + bottomOffset,\n\t\t\thandler: function (direction) {\n\t\t\t\tif (direction === 'up') {\n\t\t\t\t\t$stickyElement.removeBemClass(baseClassName, null, 'stuck-bottom');\n\t\t\t\t} else {\n\t\t\t\t\t$stickyElement.addBemClass(baseClassName, null, 'stuck-bottom');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\twaypointInstances[baseClassName + '--bottom-element'] = bottomInstance;\n\t}\n}\n\n// Removes the sticky waypoint attached to an element\nfunction removeStickyInstance(baseClassName, $stickyElement) {\n\tif (baseClassName && $stickyElement.length > 0) {\n\t\tvar stickyInstance = waypointInstances[baseClassName + '--sticky-element'];\n\t\tvar bottomInstance = waypointInstances[baseClassName + '--bottom-element'];\n\n\t\tif (stickyInstance) {\n\t\t\tstickyInstance.destroy();\n\t\t}\n\n\t\tif (bottomInstance) {\n\t\t\tbottomInstance.destroy();\n\t\t}\n\n\t\t$stickyElement.removeBemClass(baseClassName, null, 'stuck');\n\t\t$stickyElement.removeBemClass(baseClassName, null, 'stuck-bottom');\n\t\t$stickyElement.parent().css('height', 'auto');\n\t}\n}\n\n// 30 Ad slots added on each page, function calculates/unhides max number per page\nfunction showMaxDesktopSideBarAdSlots() {\n\tvar siteContentInnerHeight = $.findByBem(classNames.siteContent, classNames.inner).height();\n\tvar mpuHeightSum = 1200;\n\tvar maxAdSlots = Math.floor( siteContentInnerHeight / mpuHeightSum);\n\t$('.sidebarAdBlock').slice(0, maxAdSlots).each(function (index) {\n\t\tthis.style.display = \"block\";\n\t\tif (index === maxAdSlots - 1) {\n\t\t\t$(this).find('a').css(\"display\", \"inline\");\n\t\t}\n\t});\n}\n\n// Sticks the mpu to the top of the screen when scrolling down\nfunction stickMpu(element) {\n element.style.position='fixed';\n element.style.top = '16px'; // padding top of ad container\n element.classList.add(\"stuck\"); \n}\n\n// Unsticks the mpu at bottom of its sidebar ad block when scrolling down\nfunction unstickMpuBottom(){\n\tvar stuckElement = $('.stuck');\n\tstuckElement.removeClass(\"stuck\");\n\tstuckElement.css({\"position\": \"relative\", \"top\": \"600px\"}); // height of add wrapper - (ad height + padding-bottom)\n}\n \n// Unsticks the mpu at top of its sidebar ad block when scrolling up\nfunction unstickMpuTop(){\n\tvar stuckElement = $('.stuck');\n\tstuckElement.removeClass(\"stuck\");\n\tstuckElement.css({\"position\": \"relative\", \"top\": \"16px\"}); \n}\n\nfunction setStickyMpuAds() {\n\tvar initWaypoints = function () {\n\t\tvar screenSize = layout.getScreenSize();\n\t\tif (screenSize === 'XL' || screenSize === 'XXL') {\n\t\t\t\n\t\t\tstickyMpuAdWaypoints.forEach(function (waypoint) {\n\t\t\t\twaypoint.destroy();\n\t\t\t});\n\n\t\t\tstickyMpuAdWaypoints.length = 0;\n\n\t\t\t$('.sidebarAdBlock:visible').each(function () {\n\t\t\t\tvar adBlock = $(this).get(0);\n\t\t\t\tvar adContainer = adBlock.querySelector('.sidebarAdBlock__inner');\n\n\t\t\t\tstickyMpuAdWaypoints.push (\n\t\t\t\t\t// Scrol down triggers for setting sticky component\n\t\t\t\t\tnew Waypoint({\n\t\t\t\t\t\telement: adBlock,\n\t\t\t\t\t\thandler: function (direction) {\n\t\t\t\t\t\t\tif(direction==='down'){\n\t\t\t\t\t\t\t\tstickMpu(adContainer);\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t\n\t\t\t\t\t//scroll up trigger for unsetting sticky component\n\t\t\t\t\tnew Waypoint({\n\t\t\t\t\t\telement:adBlock,\n\t\t\t\t\t\thandler: function (direction) {\n\t\t\t\t\t\t\tif(direction==='up'){\n\t\t\t\t\t\t\t\tstickMpu(adContainer);\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}, \n\t\t\t\t\t\toffset:-600 // The ad height (150) + padding top of container (1)\n\t\t\t\t\t}),\n\n\t\t\t\t\t// Scroll down triggers for unsetting sticky component\n\t\t\t\t\tnew Waypoint({\n\t\t\t\t\t\telement: adBlock,\n\t\t\t\t\t\thandler: function (direction) {\n\t\t\t\t\t\t\tif(direction==='down'){\n\t\t\t\t\t\t\t\tunstickMpuBottom();\n\t\t\t\t\t\t\t}\t \n\t\t\t\t\t\t},\n\t\t\t\t\t\toffset: 648 // Hight of ad (150) + Wrapper padding-bottom (1) + wrapper padding-top(1px) + margin bottom (1px)\n\t\t\t\t\t}),\n\n\t\t\t\t\t//Scroll up triger for setting sticky component\n\t\t\t\t\tnew Waypoint({\n\t\t\t\t\t\telement: adBlock,\n\t\t\t\t\t\thandler: function (direction) {\n\t\t\t\t\t\t\tif(direction==='up'){\n\t\t\t\t\t\t\t\tunstickMpuTop();\n\t\t\t\t\t\t\t}\t \n\t\t\t\t\t\t}, \n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\t};\t\n\n\t$(window).scroll(function(){\n\t\tif ($(window).scrollTop() === 0) {\n\t\t\tinitWaypoints();\n\t\t}\n\t});\n\n\tinitWaypoints();\t\n}\n\nfunction setStickySidebar() {\n\tvar screenSize = layout.getScreenSize();\n\tvar desktopSidebarInnerClassName = $.getBemClass(classNames.desktopSidebar, classNames.inner);\n\tvar $desktopSidebar = $('.' + desktopSidebarInnerClassName);\n\tvar $siteFooter = $.findByBem(classNames.siteFooter);\n\n\tremoveStickyInstance(desktopSidebarInnerClassName, $desktopSidebar);\n\n\tif (screenSize === 'XL' || screenSize === 'XXL') {\n\t\tcreateStickyInstance(desktopSidebarInnerClassName, $desktopSidebar, layout.getContentOffset() + 16, $siteFooter);\n\t}\n}\n\nfunction setStickyLeaderboard() {\n\tvar stickyContainerClassName = $.getBemClass(classNames.topAdContainer, classNames.stickyContainer);\n\tvar $stickyContainer = $('.' + stickyContainerClassName);\n\n\tvar stickyInstance = new Waypoint({\n\t\telement: $stickyContainer,\n\t\thandler: function (direction) {\n\t\t\tif (direction==='down'){\n\t\t\t\t$stickyContainer.addBemClass(classNames.topAdContainer, classNames.stickyContainer, modifierNames.stuck);\n\t\t\t} else {\n\t\t\t\t$stickyContainer.removeBemClass(classNames.topAdContainer, classNames.stickyContainer, modifierNames.stuck);\n\t\t\t}\n\t\t},\n\t});\n\n\twaypointInstances[stickyContainerClassName + '--sticky-element'] = stickyInstance;\n\n\tlogger.debug('GAM: Leaderboard stuck');\n}\n\nfunction unsetStickyLeaderboard() {\n\tvar stickyContainerClassName = $.getBemClass(classNames.topAdContainer, classNames.stickyContainer);\n\tvar stickyInstance = waypointInstances[stickyContainerClassName + '--sticky-element'];\n\n\tif (stickyInstance) {\n\t\tstickyInstance.destroy();\n\t}\n\n\tvar $stickyContainer = $('.' + stickyContainerClassName);\n\t$stickyContainer.removeBemClass(classNames.topAdContainer, classNames.stickyContainer, modifierNames.stuck);\n}\n\nmodule.exports = {\n\tinit: function () {\n\t\tshowMaxDesktopSideBarAdSlots();\n\t\tif (typeof Waypoint !== 'undefined') {\n\t\t\tsetStickySidebar();\n\t\t\tsetStickyMpuAds();\n\n\t\t\theightWatcher.onChange(function () {\n\t\t\t\tsetStickySidebar();\n\t\t\t\tsetStickyMpuAds();\n\t\t\t});\n\n\t\t\tif ($(window).scrollTop() > 0) {\n\t\t\t\t// recaclulate offsets after page loaded\n\t\t\t\t$(window).load(function () {\n\t\t\t\t\tsetStickySidebar();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t$.findByBem(classNames.desktopSidebar, classNames.backToTop).on('click.sticky', function (e) {\n\t\t\t\te.preventDefault();\n\t\t\t\tlayout.scrollTop(0);\n\t\t\t});\n\t\t}\n\t\tsetStickyLeaderboard();\n\t},\n\n\tremoveStickyInstance: removeStickyInstance,\n\tunsetStickyLeaderboard: unsetStickyLeaderboard\n};","'use strict';\n\nvar config = require('./config.js');\nvar logger = require('./logger.js');\n\nfunction setKeyValue(key, value) {\n\tif (!key) {\n\t\tlogger.warn('Admiral: Failed to set value - key not set.');\n\t\treturn;\n\t}\n\n\tif (window.admiral === undefined) {\n\t\tlogger.warn('Admiral: Failed to set value - admiral was undefined.');\n\t\treturn;\n\t}\n\n\twindow.admiral('targeting', 'set', key, value);\n\tlogger.info(`Admiral: Set value {${key}, ${value}}`);\n}\n\nfunction init() {\n\tsetKeyValue('templateName', config.data.page.templateName);\n\tsetKeyValue('isAffiliate', config.data.page.isAffiliate.toString());\n\twindow.admiral('targeting', 'ready'); // Allows admiral to make it's targeting calls now that we have set our targeting\n}\n\nmodule.exports = {\n\tinit: init\n};\n","'use strict';\n\nvar $ = require('jquery');\nvar analytics = require('./analytics');\nvar config = require('./config');\n\nfunction getValueOrNotSet(value) {\n\treturn value ? value : 'NotSet';\n}\n\nfunction isExternalLink(href) {\n\t// Extract the domain of the current page to compare against\n\ttry {\n\t\tconst currentDomain = new URL(window.location.href).hostname;\n\t\tconst linkDomain = new URL(href, window.location.href).hostname;\n\n\t\treturn currentDomain !== linkDomain;\n\t} catch (error) {\n\t\tconsole.error(`Invalid URL: ${href}`, error);\n\t\treturn false;\n\t}\n}\n\nfunction buildQueryParams(href, trackingParams) {\n\tif (href.startsWith('https://www.amazon.co.uk') || href.startsWith('https://www.amazon.com')) {\n\t\treturn {\n\t\t\t'asc_source': 'paidtraffic',\n\t\t\t'asc_campaign': `${trackingParams.trackingIdName},${trackingParams.trackingId}`,\n\t\t\t'asc_refurl': window.location.href\n\t\t};\n\t} else if (href.startsWith('https://redirect.viglink.com')) {\n\t\treturn {\n\t\t\t'cuid': `${getValueOrNotSet(trackingParams.utmMedium)}|${getValueOrNotSet(trackingParams.utmSource)}|${trackingParams.trackingIdName},${trackingParams.trackingId}`\n\t\t};\n\t} else {\n\t\treturn {\n\t\t\t'xcust': `${getValueOrNotSet(trackingParams.utmMedium)}|${getValueOrNotSet(trackingParams.utmSource)}|${trackingParams.trackingIdName},${trackingParams.trackingId}`\n\t\t};\n\t}\n}\n\nfunction updateLinkParams($link, params) {\n\tconst linkParams = new URLSearchParams($link[0].search);\n\tObject.keys(params).forEach(key => linkParams.set(key, params[key]));\n\n\t$link[0].search = linkParams.toString();\n\tconsole.info(`Updated href: ${$link.attr('href')}`);\n}\n\nfunction updateTrackingLinks(trackingParams) {\n\tconst excludedDomains = [\n\t\t'http://images.golf.bauermedia.group',\n\t\t'https://todaysgolfer-images.dev.bauersecure.com',\n\t\t'https://todaysgolfer-images.stg.bauersecure.com',\n\t\t'https://todaysgolfer-images.bauersecure.com',\n\t\t'https://www.todays-golfer.com',\n\t\t'mailto'\n\t];\n\n\t// Select all links that meet affiliate criteria and exclude nav/footer links\n\t$('a').filter(function () {\n\n\t\tconst href = $(this).attr('href');\n\t\tconst isExcluded = excludedDomains.some(prefix => href?.startsWith(prefix));\n\n\t\treturn href && isExternalLink(href) && !isExcluded && !$(this).closest('nav, footer').length;\n\t}).each(function () {\n\t\tconst $link = $(this);\n\n\t\tconsole.info(`Processing href: ${$link.attr('href')}`);\n\t\tupdateLinkParams($link, buildQueryParams($link.attr('href'), trackingParams));\n\t});\n}\n\nfunction init() {\n\tconst trackingParams = config.ppcTrackingParams;\n\n\tif (!trackingParams) {\n\t\treturn;\n\t}\n\n\tupdateTrackingLinks(trackingParams);\n\n\tanalytics.pushToDataLayer({ event: 'AffiliateLinksUpdated' });\n}\n\nmodule.exports = {\n\tinit: init\n};","'use strict';\n\nvar config = require('./config.js');\nvar logger = require('./logger.js');\n\nvar self = module.exports = {\n\tpushToDataLayer: function (obj) {\n\t\tif (obj) {\n\t\t\tlogger.info('GTM data layer push', obj);\n\n\t\t\tif (typeof bauerDataLayer !== 'undefined') {\n\t\t\t\tbauerDataLayer.push(obj);\n\t\t\t} else {\n\t\t\t\twindow.bauerDataLayer = [obj];\n\t\t\t}\n\t\t}\n\t},\n\n\ttrackEvent: function (category, action, label, value) {\n\t\tif (category && action) {\n\t\t\tvar event = {\n\t\t\t\tevent: 'GA_Event',\n\t\t\t\teventCategory: category,\n\t\t\t\teventAction: action,\n\t\t\t\teventLabel: label || config.data.page.templateName,\n\t\t\t\teventValue: value\n\t\t\t};\n\t\t\tself.pushToDataLayer(event);\n\t\t}\n\t},\n\n\ttrackPageview: function (url, title) {\n\t\tvar pageView = {\n\t\t\tevent: 'GA_VirtualPageview',\n\t\t\tvirtualPageUrl: url,\n\t\t\tvirtualPageTitle: title\n\t\t};\n\t\tself.pushToDataLayer(pageView);\n\t},\n\n\ttrackIpsosIrisPageView: function () {\n\t\t// window.dm is defined in the Ipsos Iris script, see _IpsosIris partial view\n\t\tvar ii = window.dm;\n\t\tif (ii) {\n\t\t\tii.AjaxEvent('pageview', null, 'todaysgolfer');\n\t\t}\n\t},\n\n\taddDataLayerValues: function (values) {\n\t\tself.pushToDataLayer({\n\t\t\tevent: 'Data Layer Loaded',\n\t\t\t...values\n\t\t});\n\t}\n};","'use strict';\n\nmodule.exports = window.tgConfig;","'use strict';\n\nvar vendorConsents = require('./vendor-consent.js');\nvar logger = require('./logger.js');\n\nvar covatic = window.covaticBrowserSDK;\nvar mediaAssetDuration = 3600; // Set actual duration if available\nvar playHeadPosition = 300; // Set playhead position based on context\n\nasync function consentGranted() {\n var mediaConsumptionData = null;\n\n // Check if MediaConsumptionData exists in the window object\n if (window.MediaConsumptionData !== null && window.MediaConsumptionData !== undefined) {\n logger.info('Covatic media consumption data available.');\n mediaConsumptionData = window.MediaConsumptionData;\n }\n\n // Initialize the Covatic Browser SDK using the client config\n covatic.Client(mediaConsumptionData.clientConfig);\n\n // Notify Covatic that user consent has been granted\n covatic.notifyConsent(true);\n logger.info('Covatic notified: consent granted.');\n\n // Wait until the Covatic SDK is ready before proceeding\n var isSdkReady = await covatic.isReady();\n\n if (isSdkReady) {\n logger.info('Covatic SDK is ready.');\n\n // Notify Covatic of the user's subscription level (guest account in this case)\n covatic.notifySubscription('guestAccount');\n logger.info('Covatic subscription level notified.');\n\n // Notify Covatic of media consumption, if mediaConsumptionData is available\n if (mediaConsumptionData) {\n covatic.notifyEvent(\n new covatic.MediaConsumption(\n '', // mediaId or assetId (empty not applicable)\n mediaConsumptionData.mediaAssetTitle,\n { 'cvc_description': mediaConsumptionData.cvcDescription },\n mediaConsumptionData.mediaTag,\n mediaConsumptionData.mediaSubsection,\n mediaAssetDuration, // Duration of the media\n playHeadPosition, // Current playback position\n covatic.MediaConsumption.Action.commenceMedia,\n covatic.MediaConsumption.Type.text // Media type (e.g., text)\n )\n );\n logger.info('Covatic media consumption notified.');\n } else {\n logger.warn('Covatic no media consumption data available.');\n }\n\n // Fetch and handle audience profiles from Covatic\n var audienceProfiles = covatic.getLinkedAudiences();\n logger.info('AudienceProfiles:', audienceProfiles);\n\n if (audienceProfiles && audienceProfiles.length > 0) {\n window.localStorage.setItem('_audienceProfile', audienceProfiles);\n logger.info('Covatic audience profiles stored in localStorage.');\n }\n } else {\n logger.warn('Covatic SDK is not ready.');\n }\n\n}\n\nfunction consentRefused() {\n logger.info('Covatic consent has not been granted - no data will be collected');\n\t// Remove the _audienceProfile if exist on local storage\n\tif (localStorage.getItem('_audienceProfile') !== null) {\n localStorage.removeItem('_audienceProfile');\n logger.info('Covatic audience profile has been removed from localStorage');\n }\n covatic.notifyConsent(false);\n}\n\nasync function handleTcfEvent(eventName, vendorId) {\n vendorConsents.addTcfApiHandler(eventName, async () => {\n var consentGrantedResult = await vendorConsents.hasIABVendorConsent(vendorId);\n\n if (consentGrantedResult) {\n await consentGranted();\n } else {\n consentRefused();\n }\n });\n}\n\nmodule.exports = {\n\n init: function () {\n\t\t// Vendor ID for Covatic\n var vendorId = 1104;\n\n var eventsToHandle = [\n vendorConsents.eventNames.userActionComplete,\n vendorConsents.eventNames.subsequentPageLoad\n ];\n\n eventsToHandle.forEach(eventName => handleTcfEvent(eventName, vendorId));\n }\n};","'use strict';\n\nvar $ = require('jquery');\n\n$.getBemClass = function (block, element, modifier) {\n\treturn block + (element ? '__' + element : '') + (modifier ? '--' + modifier : '');\n};\n$.findByBem = function (block, element, modifier, context) {\n\treturn $('.' + $.getBemClass(block, element, modifier), context);\n};\n\n$.fn.childrenByBem = function (block, element, modifier) {\n\treturn this.children('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.closestByBem = function (block, element, modifier) {\n\treturn this.closest('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.filterByBem = function (block, element, modifier) {\n\treturn this.filter('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.findByBem = function (block, element, modifier) {\n\treturn this.find('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.parentsByBem = function (block, element, modifier) {\n\treturn this.parents('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.siblingsByBem = function (block, element, modifier) {\n\treturn this.siblings('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.nextByBem = function (block, element, modifier) {\n\treturn this.next('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.nextAllByBem = function (block, element, modifier) {\n\treturn this.nextAll('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.prevByBem = function (block, element, modifier) {\n\treturn this.prev('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.prevAllByBem = function (block, element, modifier) {\n\treturn this.prevAll('.' + $.getBemClass(block, element, modifier));\n};\n$.fn.addBemClass = function (block, element, modifier) {\n\treturn this.addClass($.getBemClass(block, element, modifier));\n};\n$.fn.hasBemClass = function (block, element, modifier) {\n\treturn this.hasClass($.getBemClass(block, element, modifier));\n};\n$.fn.removeBemClass = function (block, element, modifier) {\n\treturn this.removeClass($.getBemClass(block, element, modifier));\n};\n\n$.fn.disable = function (disabledCssClass, disabledText) {\n\tthis.attr('disabled', 'disabled');\n\tif (disabledCssClass) {\n\t\tthis.addClass(disabledCssClass);\n\t}\n\tdisabledText = disabledText || this.attr('data-disabled-text');\n\tif (disabledText) {\n\t\tthis.attr('data-enabled-text', this.text());\n\t\tthis.text(disabledText);\n\t}\n};\n\n$.fn.enable = function (disabledCssClass, enabledText) {\n\tthis.removeAttr('disabled');\n\tif (disabledCssClass) {\n\t\tthis.removeClass(disabledCssClass);\n\t}\n\tenabledText = enabledText || this.attr('data-enabled-text');\n\tif (enabledText) {\n\t\tthis.attr('data-disabled-text', this.text());\n\t\tthis.text(enabledText);\n\t}\n};","'use strict';\n\nvar config = require('./config.js');\n\nmodule.exports = {\n\tdebug: function (message) {\n\t\tif (message && config.debugMode) {\n\t\t\tconsole.log(message);\n\t\t}\n\t},\n\n\terror: function (message, debugMessage) {\n\t\tconsole.error(message, config.debugMode ? debugMessage : null);\n\t},\n\n\tinfo: function (message, debugMessage) {\n\t\tconsole.info(message, config.debugMode ? debugMessage : null);\n\t},\n\n\twarn: function (message, debugMessage) {\n\t\tconsole.warn(message, config.isDebugMode ? debugMessage : null);\n\t},\n\n\tsecondsSincePageStart: function() {\n\t\treturn (window.pageStart ? (Date.now() - window.pageStart) / 1000 : 0) + 's';\n\t}\n};","'use strict';\n\nvar vendorConsents = require('./vendor-consent.js');\nvar permutive = window.permutive;\n\nfunction consentGranted () {\n\tpermutive.consent({ 'opt_in': true, 'token': 'CONSENT_CAPTURED' });\n}\n\nfunction consentRefused () {\n\tconsole.log('Permutive consent has not been granted - no data will be collected');\n\tpermutive.consent({ 'opt_in': false });\n}\n\n\npermutive.init = function() {\n\tvendorConsents.addTcfApiHandler(vendorConsents.eventNames.userActionComplete, function () {\n\t\tvendorConsents.onRetrieveVendorAndPurposeConsents(consentGranted, consentRefused);\n\t});\n\n\tvendorConsents.addTcfApiHandler(vendorConsents.eventNames.subsequentPageLoad, function () {\n\t\tvendorConsents.onRetrieveVendorAndPurposeConsents(consentGranted, consentRefused);\n\t});\n};\n\nmodule.exports = permutive;","'use strict';\n\nvar $ = require('jquery');\nvar config = require('./config.js');\nrequire('../../vendors/sourcepoint/bootstrap.js');\n\nvar consentLinkIds = {\n\teu: '#eu-consent-ui',\n\tus: '#us-consent-ui'\n};\n\nfunction load(account_id, messaging_subdomain) {\n\tvar messaging_library_url = 'assets/js/vendors/sourcepoint/tg-client.js';\n\t\n\twindow._sp_ = window._sp_ || {};\n\twindow._sp_.config = window._sp_.config || {};\n\t\n\twindow._sp_.config.account_id = account_id;\n\twindow._sp_.config.mms_domain = messaging_subdomain;\n\t\n\twindow._sp_.config.mms_client_data_callback = function (o) {\n\t\tconsole.log(\"Sourcepoint callback: \" + o);\n\t};\n\t\n\twindow._sp_.config.mms_choice_selected_callback = function (choiceID) {\n\t\tconsole.log(\"Sourcepoint choice: \" + choiceID);\n\t};\n\t\n\twindow._sp_.mms = window._sp_.mms || {};\n\twindow._sp_.mms.cmd = window._sp_.mms.cmd || [];\n\t\n\twindow._sp_.mms.cmd.push(function(){\n\t\twindow._sp_.mms.startMsg();\n\t});\n\t\n\twindow._sp_.bootstrap(config.assetsUrl + messaging_library_url);\n}\n\nfunction showPrivacyManagerLink(linkId) {\n\t$(linkId).find('a').removeClass('hide');\n}\n\nfunction initPrivacyManager(gdprApplies) {\n\tconsole.log('tcData.gdprApplies: ' + gdprApplies);\n\n\tif (gdprApplies) {\n\t\tshowPrivacyManagerLink(consentLinkIds.eu);\n\t} else {\n\t\twindow.__uspapi('getUSPData', 1, function (uspData) {\n\t\t\tif (JSON.stringify(uspData).indexOf('---') === -1) {\n\t\t\t\tshowPrivacyManagerLink(consentLinkIds.us);\n\t\t\t}\n\t\t});\n\t}\n}\n\nfunction conditionallySetAdBlockDetection() {\n\tif ($('.sourcepoint').length > 0) {\n\t\tvar tg_sourcepoint_account_id = 296;\n\t\tvar tg_sourcepoint_messaging_subdomain = 'sp.todays-golfer.com';\n\t\t\n\t\tload(tg_sourcepoint_account_id, tg_sourcepoint_messaging_subdomain);\n\t}\n}\n\nmodule.exports = {\n\tinit: function() {\n\t\tconditionallySetAdBlockDetection();\n\n\t\t$(document).on('tcf.privacymanager', function (event, data) {\n\t\t\tinitPrivacyManager(data.gdprApplies);\n\t\t});\n\t}\n}; ","'use strict';\n\nmodule.exports = {\n\tbegin: function (callback, delay) {\n\t\tvar result = {\n\t\t\tstart: new Date(),\n\t\t\tremaining: delay,\n\t\t\tonCompleteCallback: callback,\n\t\t\ttimerId: window.setTimeout(callback, delay)\n\t\t};\n\n\t\treturn result;\n\t},\n\n\tpause: function (timer) {\n\t\twindow.clearTimeout(timer.timerId);\n\t\ttimer.remaining -= new Date() - timer.start;\n\t},\n\n\tresume: function (timer) {\n\t\ttimer.start = new Date();\n\t\twindow.clearTimeout(timer.timerId);\n\n\t\tif (timer.onCompleteCallback) {\n\t\t\ttimer.timerId = window.setTimeout(timer.onCompleteCallback, timer.remaining);\n\t\t}\n\t},\n\n\tcancel: function (timer) {\n\t\twindow.clearTimeout(timer.timerId);\n\t\ttimer.remaining = 0;\n\t\ttimer.onCompleteCallback = null;\n\t}\n};","'use strict';\n\nvar logger = require('./logger.js');\n\nvar tcfVersion = 2;\n\nvar eventNames = {\n\tuiShown: 'cmpuishown',\n\tuserActionComplete: 'useractioncomplete',\n\tsubsequentPageLoad: 'tcloaded'\n};\n\nasync function onGetTCData() {\n\tconst tcData = await new Promise((resolve, reject) => {\n\t\twindow.__tcfapi('getTCData', tcfVersion, function (data, success) {\n\t\t\tif (success) {\n\t\t\t\tresolve(data);\n\t\t\t} else {\n\t\t\t\treject(new Error('Failed to get TC Data'));\n\t\t\t}\n\t\t});\n\t});\n\n\treturn tcData;\n}\n\nasync function hasIABVendorConsent(vendorId) {\n\ttry {\n\t\t// Ensure vendorId is not null, not 0, and is a valid number\n\t\tconst validVendorId = Number(vendorId);\n\t\tif (vendorId === null || validVendorId === 0 || isNaN(validVendorId)) {\n\t\t\tlogger.error('Invalid vendorId: It must be a non-null, non-zero number');\n\t\t\treturn false; // Return false for invalid vendorId\n\t\t}\n\n\t\t// Fetch TC Data and check consent\n\t\tconst tcData = await onGetTCData();\n\n\t\tif (tcData && tcData.vendor && tcData.vendor.consents) {\n\t\t\tconst vendorConsents = tcData.vendor.consents;\n\n\t\t\tif (vendorConsents[vendorId]) {\n\t\t\t\tlogger.info(`Vendor ID: ${vendorId} has consent.`);\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\tlogger.info(`Vendor ID: ${vendorId} does NOT have consent.`);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t} else {\n\t\t\tlogger.error('TC Data is missing vendor or consents information');\n\t\t\treturn false;\n\t\t}\n\n\t} catch (err) {\n\t\tlogger.error('An error occurred:', err);\n\t\treturn false;\n\t}\n}\n\nvar vendorConsents = {\n\n\teventNames:eventNames,\n\thasIABVendorConsent,\n\taddTcfApiHandler: function (eventStatus, callback) {\n\t\twindow.__tcfapi('addEventListener', tcfVersion, function (tcData, success) {\n\t\t\tif (!success) {\n\t\t\t\tlogger.warn('Failed to add tcf api handler');\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (tcData.eventStatus === eventNames.uiShown && eventStatus === eventNames.uiShown) {\n\t\t\t\tcallback();\n\t\t\t}\n\n\t\t\tif (tcData.eventStatus === eventNames.userActionComplete && eventStatus === eventNames.userActionComplete) {\n\t\t\t\tcallback();\n\t\t\t}\n\n\t\t\tif (tcData.eventStatus === eventNames.subsequentPageLoad && eventStatus === eventNames.subsequentPageLoad) {\n\t\t\t\twindow.__tcfapi('removeEventListener', tcfVersion, function (success) {\n\t\t\t\t\tif (success) {\n\t\t\t\t\t\tcallback();\n\t\t\t\t\t}\n\t\t\t\t}, tcData.listenerId);\n\t\t\t}\n\t\t});\n\t},\n\n\tonRetrieveVendorAndPurposeConsents: function (successCallback, failureCallback) {\n\t\tvar hasBauerConsent = false;\n\t\tvar hasStoreAndAccessInfoConsent = false;\n\t\tvar hasSelectPersonalisedAds = false;\n\t\tvar hasCreatePersonalisedAdsProfile = false;\n\n\t\twindow.__tcfapi('getCustomVendorConsents', tcfVersion, function (vendorConsents, success) {\n\t\t\tif (!success) {\n\t\t\t\tlogger.warn('Failed to add bauer consent handler');\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvendorConsents.consentedVendors.forEach(function (vendor) {\n\t\t\t\tif(vendor.name === 'Bauer Media Group') {\n\t\t\t\t\thasBauerConsent = true;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tvendorConsents.consentedPurposes.forEach(function (purpose) {\n\t\t\t\tif (purpose.name === 'Store and/or access information on a device') {\n\t\t\t\t\thasStoreAndAccessInfoConsent = true;\n\t\t\t\t}\n\n\t\t\t\tif (purpose.name === 'Use profiles to select personalised advertising') {\n\t\t\t\t\thasSelectPersonalisedAds = true;\n\t\t\t\t}\n\n\t\t\t\tif (purpose.name === 'Create profiles for personalised advertising') {\n\t\t\t\t\thasCreatePersonalisedAdsProfile = true;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (hasBauerConsent && hasStoreAndAccessInfoConsent && hasSelectPersonalisedAds && hasCreatePersonalisedAdsProfile) {\n\t\t\t\tsuccessCallback();\n\t\t\t} else {\n\t\t\t\tfailureCallback();\n\t\t\t}\n\t\t});\n\t}\n};\n\nmodule.exports = vendorConsents;","'use strict';\n\nvar $ = require('jquery');\n\nvar heightWatcherCallbacks = [];\n\nvar classNames = {\n\tsiteRoot: 'site-root'\n};\n\nmodule.exports = {\n\tonChange: function (func) {\n\t\theightWatcherCallbacks.push(func);\n\t},\n\n\tstart: function () {\n\t\tvar self = this;\n\t\tself.watchElementHeight($.findByBem(classNames.siteRoot), 500, function () {\n\t\t\tself.trigger();\n\t\t});\n\t},\n\n\ttrigger: function () {\n\t\tvar index, callback;\n\t\tfor (index = 0; index < heightWatcherCallbacks.length; index++) {\n\t\t\tcallback = heightWatcherCallbacks[index];\n\t\t\tif ($.isFunction(callback)) {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t}\n\t},\n\n\twatchElementHeight: function ($element, interval, callback) {\n\t\tif ($element.length > 0) {\n\t\t\tvar previousHeight = $element.height();\n\t\t\t(function run() {\n\t\t\t\tvar newHeight = $element.height();\n\t\t\t\tif (newHeight !== previousHeight) {\n\t\t\t\t\tcallback();\n\t\t\t\t}\n\t\t\t\tpreviousHeight = newHeight;\n\t\t\t\twindow.setTimeout(run, interval);\n\t\t\t})();\n\t\t}\n\t}\n};","'use strict';\n\nvar $\t = require('jquery');\nvar layout = require('../ui/layout.js');\n\nvar screenSizeWatcherCallbacks = [];\n\nvar self = module.exports = {\n\tonChange: function (func) {\n\t\tscreenSizeWatcherCallbacks.push(func);\n\t},\n\n\tstart: function () {\n\t\tvar timer, newSize, previousSize = layout.getScreenSize();\n\t\t$(window).off('resize.screenSizeWatcher').on('resize.screenSizeWatcher', function () {\n\t\t\tnewSize = layout.getScreenSize();\n\t\t\tif (newSize !== previousSize) {\n\t\t\t\tpreviousSize = newSize;\n\t\t\t\twindow.clearTimeout(timer);\n\t\t\t\ttimer = window.setTimeout(function () {\n\t\t\t\t\tself.trigger();\n\t\t\t\t}, 500);\n\t\t\t}\n\t\t});\n\t},\n\n\ttrigger: function () {\n\t\tvar index, callback;\n\t\tfor (index = 0; index < screenSizeWatcherCallbacks.length; index++) {\n\t\t\tcallback = screenSizeWatcherCallbacks[index];\n\t\t\tif ($.isFunction(callback)) {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t}\n\t}\n};","var _sp_=function(n){function t(e){if(o[e])return o[e].exports;var r=o[e]={i:e,l:!1,exports:{}};return n[e].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={};return t.m=n,t.c=o,t.i=function(n){return n},t.d=function(n,o,e){t.o(n,o)||Object.defineProperty(n,o,{configurable:!1,enumerable:!0,get:e})},t.n=function(n){var o=n&&n.__esModule?function(){return n[\"default\"]}:function(){return n};return t.d(o,\"a\",o),o},t.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},t.p=\"\",t(t.s=2)}([function(n,t){function o(n,t){e&&console[n].apply(console,[\"[bootstrap]\"].concat(Array.prototype.slice.call(t)))}var e=!1;n.exports={debug:function(){o(\"debug\",arguments)},info:function(){o(\"info\",arguments)},time:function(){o(\"time\",arguments)},warn:function(){o(\"warn\",arguments)},error:function(){o(\"error\",arguments)},useDefaults:function(){e=!0},DEBUG:1}},function(n,t,o){\"use strict\";function e(){D||(D=!0,z=h.config=h.config||{},u(),N=z.bootstrap&&z.bootstrap.contentControlCallback||z.content_control_callback,B=z.accountId||z.account_id||z.client_id||window.sp_cid,G=z.beacon&&z.beacon.contentControlEndpoint||z.content_control_beacon_endpoint||v.a,z.debug_level&&\"OFF\"!==z.debug_level.toString().toUpperCase()||z.debug&&z.debug.level&&\"OFF\"!==z.debug.level.toString().toUpperCase()?F=!0:window.location.search&&null!=window.location.search.match(/_sp_debug_level=(?!off|OFF)/)&&(F=!0),F&&m.useDefaults({defaultLevel:m.DEBUG}))}function r(n,t,e){function r(o,e){var r=new Image;r.src=\"//\"+G+\"/cct?v=\"+encodeURIComponent(v.b)+\"&ct=\"+_+\"&cid=\"+encodeURIComponent(B)+\"&l=\"+encodeURIComponent(n.toString())+\"&rc=\"+encodeURIComponent(t)+\"&d0=\"+encodeURIComponent(i)+(o?\"&d1=\"+encodeURIComponent(o):\"\")+(null==e?\"\":\"&d2=\"+encodeURIComponent(e)),g.info(\"sending beacon: \"+r.src),c&&c()}var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",a=arguments[4],c=arguments[5];if(a){var d=e.lastIndexOf(\".\"),s=e.lastIndexOf(\"/\"),u=-1===d||s>d?e+\".png\":e.substring(0,d)+\".png\",l=new Image;l.addEventListener(\"load\",function(){r(\"1\",u)}),l.addEventListener(\"error\",function(){o.i(f.a)(u,function(n,t,o){r(\"0\",u+\"::\"+o)})}),l.src=u}else r()}function i(n,t,o,e){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},a=arguments.length>5&&void 0!==arguments[5]&&arguments[5],c=function(){i(n,t,o,e,r,!0)};n(t,a?o:c,e,r)}function a(n,t,o,e){function r(o,r){t(o,n,r,e.enableImageLoad)}function i(t,r){o(t,n,r,e.enableImageLoad),e.onError&&e.onError(r)}var a=document.createElement(\"script\");a.src=n,a.onload=function(){e.onLoad&&e.onLoad()},a.onerror=function(){function t(n){return o.indexOf(n)>-1}var o=(navigator.userAgent||navigator.vendor||window.opera).toLowerCase();t(\"mobi\")||t(\"ipad\")||t(\"android\")||t(\"iphone\")?i(x):t(\"exabot\")?i(U):t(\"bingbot\")||t(\"bingpreview\")?i(S):t(\"googlebot\")||t(\"adsbot-google\")||t(\"mediapartners-google\")?i(E):t(\"googleweblight\")?i(O):window.location.host===w?i(I):window.location.host.indexOf(b)>-1?i(j):t(\"msie 10\")||t(\"msie 9\")||t(\"msie 8\")?i(k):c(n,r,i)},document.head.appendChild(a),document.querySelector('script[src=\"'+n+'\"]')||-1!==window.location.host.indexOf(b)||(g.info(\"Script not present\"),r(C,n))}function c(n,t,e){o.i(f.a)(n,function(o,r,i,a){(o||r?t:e)(a,n+\"::\"+i)})}function d(n,t,o,e){if(q)return void s(R+\"::\"+n,o);r(L,n,t,o,e,function(){if(N){if(F){g.error(\"bootstrap locking\",L,n,t,o,e);debugger}setTimeout(function(){N()},250)}})}function s(n,t,o,e){r(y,n,t,o,e)}function u(){h._networkListenerData||(h._networkListenerData=o.i(p.a)())}function l(n,t){e(),g.info(\"bootstrap called with\",n,t),i(a,n,d,s,t)}Object.defineProperty(t,\"__esModule\",{value:!0});var f=o(4),p=o(5),v=o(3),g=o(0),m=void 0;m=o(0);var w=[\"w\",\"e\",\"b\",\"c\",\"a\",\"c\",\"h\",\"e\",\".\",\"g\",\"o\",\"o\",\"g\",\"l\",\"e\",\"u\",\"s\",\"e\",\"r\",\"c\",\"o\",\"n\",\"t\",\"e\",\"n\",\"t\",\".\",\"c\",\"o\",\"m\"].join(\"\"),b=[\"o\",\"p\",\"t\",\"i\",\"m\",\"i\",\"z\",\"e\",\"l\",\"y\",\"p\",\"r\",\"e\",\"v\",\"i\",\"e\",\"w\",\".\",\"c\",\"o\",\"m\"].join(\"\"),h=window._sp_||{},_=1,y=0,L=1,C=\"s\",x=\"m\",E=\"g\",I=\"gw\",O=\"gl\",k=\"i\",S=\"b\",U=\"e\",R=\"n\",j=\"o\",D=!1,q=!1,F=!1,z=void 0,N=void 0,B=void 0,G=void 0;window.addEventListener(\"beforeunload\",function(){q=!0}),window._sp_=h,h.setupNetworkListeners=u,h.bootstrap=l,window.spBootstrap=l,t[\"default\"]=h},function(n,t,o){o(0);n.exports=o(1)[\"default\"]},function(n,t,o){\"use strict\";function e(n){return n.join(\"\")}o.d(t,\"b\",function(){return r}),o.d(t,\"a\",function(){return i});var r=(o(0),\"2.0.1064\"),i=(e([\"w\",\"w\",\"w\",\".\",\"s\",\"u\",\"m\",\"m\",\"e\",\"r\",\"h\",\"a\",\"m\",\"s\",\"t\",\"e\",\"r\",\".\",\"c\",\"o\",\"m\"]),e([\"w\",\"w\",\"w\",\".\",\"r\",\"o\",\"o\",\"s\",\"t\",\"e\",\"r\",\"f\",\"i\",\"r\",\"e\",\"w\",\"o\",\"r\",\"k\",\".\",\"c\",\"o\",\"m\"]));e([\"/\",\"/\",\"f\",\"s\",\"m\",\"1\",\"0\",\"1\",\"9\",\".\",\"g\",\"l\",\"o\",\"b\",\"a\",\"l\",\".\",\"s\",\"s\",\"l\",\".\",\"f\",\"a\",\"s\",\"t\",\"l\",\"y\",\".\",\"n\",\"e\",\"t\",\"/\",\"f\",\"s\",\"m\",\"/\",\"d\",\"s\"]),e([\"h\",\"t\",\"t\",\"p\",\"s\",\":\",\"/\",\"/\",\"d\",\"2\",\"z\",\"v\",\"5\",\"r\",\"k\",\"i\",\"i\",\"4\",\"6\",\"m\",\"i\",\"q\",\".\",\"c\",\"l\",\"o\",\"u\",\"d\",\"f\",\"r\",\"o\",\"n\",\"t\",\".\",\"n\",\"e\",\"t\",\"/\",\"0\",\"/\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\"/\",\"r\",\"e\",\"c\",\"o\",\"v\",\"e\",\"r\",\"y\",\"_\",\"d\",\"f\",\"p\",\"_\",\"i\",\"n\",\"t\",\"e\",\"r\",\"n\",\"a\",\"l\",\"-\",\"v\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\".\",\"j\",\"s\"]),e([\"h\",\"t\",\"t\",\"p\",\"s\",\":\",\"/\",\"/\",\"d\",\"2\",\"z\",\"v\",\"5\",\"r\",\"k\",\"i\",\"i\",\"4\",\"6\",\"m\",\"i\",\"q\",\".\",\"c\",\"l\",\"o\",\"u\",\"d\",\"f\",\"r\",\"o\",\"n\",\"t\",\".\",\"n\",\"e\",\"t\",\"/\",\"0\",\"/\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\"/\",\"r\",\"e\",\"c\",\"o\",\"v\",\"e\",\"r\",\"y\",\"_\",\"l\",\"i\",\"b\",\"_\",\"a\",\"p\",\"i\",\"_\",\"i\",\"f\",\"r\",\"a\",\"m\",\"e\",\"-\",\"v\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\".\",\"h\",\"t\",\"m\",\"l\"]),e([\"h\",\"t\",\"t\",\"p\",\"s\",\":\",\"/\",\"/\",\"d\",\"2\",\"z\",\"v\",\"5\",\"r\",\"k\",\"i\",\"i\",\"4\",\"6\",\"m\",\"i\",\"q\",\".\",\"c\",\"l\",\"o\",\"u\",\"d\",\"f\",\"r\",\"o\",\"n\",\"t\",\".\",\"n\",\"e\",\"t\",\"/\",\"0\",\"/\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\"/\",\"r\",\"e\",\"c\",\"o\",\"v\",\"e\",\"r\",\"y\",\"_\",\"l\",\"i\",\"b\",\"_\",\"r\",\"i\",\"d\",\"_\",\"i\",\"f\",\"r\",\"a\",\"m\",\"e\",\"-\",\"v\",\"2\",\".\",\"0\",\".\",\"1\",\"0\",\"6\",\"4\",\".\",\"h\",\"t\",\"m\",\"l\"])},function(n,t,o){\"use strict\";function e(n,t){function o(n){try{return n&&n.timeStamp?n.timeStamp:window.performance.now()}catch(n){return Date.now()}}var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window.location,l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:window.navigator,f=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},p=document.createElement(\"a\");if(p.href=n,\"https:\"===e.protocol&&p.protocol!==e.protocol)return r.error(\"protocol mismatch in https environment, standing down\"),void t(!1,!1,p.protocol,s);var v=new XMLHttpRequest,g=f.withCredentials;null!=g&&(v.withCredentials=g);try{v.open(f.method||\"GET\",n)}catch(n){return void t(!0,!1,n.toString(),c,v)}if(null!=f.headers){var m=f.headers;Object.keys(m).forEach(function(n){v.setRequestHeader(n,m[n])})}var w=void 0,b=void 0;v.onloadstart=function(n){w=o(n)},v.onreadystatechange=function(n){if(4===this.readyState){b=o(n)-w;var e=0===this.status&&!1!==l.onLine,r=\"2\"===this.status.toString()[0],c=void 0;return c=r?a:!1===l.onLine?u:i,void t(e,r,this.status+\"::\"+b,c,v)}};try{v.send(f.body)}catch(n){return void t(!0,!1,n.toString(),d,v)}}t.a=e;var r=o(0),i=\"n\",a=\"nx\",c=\"xo\",d=\"xs\",s=\"p\",u=\"of\"},function(n,t,o){\"use strict\";function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,t=[],o=[],e=r.bind(null,t),i=r.bind(null,o);return n.addEventListener(\"load\",e,!0),n.addEventListener(\"error\",i,!0),{load:{events:t,listener:e},error:{events:o,listener:i}}}function r(n,t){if(t.target){var o=\"string\"==typeof t.target.tagName?t.target.tagName.toLowerCase():\"\",e=\"string\"==typeof t.target.src?t.target.src:\"\";\"iframe\"!==o&&n.push({tagName:o,src:e})}}t.a=e;o(0)}]);\n//# sourceMappingURL=https://s3.amazonaws.com/d3jlsadfjkuern/2.0.1064/Ym9vdHN0cmFwLmpz.map","/*!\nWaypoints - 4.0.1\nCopyright © 2011-2016 Caleb Troughton\nLicensed under the MIT license.\nhttps://github.com/imakewebthings/waypoints/blob/master/licenses.txt\n*/\n!function(){\"use strict\";function t(o){if(!o)throw new Error(\"No options passed to Waypoint constructor\");if(!o.element)throw new Error(\"No element option passed to Waypoint constructor\");if(!o.handler)throw new Error(\"No handler option passed to Waypoint constructor\");this.key=\"waypoint-\"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?\"horizontal\":\"vertical\",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=t.Context.findOrCreateByElement(this.options.context),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll(\"destroy\")},t.disableAll=function(){t.invokeAll(\"disable\")},t.enableAll=function(){t.Context.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.Context.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={context:window,continuous:!0,enabled:!0,group:\"default\",horizontal:!1,offset:0},t.offsetAliases={\"bottom-in-view\":function(){return this.context.innerHeight()-this.adapter.outerHeight()},\"right-in-view\":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){\"use strict\";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key=\"waypoint-context-\"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointContextKey=this.key,o[t.waypointContextKey]=this,i+=1,n.windowContext||(n.windowContext=!0,n.windowContext=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?\"horizontal\":\"vertical\";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(\".waypoints\"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on(\"resize.waypoints\",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on(\"scroll.waypoints\",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.Context.refreshAll()},e.prototype.handleScroll=function(){var t={},e={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:\"right\",backward:\"left\"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:\"down\",backward:\"up\"}};for(var i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{contextOffset:e?0:i.left,contextScroll:e?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:\"right\",backward:\"left\",offsetProp:\"left\"},vertical:{contextOffset:e?0:i.top,contextScroll:e?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:\"down\",backward:\"up\",offsetProp:\"top\"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),\"function\"==typeof f?f=f.apply(d):\"string\"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf(\"%\")>-1&&(f=Math.ceil(s.contextDimension*f/100))),l=s.contextScroll-s.contextOffset,d.triggerPoint=Math.floor(y+l-f),h=w=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointContextKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.Context=e}(),function(){\"use strict\";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+\"-\"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n=\"up\"===i||\"left\"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){\"use strict\";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each([\"innerHeight\",\"innerWidth\",\"off\",\"offset\",\"on\",\"outerHeight\",\"outerWidth\",\"scrollLeft\",\"scrollTop\"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each([\"extend\",\"inArray\",\"isEmptyObject\"],function(i,o){t[o]=e[o]}),i.adapters.push({name:\"jquery\",Adapter:t}),i.Adapter=t}(),function(){\"use strict\";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});\"string\"==typeof n.context&&(n.context=t(this).closest(n.context)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}();",";(function ($, window, document, undefined) {\n 'use strict';\n\n Foundation.libs.offcanvas = {\n name : 'offcanvas',\n\n version : '5.5.3',\n\n settings : {\n open_method : 'move',\n close_on_click : false\n },\n\n init : function (scope, method, options) {\n this.bindings(method, options);\n },\n\n events : function () {\n var self = this,\n S = self.S,\n move_class = '',\n right_postfix = '',\n left_postfix = '',\n top_postfix = '',\n bottom_postfix = '';\n\n if (this.settings.open_method === 'move') {\n move_class = 'move-';\n right_postfix = 'right';\n left_postfix = 'left';\n top_postfix = 'top';\n bottom_postfix = 'bottom';\n } else if (this.settings.open_method === 'overlap_single') {\n move_class = 'offcanvas-overlap-';\n right_postfix = 'right';\n left_postfix = 'left';\n top_postfix = 'top';\n bottom_postfix = 'bottom';\n } else if (this.settings.open_method === 'overlap') {\n move_class = 'offcanvas-overlap';\n }\n\n S(this.scope).off('.offcanvas')\n .on('click.fndtn.offcanvas', '.left-off-canvas-toggle', function (e) {\n self.click_toggle_class(e, move_class + right_postfix);\n if (self.settings.open_method !== 'overlap') {\n S('.left-submenu').removeClass(move_class + right_postfix);\n }\n $('.left-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.left-off-canvas-menu a', function (e) {\n var settings = self.get_settings(e);\n var parent = S(this).parent();\n\n if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {\n self.hide.call(self, move_class + right_postfix, self.get_wrapper(e));\n parent.parent().removeClass(move_class + right_postfix);\n } else if (S(this).parent().hasClass('has-submenu')) {\n e.preventDefault();\n S(this).siblings('.left-submenu').toggleClass(move_class + right_postfix);\n } else if (parent.hasClass('back')) {\n e.preventDefault();\n parent.parent().removeClass(move_class + right_postfix);\n }\n $('.left-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n //end of left canvas\n .on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) {\n self.click_toggle_class(e, move_class + left_postfix);\n if (self.settings.open_method !== 'overlap') {\n S('.right-submenu').removeClass(move_class + left_postfix);\n }\n $('.right-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.right-off-canvas-menu a', function (e) {\n var settings = self.get_settings(e);\n var parent = S(this).parent();\n\n if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {\n self.hide.call(self, move_class + left_postfix, self.get_wrapper(e));\n parent.parent().removeClass(move_class + left_postfix);\n } else if (S(this).parent().hasClass('has-submenu')) {\n e.preventDefault();\n S(this).siblings('.right-submenu').toggleClass(move_class + left_postfix);\n } else if (parent.hasClass('back')) {\n e.preventDefault();\n parent.parent().removeClass(move_class + left_postfix);\n }\n $('.right-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n //end of right canvas\n .on('click.fndtn.offcanvas', '.top-off-canvas-toggle', function (e) {\n self.click_toggle_class(e, move_class + bottom_postfix);\n if (self.settings.open_method !== 'overlap') {\n S('.top-submenu').removeClass(move_class + bottom_postfix);\n }\n $('.top-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.top-off-canvas-menu a', function (e) {\n var settings = self.get_settings(e);\n var parent = S(this).parent();\n\n if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {\n self.hide.call(self, move_class + bottom_postfix, self.get_wrapper(e));\n parent.parent().removeClass(move_class + bottom_postfix);\n } else if (S(this).parent().hasClass('has-submenu')) {\n e.preventDefault();\n S(this).siblings('.top-submenu').toggleClass(move_class + bottom_postfix);\n } else if (parent.hasClass('back')) {\n e.preventDefault();\n parent.parent().removeClass(move_class + bottom_postfix);\n }\n $('.top-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n //end of top canvas\n .on('click.fndtn.offcanvas', '.bottom-off-canvas-toggle', function (e) {\n self.click_toggle_class(e, move_class + top_postfix);\n if (self.settings.open_method !== 'overlap') {\n S('.bottom-submenu').removeClass(move_class + top_postfix);\n }\n $('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.bottom-off-canvas-menu a', function (e) {\n var settings = self.get_settings(e);\n var parent = S(this).parent();\n\n if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {\n self.hide.call(self, move_class + top_postfix, self.get_wrapper(e));\n parent.parent().removeClass(move_class + top_postfix);\n } else if (S(this).parent().hasClass('has-submenu')) {\n e.preventDefault();\n S(this).siblings('.bottom-submenu').toggleClass(move_class + top_postfix);\n } else if (parent.hasClass('back')) {\n e.preventDefault();\n parent.parent().removeClass(move_class + top_postfix);\n }\n $('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n //end of bottom\n .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {\n self.click_remove_class(e, move_class + left_postfix);\n S('.right-submenu').removeClass(move_class + left_postfix);\n if (right_postfix) {\n self.click_remove_class(e, move_class + right_postfix);\n S('.left-submenu').removeClass(move_class + left_postfix);\n }\n $('.right-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {\n self.click_remove_class(e, move_class + left_postfix);\n $('.left-off-canvas-toggle').attr('aria-expanded', 'false');\n if (right_postfix) {\n self.click_remove_class(e, move_class + right_postfix);\n $('.right-off-canvas-toggle').attr('aria-expanded', 'false');\n }\n })\n .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {\n self.click_remove_class(e, move_class + top_postfix);\n S('.bottom-submenu').removeClass(move_class + top_postfix);\n if (bottom_postfix) {\n self.click_remove_class(e, move_class + bottom_postfix);\n S('.top-submenu').removeClass(move_class + top_postfix);\n }\n $('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');\n })\n .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {\n self.click_remove_class(e, move_class + top_postfix);\n $('.top-off-canvas-toggle').attr('aria-expanded', 'false');\n if (bottom_postfix) {\n self.click_remove_class(e, move_class + bottom_postfix);\n $('.bottom-off-canvas-toggle').attr('aria-expanded', 'false');\n }\n });\n },\n\n toggle : function (class_name, $off_canvas) {\n $off_canvas = $off_canvas || this.get_wrapper();\n if ($off_canvas.is('.' + class_name)) {\n this.hide(class_name, $off_canvas);\n } else {\n this.show(class_name, $off_canvas);\n }\n },\n\n show : function (class_name, $off_canvas) {\n $off_canvas = $off_canvas || this.get_wrapper();\n $off_canvas.trigger('open.fndtn.offcanvas');\n $off_canvas.addClass(class_name);\n },\n\n hide : function (class_name, $off_canvas) {\n $off_canvas = $off_canvas || this.get_wrapper();\n $off_canvas.trigger('close.fndtn.offcanvas');\n $off_canvas.removeClass(class_name);\n },\n\n click_toggle_class : function (e, class_name) {\n e.preventDefault();\n var $off_canvas = this.get_wrapper(e);\n this.toggle(class_name, $off_canvas);\n },\n\n click_remove_class : function (e, class_name) {\n e.preventDefault();\n var $off_canvas = this.get_wrapper(e);\n this.hide(class_name, $off_canvas);\n },\n\n get_settings : function (e) {\n var offcanvas = this.S(e.target).closest('[' + this.attr_name() + ']');\n return offcanvas.data(this.attr_name(true) + '-init') || this.settings;\n },\n\n get_wrapper : function (e) {\n var $off_canvas = this.S(e ? e.target : this.scope).closest('.off-canvas-wrap');\n\n if ($off_canvas.length === 0) {\n $off_canvas = this.S('.off-canvas-wrap');\n }\n return $off_canvas;\n },\n\n reflow : function () {}\n };\n}(jQuery, window, window.document));\n"],"names":["googletag","adConfig","$","adSlotSettings","layout","logger","sticky","timer","config","analytics","classNames","modifierNames","adSlots","definedSlots","slotSettings","providers","providerEventDetails","events","mpuAds","definedAdSlots","isSlotVisible","slotId","is","callbacks","cmd","push","debug","secondsSincePageStart","i","length","display","pubads","refresh","filter","item","id","overlay","slotsToLoad","mpuGallery","gamEventHandlers","onSlotOnLoad","leaderboard1","addBemClass","onSlotRenderEnded","event","size","$leaderboardAd","css","resizeStickyLeaderboard","onImpressionViewable","unsetStickyLeaderboard","providerComplete","eventId","providerId","eventDetails","pause","timeout","index","some","element","isComplete","every","callback","isFunction","cancel","apply","this","arguments","resume","providerTimeout","fireProviderEvent","eventData","args","Date","now","eventProviders","provider","map","getId","begin","bidProviderTimeout","data","onCompleteCallback","forEach","setVisibility","$context","each","$adContainer","parent","attr","removeAttr","defineAdSlot","adSlot","slotSize","isMobile","sizes","mobile","desktop","adUnitPath","site","sectionName","slot","defineSlot","setTargeting","addService","sizeMapping","defineSizeMapping","defineAdSlots","numOfVisibleMpuAds","toArray","mpu","setVisibleMpuAds","inlineFooter","gumGum","seedTag","mpuAdSlot","key","targetingKeyValues","hasOwnProperty","value","pageViewId","paidTrafficValue","ppcTrackingParams","params","paidCampaignValue","utmMedium","utmSource","trackingIdName","trackingId","enableSingleRequest","enableLazyLoad","fetchMarginPercent","renderMarginPercent","mobileScaling","getTargeting","keyValuePairs","window","localStorage","getItem","JSON","parse","vendorName","addEventListener","slotElementId","getSlotElementId","addDataLayerValues","enableServices","module","exports","init","$mpuInjectionPoints","initialInjectedAdIndex","maxAdInjections","disableInitialLoad","maxMpuCount","adIndex","$injectionElement","remove","find","addClass","location","search","indexOf","findByBem","loadAds","loadInfiniteEditorialAds","loadGalleryAds","initTakeover","settings","width","link","$body","hasClass","leftBackgroundImage","leftBackgroundPosition","rightBackgroundImage","rightBackgroundPosition","style","backgroundColor","leftGutterImage","rightGutterImage","backgroundImage","backgroundPosition","backgroundSize","mainImage","backgroundFixed","backgroundAttachment","backgroundRepeat","paddingTop","topAdSpaceHeight","paddingRight","rightGutterWidth","paddingLeft","leftGutterWidth","padding","mainImageBackgroundSize","cursor","off","on","e","target","tagName","toLowerCase","stopPropagation","open","focus","positionValue","menu","advert","skins","heightWatcher","screenSizeWatcher","sourcepoint","permutive","affiliateLinks","admiralTargeting","covatic","initialiseBasePage","alert","console","info","pushToDataLayer","document","foundation","start","initBasePage","initDfp","adverts","equalizeGridHeights","innerTag","$grid","$items","children","screenSize","getScreenSize","columns","prop","isNaN","parseInt","$item","count","highest","row","not","height","parents","watchElementHeight","self","getContentOffset","result","$siteHeader","outerHeight","toUpperCase","scrollTop","offset","duration","animate","initMoreMenu","menuTop","$horizontalNav","position","top","$moreLink","$moreMenu","$moreMenuList","overflowDropdowns","overflowSingles","preventDefault","slideUp","slideDown","getComputedStyle","clone","html","$list","appendTo","append","show","hide","block","isActive","hasBemClass","trigger","siblings","childrenByBem","removeBemClass","waypointInstances","stickyMpuAdWaypoints","removeStickyInstance","baseClassName","$stickyElement","stickyInstance","bottomInstance","destroy","stickMpu","classList","add","setStickyMpuAds","initWaypoints","waypoint","adBlock","get","adContainer","querySelector","Waypoint","handler","direction","stuckElement","removeClass","scroll","setStickySidebar","desktopSidebarInnerClassName","getBemClass","$desktopSidebar","$siteFooter","stickyOffset","$bottomElement","bottomOffset","stickyElementBottom","createStickyInstance","siteContentInnerHeight","maxAdSlots","stickyContainerClassName","$stickyContainer","Math","floor","slice","onChange","load","setKeyValue","undefined","admiral","warn","page","templateName","isAffiliate","toString","getValueOrNotSet","updateTrackingLinks","trackingParams","excludedDomains","href","isExcluded","prefix","startsWith","URL","hostname","error","isExternalLink","closest","$link","linkParams","URLSearchParams","Object","keys","set","updateLinkParams","buildQueryParams","obj","bauerDataLayer","trackEvent","category","action","label","eventCategory","eventAction","eventLabel","eventValue","trackPageview","url","title","pageView","virtualPageUrl","virtualPageTitle","trackIpsosIrisPageView","ii","dm","AjaxEvent","values","tgConfig","vendorConsents","covaticBrowserSDK","async","handleTcfEvent","eventName","vendorId","addTcfApiHandler","hasIABVendorConsent","mediaConsumptionData","MediaConsumptionData","Client","clientConfig","notifyConsent","isReady","notifySubscription","notifyEvent","MediaConsumption","mediaAssetTitle","cvcDescription","mediaTag","mediaSubsection","Action","commenceMedia","Type","text","audienceProfiles","getLinkedAudiences","setItem","consentGranted","removeItem","eventNames","userActionComplete","subsequentPageLoad","modifier","context","fn","closestByBem","filterByBem","parentsByBem","siblingsByBem","nextByBem","next","nextAllByBem","nextAll","prevByBem","prev","prevAllByBem","prevAll","disable","disabledCssClass","disabledText","enable","enabledText","message","debugMode","log","debugMessage","isDebugMode","pageStart","consent","consentRefused","onRetrieveVendorAndPurposeConsents","consentLinkIds","showPrivacyManagerLink","linkId","conditionallySetAdBlockDetection","account_id","messaging_subdomain","_sp_","mms_domain","mms_client_data_callback","o","mms_choice_selected_callback","choiceID","mms","startMsg","bootstrap","assetsUrl","gdprApplies","__uspapi","uspData","stringify","delay","remaining","timerId","setTimeout","clearTimeout","uiShown","validVendorId","Number","tcData","Promise","resolve","reject","__tcfapi","success","Error","onGetTCData","vendor","consents","err","eventStatus","listenerId","successCallback","failureCallback","hasBauerConsent","hasStoreAndAccessInfoConsent","hasSelectPersonalisedAds","hasCreatePersonalisedAdsProfile","consentedVendors","name","consentedPurposes","purpose","heightWatcherCallbacks","func","$element","interval","previousHeight","run","newHeight","screenSizeWatcherCallbacks","newSize","previousSize","n","t","r","l","call","m","c","d","defineProperty","configurable","enumerable","__esModule","prototype","p","s","concat","Array","time","useDefaults","DEBUG","Image","src","G","encodeURIComponent","v","b","_","B","g","lastIndexOf","u","substring","f","a","enableImageLoad","onError","createElement","onload","onLoad","onerror","navigator","userAgent","opera","x","U","S","E","O","host","w","I","j","k","head","appendChild","C","q","R","L","N","F","y","h","_networkListenerData","D","z","contentControlCallback","content_control_callback","accountId","client_id","sp_cid","beacon","contentControlEndpoint","content_control_beacon_endpoint","debug_level","level","match","defaultLevel","join","setupNetworkListeners","spBootstrap","timeStamp","performance","protocol","XMLHttpRequest","withCredentials","method","headers","setRequestHeader","onloadstart","onreadystatechange","readyState","status","onLine","send","body","bind","listener","options","Adapter","extend","defaults","adapter","axis","horizontal","enabled","triggerPoint","group","Group","findOrCreate","Context","findOrCreateByElement","offsetAliases","queueTrigger","previous","invokeAll","destroyAll","disableAll","enableAll","refreshAll","viewportHeight","innerHeight","documentElement","clientHeight","viewportWidth","clientWidth","adapters","continuous","innerWidth","outerWidth","didScroll","didResize","oldScroll","scrollLeft","waypoints","vertical","waypointContextKey","windowContext","createThrottledScrollHandler","createThrottledResizeHandler","checkEmpty","isEmptyObject","handleResize","requestAnimationFrame","handleScroll","isTouch","newScroll","forward","backward","flushTriggers","contextOffset","left","contextScroll","contextDimension","offsetProp","parseFloat","ceil","findByElement","mozRequestAnimationFrame","webkitRequestAnimationFrame","clearTriggerQueues","triggerQueues","up","down","right","sort","inArray","splice","first","last","jQuery","Zepto","Foundation","libs","offcanvas","version","open_method","close_on_click","scope","bindings","move_class","right_postfix","left_postfix","top_postfix","bottom_postfix","click_toggle_class","get_settings","toggleClass","get_wrapper","click_remove_class","toggle","class_name","$off_canvas","attr_name","reflow"],"sourceRoot":""}