CINXE.COM
Broadcast Global TV Production Map 2022 | Sponsored | Broadcast
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <link rel="preload" as="style" href="/Magazine/core.css?p=7513768136130952"> <link rel="preload" as="script" href="/Magazine/core.js?p=7513768136130952"> <link rel="preload" as="image" href="https://d11p0alxbet5ud.cloudfront.net/Pictures/480xany/7/5/9/1378759_globalproductionmap2022_32153.png" imagesrcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/480xany/7/5/9/1378759_globalproductionmap2022_32153.png 480w,https://d11p0alxbet5ud.cloudfront.net/Pictures/600xany/7/5/9/1378759_globalproductionmap2022_32153.png 600w,https://d11p0alxbet5ud.cloudfront.net/Pictures/780xany/7/5/9/1378759_globalproductionmap2022_32153.png 780w" imagesizes="(max-width: 1023px) 100vw, 780px" /> <!-- OneTrust Cookies Consent Notice start for Broadcast: Television and radio news, comment, jobs, data and analysis --> <script src="https://cdn-ukwest.onetrust.com/scripttemplates/otSDKStub.js" type="text/javascript" charset="UTF-8" data-domain-script="fbc6f478-23ca-4f7b-af7a-5be6e67a81a0" ></script> <script type="text/javascript"> function OptanonWrapper() { } </script> <!-- OneTrust Cookies Consent Notice end for Broadcast: Television and radio news, comment, jobs, data and analysis --> <title>Broadcast Global TV Production Map 2022 | Sponsored | Broadcast</title> <meta name="description" content="The shape of the consolidated world" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="momentnowdate" content="2024-11-24 15:25:18.360"/> <meta name="momentlocale" content="en-gb"/> <meta name="momentlocaleformat" content="D MMMM YYYY"/> <meta name="momentrelative" content="false"/> <meta name="momentrelativeformat" content="YYYY,MM,DD"/> <meta name="momentrelativemorethan" content="10"/> <meta name="pubdate" content="Mon, 30 May 2022 15:41 GMT" /> <link rel="canonical" href="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article" /> <meta name="blockthis" content="blockGA" /> <meta name="showwallpaper" content="true" /> <meta name="navcode" content="5716" /> <meta name="primarynavigation" content="Indies" /> <meta property="og:title" content="Broadcast Global TV Production Map 2022" /> <meta property="og:type" content="Article" /> <meta property="og:url" content="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article" /> <meta property="og:site_name" content="Broadcast" /> <meta property="og:description" content="The shape of the consolidated world" /> <meta property="og:image:width" content="1024" /> <meta property="og:image:height" content="536" /> <meta property="og:image" content="https://d11p0alxbet5ud.cloudfront.net/Pictures/1024x536/1/6/9/1372169_alex_global_production_map_flipped_99812.jpg" /> <meta property="og:image:alt" content="Global TV Production Map" /> <meta property="og:image" content="https://d11p0alxbet5ud.cloudfront.net/Pictures/1024x536/5/0/1/1372501_productionmap_479980.jpg" /> <meta property="og:image:alt" content="Production Map" /> <meta property="og:image" content="https://d11p0alxbet5ud.cloudfront.net/Pictures/1024x536/7/5/9/1378759_globalproductionmap2022_32153.png" /> <meta property="og:image:alt" content="Global Production Map 2022" /> <meta property="twitter:card" content="summary_large_image" /> <meta property="twitter:title" content="Broadcast Global TV Production Map 2022" /> <meta property="twitter:description" content="The shape of the consolidated world" /> <meta property="twitter:image:src" content="https://d11p0alxbet5ud.cloudfront.net/Pictures/1120xAny/1/6/9/1372169_alex_global_production_map_flipped_99812.jpg" /> <meta property="twitter:image:alt" content="Global TV Production Map" /> <link rel="icon" href="/magazine/dest/graphics/favicons/favicon-32x32.png" /> <!--[if IE]><link rel="shortcut icon" href="/magazine/dest/graphics/favicons/favicon.ico" /><![endif]--> <link rel="apple-touch-icon-precomposed" href="/magazine/dest/graphics/favicons/apple-touch-icon-precomposed.png" /> <meta name="msapplication-TileImage" content="/magazine/dest/graphics/favicons/mstile-144x144.png" /> <meta name="msapplication-TileColor" content="#ffffff" /> <link href="/Magazine/core.css?p=7513768136130952" rel="stylesheet" type="text/css"> <link href="/Magazine/print.css?p=7513768136130952" rel="stylesheet" type="text/css" media="print"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script>var newLang={"more":{"default":"Show more","searchtype":"Show more","searchdates":"Show more"},"less":{"default":"Show fewer","searchtype":"Show fewer","searchdates":"Show fewer"},"show":{"default":"show"},"hide":{"default":"hide"},"caption":{"show":"show caption","hide":"hide caption"},"carousel":{"play":"play slideshow","pause":"pause slideshow"}};</script> <script type="text/javascript"> var IPState = { useripstate: false, useripname: '' }; </script> <script type="text/javascript"> window.dataLayer = window.dataLayer || []; window.dataLayer.push({'StoryID':'5171316'}); window.dataLayer.push({'StoryFormatProperty':'S'}); window.dataLayer.push({'StoryCategories':'|Home|Indies|'}); window.dataLayer.push({'StoryLayout':'Standard'}); window.dataLayer.push({'StoryWidth':'standard width'}); window.dataLayer.push({'StoryLayoutCode':'1'}); window.dataLayer.push({'StoryFormatCode':'1099'}); window.dataLayer.push({'StoryTypeCode':'11008'}); window.dataLayer.push({'StoryCategoriesCodes':'|11906|11930|'}); window.dataLayer.push({'StoryFullNavPath':'|430|5716|'}); window.dataLayer.push({'UserID':undefined}); window.dataLayer.push({'NavCode':'5716'}); window.dataLayer.push({'MicrositeNavCode':'-1'}); window.dataLayer.push({'NavKey':'5716'}); window.dataLayer.push({'NavigationAreaNavCode':'5716'}); </script> <script type="text/javascript"> window.dataLayer = window.dataLayer || []; window.dataLayer.push({'LoggedIn':'False'}); window.dataLayer.push({'AuthorName':'|Barclays|'}); window.dataLayer.push({'ContentAccessStatus':'Granted'}); window.dataLayer.push({'StoryType':'Sponsored'}); window.dataLayer.push({'UserStateLoggedIn':'False'}); window.dataLayer.push({'FullNavPath':'|430|5716|'}); </script> <link href="https://fonts.googleapis.com/css?family=Merriweather:300,400,700|Roboto:400,700" rel="stylesheet"> <style type="text/css"> .intel { background-color:#ff7043 !important; } .container.bottomAdContainer { margin:0 !important; } /* Corporate yellow full width */ .full-width-background.yellow { background-color: #FEE655; } .spin2scroller.yellow .more a{ color: #003972; } .spin2scroller.yellow .more a:hover{ color: #003972; text-decoration: underline; } .spin2scroller.yellow .more a:visited{ color: #003972; text-decoration: underline; } .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn div.full-width-background.yellow>.sleeve { padding: 20px 20px; max-width: 1024px; } .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn div.full-width-background.yellow>.sleeve .sectionhead h2 { border-bottom: none; margin-bottom: 10px; } .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn div.full-width-background.yellow>.sleeve .sectionhead h2 a{ color:#003972; } .yellow .description { color: #003972; } .desktopNavigation ul.main li.yourBroadcast{ background: no-repeat url(https://d11p0alxbet5ud.cloudfront.net/Pictures/web/e/e/g/loction_pin_132796.svgz); background-position: right 16px; padding-right: 10px; float: right; } .desktopNavigation ul.main>li.yourBroadcast>a>span { color:#FEE655; } </style> <!-- START PATCH: MBICS-304 --> <style> .story_video.instagram .videoblock{ padding-bottom: 100%; } .story_video.instagram .videoblock iframe.instagram-media{ max-width: 100% !important; } </style> <!-- END PATCH: MBICS-304 --> <style> @media screen and (max-width: 767px){ .mob-ad-75 { min-height: 75px; } } /* CLS with wallpaper - fix site width */ #wrapper_sleeve { position: relative; max-width: 1024px; margin:0 auto; background-color: #fff; } body#story.story-style-2 #wrapper_sleeve, body#story.story-style-4 #wrapper_sleeve, body#story.story-style-5 #wrapper_sleeve, body#story.story-style-6 #wrapper_sleeve, body#story.story-style-7 #wrapper_sleeve{ max-width:unset; margin-top:31px; } @media screen and (min-width: 1024px) { body#story.story-style-2 #wrapper_sleeve, body#story.story-style-4 #wrapper_sleeve, body#story.story-style-5 #wrapper_sleeve, body#story.story-style-6 #wrapper_sleeve, body#story.story-style-7 #wrapper_sleeve{ max-width:unset; margin-top:60px; } } body#story.story-style-2 #wrapper_sleeve>:first-child, body#story.story-style-4 #wrapper_sleeve>:first-child, body#story.story-style-5 #wrapper_sleeve>:first-child, body#story.story-style-6 #wrapper_sleeve>:first-child, body#story.story-style-7 #wrapper_sleeve>:first-child{ padding-top: 0; } .footer { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; } .wallpaper-applied.site-width-1024 .container.hot-topics-container .inner-sleeve { max-width: 1180px; width:auto; margin: 0 auto; } .container.hot-topics-container .inner-sleeve { max-width: 1180px; width:auto; margin: 0 auto; } .footer .container .inner-sleeve { max-width: 1220px; } #wrapper_sleeve>:first-child { padding-top: 31px; background-color: #fff; } .accessContainer>.container:first-child .inner-sleeve { padding-top: 60px; } @media only screen and (max-width: 768px) { .accessContainer .storyPreview .access-denied-index-img.picture img{ width:100px; } } @media screen and (min-width: 1024px){ /* .hero-spin{ width:100%; margin-left: -50%; margin-right: -50%; } .grid .hero-carousel .swiper-box, .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn .spinVideo.full-width-background, .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn .spinVideo.site-width-background, .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn div.full-width-background, .container>.inner-sleeve:not(#colwrapper) .grid .oneColumn div.site-width-background{ width:100%; margin-left: calc(-50% + 50%); } */ body#story.story-style-1 .contentWrapper{ width: auto; padding-right: 7%; } body#story.story-style-2 .contentWrapper, body#story.story-style-4 .contentWrapper, body#story.story-style-5 .contentWrapper, body#story.story-style-6 .contentWrapper, body#story.story-style-7 .contentWrapper { width: 107%; padding-right: 7%; } } @media screen and (min-width: 1180px){ /*.grid .hero-carousel .swiper-box{ width:100%; margin-left: -50%; margin-right: -50%; } } */ .wallpaper-applied.site-width-1024 #mainnav > .inner-sleeve { max-width: 1220px; } .wallpaper-applied.site-width-1024 .mast > .inner-sleeve { max-width: 1220px; } .wallpaper-applied.site-width-1024 .footer .inner-sleeve { max-width: 1220px; } .wallpaper-applied.site-width-1024 .ad-style1, .wallpaper-applied.site-width-1024 .container .inner-sleeve { max-width: 1220px; } /* CLS with wallpaper - fix site width */ </style> <!-- Start Temp Fix MBICS-652 --> <style> .contactList ul li { border-bottom: 0 solid #bebebe; / } </style> <!-- End Temp Fix MBICS-652 --> <!-- Start Temp Fix MBICS-694 --> <style> .factfile_dark a { color:#fff; text-decoration:underline; } .factfile_dark a:hover { text-decoration:none; } </style> <!-- End Temp Fix MBICS-694 --> <style> /* TEMP FIX PWVD-819*/ @media screen and (max-width:1023px) { .enhanced-advertising #rightcolumn_sleeve { display:block; } #story.enhanced-advertising #rightcolumn_sleeve { display: none; } } </style> <style> .ad-text{ background: #f0f2f2; font-size: 0.675rem; padding: 2px; color: #444; text-transform: uppercase; border-top: 4px solid #DCDCDC; } </style> <script async='async' src='https://www.googletagservices.com/tag/js/gpt.js'></script> <!--<script sync src="//www.googletagservices.com/tag/js/gpt.js"></script>--> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; (function() { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; var useSSL = 'https:' == document.location.protocol; gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); </script> <script> if (top === self) { // } else { var parentIframes = top.document.querySelectorAll('iframe'); for (var i=0; i < parentIframes.length; i++) { var el = parentIframes[i]; if (el.contentWindow === self) { // here you can create an expandable ad var expandableAd; var googleDiv = el.parentNode; googleDiv.insertBefore(expandableAd, el); } } } </script> <script type='text/javascript'> function getDataLayerVal(keyVal) { for (var i = 0; i < window.dataLayer.length; i++) { if (dataLayer[i][keyVal] !== undefined) { return dataLayer[i][keyVal]; } } } //Testing for ad targetting var storyCategories = getDataLayerVal('StoryCategories'); if (storyCategories != null) { //option 1, is to extract values from pipe delimited list var categories1 = storyCategories.substring(1, storyCategories.length - 1); //remove | from start and end categories1 = categories1.split('|'); //split at | if (categories1.length > 0) { console.log(categories1[0]); //access item in array } //option 2 is replace pipes with commas var categories2 = storyCategories.substring(1, storyCategories.length - 1); //remove | from start and end categories2 = categories2.replace(/\|/g, ','); //replace pipes with commas if (categories2.length > 0) { console.log(categories2); } } //end testing for ad targetting //Testing for ad targetting - user reg level var visitorType2 = getDataLayerVal('RegLevel'); if (visitorType2 != null) { //option 1, is to extract values from pipe delimited list var visitor1 = visitorType2.substring(1, visitorType2.length - 1); //remove | from start and end visitor1 = visitor1.split('|'); //split at | if (visitor1.length > 0) { console.log(visitor1[0]); //access item in array } //option 2 is replace pipes with commas var visitor2 = visitorType2.substring(1, visitorType2.length - 1); //remove | from start and end visitor2 = visitor2.replace(/\|/g, ','); //replace pipes with commas if (visitor2.length > 0) { console.log(visitor2); } } //end testing for ad targetting var showwallpaper; if(document.querySelector('meta[name="showwallpaper"]')) { showwallpaper = document.querySelector('meta[name="showwallpaper"]').content; } googletag.cmd.push(function() { // Define a size mapping object. The first parameter to addSize is // a viewport size, while the second is a list of allowed ad sizes. var mapping = googletag.sizeMapping(). // 320, 0 addSize([320, 0], [300, 50]). // 480, 0 addSize([480, 0], [300, 75]). // 768, 0 addSize([768, 0], [300, 250]). // 1024, 0 addSize([1024, 0], [300, 350]).build(); var mapMPU = googletag.sizeMapping(). // 320, 0 addSize([320, 0], [[300, 50],[300,75],[320,50],[300,250]]). // 768, 0 addSize([768, 0], [[300, 250]]). // 1024, 0 addSize([1024, 0], [[300, 250],[300,600]]).build(); //addSize([1024, 0], [[300, 250],[300,50]]).build(); var mapSmallMPU = googletag.sizeMapping(). // 320, 0 addSize([320, 0], [[300,250]]). // 768, 0 addSize([768, 0], [[300, 250]]). // 1024, 0 addSize([1024, 0], [[300, 250]]).build(); var mapLB = googletag.sizeMapping(). // 320, 0 addSize([320, 0], [[300,50],[300,75],[320,50]]). //// 601, 0 addSize([601, 0], [[468,60],[320,50]]). // 768, 0 addSize([768, 0], [[1,1],[468,60],[728,90], [970,250]]). // 1024, 0 addSize([1024, 0], [[1,1],[468, 60],[728,90],[970,90], [970,250]]).build(); var mapLBUnderNav = googletag.sizeMapping(). addSize([0, 0], []). // 1024, 0 addSize([1050, 0], [[1024,250],[970,90]]).build(); var mapWallpaper = googletag.sizeMapping(). addSize([0, 0], []). // 1220, 0 addSize([1220, 0], [1,1]).build(); var mapHtmlskinleft = googletag.sizeMapping(). addSize([0, 0], []). // 1024, 0 addSize([1024, 0], [500,500]).build(); var mapOverlay = googletag.sizeMapping(). // 320, 0 addSize([320, 0], [300, 225]). // 480, 0 addSize([480, 0], [300, 225]). // 768, 0 addSize([768, 0], [700, 525]). // 1024, 0 addSize([1024, 0], [700, 525]).build() googletag.defineSlot('/21612928716/Broadcast/AdvertMastLB', [[970, 250],[320,50],[300,75]], 'div-gpt-AdvertMastLB').setTargeting('allow_expandable', 'true').defineSizeMapping(mapLB).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/Billboard', [970, 250], 'div-gpt-mapLBUnderNav').defineSizeMapping(mapLBUnderNav).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/SmallMPU', [300, 250], 'div-gpt-SmallMPU').defineSizeMapping(mapSmallMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/LargeMPU', [[300, 600],[300, 250]], 'div-gpt-LargeMPU').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertA', [300, 250], 'div-gpt-AdvertA').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertB', [300, 250], 'div-gpt-AdvertB').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertC', [300, 250], 'div-gpt-AdvertC').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertD', [300, 250], 'div-gpt-AdvertD').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertE', [300, 250], 'div-gpt-AdvertE').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertF', [300, 250], 'div-gpt-AdvertF').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/AdvertAttach', [300, 250], 'div-gpt-AdvertAttach').defineSizeMapping(mapMPU).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/articlebanner', [[970, 250], [300, 75], [728, 90]], 'div-gpt-ad-1623321883412-0').defineSizeMapping(mapLB).addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/articlebannerOLD', [770, 300], 'div-gpt-ad-article').addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/fireplace-bb', [1024, 250], 'div-gpt-ad-1619178117533-0').addService(googletag.pubads()); googletag.defineSlot('/21612928716/Broadcast/sport-micro-bb', [[1024, 250],[970, 250]], 'div-gpt-ad-1623256972251-0').defineSizeMapping(mapLB).addService(googletag.pubads()); var wallpaperSlot = googletag.defineOutOfPageSlot('/21612928716/Broadcast/Wallpaper', 'div-gpt-wallpaper').defineSizeMapping(mapWallpaper).addService(googletag.pubads()).setTargeting('url', document.location.pathname); googletag.pubads().addEventListener("slotRenderEnded", function(a){ a.slot.getSlotElementId()!=wallpaperSlot.getSlotElementId()||a.isEmpty||(document.querySelector(".wallpaper-ad[data-site-width-1024]")&&(document.body.className+=" site-width-1024"),"true"===showwallpaper&&(document.body.className+=" wallpaper-applied")); $(window).trigger('wallpaper:advert') }); googletag.defineOutOfPageSlot('/21612928716/Broadcast/Overlay', 'div-gpt-overlay').addService(googletag.pubads()); googletag.pubads().setTargeting('visitortype', ['reg', 'sub', 'none'], getDataLayerVal('RegLevel')); googletag.pubads().setTargeting('navcode', getDataLayerVal('NavCode')); googletag.pubads().setTargeting('storycode', getDataLayerVal('StoryID')); googletag.pubads().setTargeting('storylayout', getDataLayerVal('StoryLayout')); googletag.pubads().setTargeting('storycat', getDataLayerVal('StoryCategories')); googletag.pubads().setTargeting('jobfunction', getDataLayerVal('JobFunction')); googletag.pubads().setTargeting('jobtitle', getDataLayerVal('JobTitleTITLE')); googletag.pubads().setTargeting('joblevel', getDataLayerVal('JobLevel')); googletag.pubads().setTargeting('StoryType', getDataLayerVal('StoryType')); googletag.pubads().setTargeting('categories2', categories2); googletag.pubads().setTargeting('visitor2', visitor2); googletag.pubads().collapseEmptyDivs(true); //LAZY LOAD /* googletag.pubads().enableLazyLoad({ fetchMarginPercent: 5, renderMarginPercent: 5, mobileScaling: 0.0 }); */ googletag.pubads().enableVideoAds(); googletag.companionAds().setRefreshUnfilledSlots(true); googletag.enableServices(); }); window.addEventListener('message', receiveMessage, false); function receiveMessage(event) { if(event.data == 'wallpaper-fireplace') document.body.className+=" wallpaper-fireplace"; if(document.body.className.match('wallpaper-fireplace')) { var mastHeight = document.querySelector('#masthead').offsetHeight,cookiePolicy=((document.querySelector('#cookiePolicy')&&document.querySelector('#cookiePolicy').offsetHeight)||0), wallpaperElement = document.querySelector('.wallpaper-ad').getElementsByTagName('div')[0]; wallpaperElement.style.top = (mastHeight+cookiePolicy)+'px'; } } $(document).on('click','#cookiePolicy .continue',function(){ var timer = setTimeout(function(){ if(document.body.className.match('wallpaper-fireplace')){ var mastHeight = document.querySelector('#masthead').offsetHeight,cookiePolicy=((document.querySelector('#cookiePolicy')&&document.querySelector('#cookiePolicy').offsetHeight)||0), wallpaperElement = document.querySelector('.wallpaper-ad').getElementsByTagName('div')[0]; wallpaperElement.style.top = (mastHeight+cookiePolicy-10)+'px'; } clearTimeout(timer); },250); }); </script> <!-- Twitter single-event website tag code --> <script src="//static.ads-twitter.com/oct.js" type="text/javascript"></script> <script type="text/javascript">twttr.conversion.trackPid('o8idk', { tw_sale_amount: 0, tw_order_quantity: 0 });</script> <noscript> <img height="1" width="1" style="display:none;" alt="" src="https://analytics.twitter.com/i/adsct?txn_id=o8idk&p_id=Twitter&tw_sale_amount=0&tw_order_quantity=0" /> <img height="1" width="1" style="display:none;" alt="" src="//t.co/i/adsct?txn_id=o8idk&p_id=Twitter&tw_sale_amount=0&tw_order_quantity=0" /> </noscript> <!-- End Twitter single-event website tag code --> <script> var EnhancedAdvertisingConfig = {}; </script> <!--Global Enhanced Adverts JSON definition from PAGETEXT--> <script> EnhancedAdvertisingConfig = { "Refresh":false, "RefreshDelaySecondsDefaultDesktop":30, "RefreshDelaySecondsDefaultMobile":30, "StoryDynamicSlotsAddGroupsAll":"Ads,Widgets", "StoryDynamicSlotsAddGroupsInline":"", "StoryDynamicSlotsAddGroupsRHC":"", "StoryDynamicSlotsRemoveGroupsAll":"", "StoryDynamicSlotsRemoveGroupsInline":"", "StoryDynamicSlotsRemoveGroupsRHC":"", "StoryDynamicSlotsRepeat":true, "StoryDynamicSlotsDesktopMaxInlineSlots":0, "StoryDynamicSlotsMobileMaxInlineSlots":20, "StoryDynamicSlotsDesktopMaxRHCSlots":20, "StoryDynamicSlotsDesktopElementSpacingFirst":3, "StoryDynamicSlotsMobileElementSpacingFirst":3, "StoryDynamicSlotsDesktopElementSpacing":3, "StoryDynamicSlotsMobileElementSpacing":5, "GAMAdUnitSizesInlineMobileDefault":[[300,250]], "GAMAdUnitSizesInlineDesktopDefault":[[300,250]], "GAMAdUnitSizesRHCDefault":[[300,250],[300,600]], /* "RHCMinHeightForSlotInsert":450, "RHCMinHeightForStickyAd":650, */ "RHCMinHeightForSlotInsert":270, "RHCMinHeightForStickyAd":550, "CollapseEmptyDivs":true, "Slots":[ { "Type":"GAMAdvert", "Position":"PreferRight", "Group":"Ads", "AdUnit":"/21612928716/Broadcast/AdvertA", "RefreshDelaySeconds":30, "Sticky":false, "Repeat":false, "Refresh":false, "InsertIfNoRHCSpace":true, "AdUnitSizesInlineDesktop":[[300,250]], "AdUnitSizesInlineMobile":[[300,600],[300,250]], "AdUnitSizesRHC":[[300,600],[300,250]], "NoBackfill":true, //"CSSClass":"wvc-custom-ad", "ExtraHTML":"<div class=\"ad-text\">Advert</div>" }, { "Type":"CustomContent", "Position":"Right", "Sticky":false, "Group":"Widgets", "Repeat":false, "InsertIfNoRHCSpace":true, "HTML":"<div class=\"tab-widget-7\" data-ajax-load-content=\"\" data-cache-bust=\"true\" data-url=\"/ajax/most?wid=1&cachetoken=1\"></div>", "CustomEventName":"MostPopularWidgetInit", "Javascript":function(elem,container,slotconfig,adcounter,counter,repeat){ console.log("MostPopularWidgetInit"); $(window).trigger('abacus:readjusrhcheight',[event, elem]); }, "CSSClass":"wvc-custom-widget-mostpopular", "MinHeight":650 }, { "Type":"GAMAdvert", "Position":"Right", "Group":"Ads", "AdUnit":"/21612928716/Broadcast/AdvertB", "RefreshDelaySeconds":30, "Sticky":true, "Repeat":false, "Refresh":false, "InsertIfNoRHCSpace":true, "AdUnitSizesInlineDesktop":[[300,250]], "AdUnitSizesInlineMobile":[[300,600],[300,250]], "AdUnitSizesRHC":[[300,600],[300,250]], //"CSSClass":"wvc-custom-ad", "ExtraHTML":"<div class=\"ad-text\">Advert</div>" }, { "Type":"GAMAdvert", "Position":"PreferRight", "Group":"Ads", "AdUnit":"/21612928716/Broadcast/AdvertB", "RefreshDelaySeconds":30, "Sticky":true, "Repeat":true, "Refresh":false, "InsertIfNoRHCSpace":false, "AdUnitSizesInlineDesktop":[[300,250]], "AdUnitSizesInlineMobile":[[300,600],[300,250]], "AdUnitSizesRHC":[[300,600],[300,250]], //"CSSClass":"wvc-custom-ad", "ExtraHTML":"<div class=\"ad-text\">Advert</div>" } /* , { "Type":"GAMAdvert", "Position":"Inline", "Group":"Ads", "AdUnit":"/21612928716/Broadcast/AdvertB", "RefreshDelaySeconds":30, "Sticky":false, "Repeat":true, "Refresh":false, "AdUnitSizesInlineDesktop":[[300,250]], "AdUnitSizesInlineMobile":[[300,600],[300,250]], "AdUnitSizesRHC":[[300,600],[300,250]], //"CSSClass":"wvc-custom-ad", "ExtraHTML":"<div class=\"ad-text\">Advert</div>" } */ ], "Overrides":[ { //If Type - Promotion "Conditions":"StoryType-999999", "Settings":{ "RemoveGroupsAll":"Ads" } }, { //If Category="Slots (all) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsAll":"Ads,Widgets" } }, { //If Category="Slots (RHC) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsRHC":"Ads,Widgets" } }, { //If Category="Slots (inline) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsInline":"Ads,Widgets" } }, { //If Category="Advert slots (all) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsAll":"Ads" } }, { //If Category="Advert slots (RHC) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsRHC":"Ads" } }, { //If Category="Advert slots (inline) - Off" "Conditions":"StoryCategoriesCodes-999999", "Operator":"And", "Settings":{ "RemoveGroupsInline":"Ads" } } ] } </script> <script> $(window).trigger("wvcfe:globalenhancedadvertsinit", [event, EnhancedAdvertisingConfig]); (function(w, d) { if(window.NodeList && !NodeList.prototype.forEach) { NodeList.prototype.forEach = Array.prototype.forEach; } d.addEventListener('DOMContentLoaded', function(event) { if(EnhancedAdvertisingConfig.Slots) { var enhAdDebug = false; if( localStorage.getItem('enh-ads-debug') == 'true' ) enhAdDebug = true; var sp = 'story-inlinecontent-placeholder'; var supportedTypes = ['gamadvert', 'customcontent']; var supportedPositions = ['inline', 'preferright', 'right']; var isDesktopResolution = w.matchMedia("screen and (min-width: 1023px)").matches; var isStoryFullLayout = d.body.classList.contains('story-full-layout'); var inlineCounter = 1; var rhcCounter = 1; var inlineAdCounter = 1; var rhcAdCounter = 1; var ticking = false; $('#story.enhanced-advertising .storytext > div.webonly').each( function(){ var t = $(this); t.replaceWith( t.html() ); }); var storyCustomContentPlaceholders = d.querySelectorAll('#story.enhanced-advertising .storytext > *'); var maxRHCSlotsToFitIn = 0; var matches = function(el, selector) { return (el.matches || el.matchesSelector || el.msMatchesSelector || el.mozMatchesSelector || el.webkitMatchesSelector || el.oMatchesSelector).call(el, selector); }; var getClosestParent = function(elem, selector) { for(; elem && elem !== d; elem = elem.parentNode) { if(matches(elem, selector)) { return elem; } } return null; }; var storyType = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryTypeCode && el.StoryTypeCode != 'null'; }).map(function(el) { return 'StoryType-' + el.StoryTypeCode; }).join('') : ''; var storyFormat = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryFormatCode && el.StoryFormatCode != 'null'; }).map(function(el) { return 'StoryFormat-' + el.StoryFormatCode; }).join('') : ''; var storyLayout = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryLayoutCode && el.StoryLayoutCode != 'null'; }).map(function(el) { return 'StoryLayout-' + el.StoryLayoutCode; }).join('') : ''; //PWVD-780 var storyWidth = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryWidth && el.StoryWidth != 'null'; }).map(function(el) { return 'StoryWidth-' + el.StoryWidth; }).join('') : ''; var storyFullNavPath = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryFullNavPath && el.StoryFullNavPath != 'null'; }).map(function(el) { return el.StoryFullNavPath; }).join('').split('|').filter(function(el) { return el && el != 'null'; }).join('-') : ''; var storyCategoriesCodes = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryCategoriesCodes && el.StoryCategoriesCodes != 'null'; }).map(function(el) { return el.StoryCategoriesCodes; }).join('').split('|').filter(function(el) { return el && el != 'null'; }).map(function(el) { return 'StoryCategoriesCodes-' + el; }) : []; var storyID = dataLayer ? dataLayer.filter(function(el) { return el && el.StoryID && el.StoryID != 'null'; }).map(function(el) { return 'StoryID-' + el.StoryID; }).filter(function(el) { return el && el != 'null' && el != 'StoryID-'; }).join('') : ''; storyFullNavPath = (storyFullNavPath ? 'StoryFullNavPath-' + storyFullNavPath : ''); var allDataLayerFilters = storyCategoriesCodes.concat([storyType, storyFormat, storyLayout, storyWidth, storyFullNavPath, storyID]).map(function(m) { return m.toLowerCase(); }); EnhancedAdvertisingConfig.RHCMinHeightForSlotInsert = (EnhancedAdvertisingConfig.RHCMinHeightForSlotInsert || 800); EnhancedAdvertisingConfig.RHCMinHeightForStickyAd = (EnhancedAdvertisingConfig.RHCMinHeightForStickyAd || 250); if('Overrides' in EnhancedAdvertisingConfig) { if(EnhancedAdvertisingConfig.Overrides) { var overrides = EnhancedAdvertisingConfig.Overrides; var andOperator = function() { return (override.Conditions.toLowerCase().split(',').filter(function(el) { return el && el; }).every(function(el) { return allDataLayerFilters.indexOf(el) != -1; })); }; var orOperator = function(el) { return (override.Conditions.toLowerCase().split(',').filter(function(el) { return el && el; }).some(function(el) { return allDataLayerFilters.indexOf(el) != -1; })); }; for(var i = 0, iL = overrides.length; i < iL; i++) { var override = overrides[i]; var operatorFilter; if(override.Operator && override.Operator.toLowerCase() == 'and') { operatorFilter = andOperator; } else { operatorFilter = orOperator; } if(operatorFilter()) { if('Settings' in override) { if(override.Settings) { var settings = override.Settings; if('AddGroupsAll' in settings && settings.AddGroupsAll && isString(settings.AddGroupsAll)) { if(settings.AddGroupsAll.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsAll = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsAll += ',' + settings.AddGroupsAll.toLowerCase(); } } if('AddGroupsInline' in settings && settings.AddGroupsInline && isString(settings.AddGroupsInline)) { if(settings.AddGroupsInline.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsInline = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsInline += ',' + settings.AddGroupsInline.toLowerCase(); } } if('AddGroupsRHC' in settings && settings.AddGroupsRHC && isString(settings.AddGroupsRHC)) { if(settings.AddGroupsRHC.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsRHC = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsRHC += ',' + settings.AddGroupsRHC.toLowerCase(); } } if('RemoveGroupsAll' in settings && settings.RemoveGroupsAll && isString(settings.RemoveGroupsAll)) { if(settings.RemoveGroupsAll.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsAll = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsAll += ',' + settings.RemoveGroupsAll.toLowerCase(); } } if('RemoveGroupsInline' in settings && settings.RemoveGroupsInline && isString(settings.RemoveGroupsInline)) { if(settings.RemoveGroupsInline.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsInline = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsInline += ',' + settings.RemoveGroupsInline.toLowerCase(); } } if('RemoveGroupsRHC' in settings && settings.RemoveGroupsRHC && isString(settings.RemoveGroupsRHC)) { if(settings.RemoveGroupsRHC.toLowerCase().toLowerCase().indexOf('[all]') != -1) { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsRHC = '[all]'; } else { EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsRHC += ',' + settings.RemoveGroupsRHC.toLowerCase(); } } if('Repeat' in settings && isBoolean(settings.Repeat)) { EnhancedAdvertisingConfig.StoryDynamicSlotsRepeat = settings.Repeat; } if('DesktopMaxInlineSlots' in settings && isNumberPositiveOrZero(settings.DesktopMaxInlineSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMaxInlineSlots = settings.DesktopMaxInlineSlots; } if('MobileMaxInlineSlots' in settings && isNumberPositiveOrZero(settings.MobileMaxInlineSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMaxInlineSlots = settings.MobileMaxInlineSlots; } if('DesktopMinRHCSlots' in settings && isNumberPositiveOrZero(settings.DesktopMinRHCSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMinRHCSlots = settings.DesktopMinRHCSlots; } if('MobileMinRHCSlots' in settings && isNumberPositiveOrZero(settings.MobileMinRHCSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMinRHCSlots = settings.MobileMinRHCSlots; } if('DesktopMaxRHCSlots' in settings && isNumberPositiveOrZero(settings.DesktopMaxRHCSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMaxRHCSlots = settings.DesktopMaxRHCSlots; } if('MobileMaxRHCSlots' in settings && isNumberPositiveOrZero(settings.MobileMaxRHCSlots)) { EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMaxRHCSlots = settings.MobileMaxRHCSlots; } if('DesktopElementSpacingFirst' in settings && settings.DesktopElementSpacingFirst && isNumberPositive(settings.DesktopElementSpacingFirst)) { EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopElementSpacingFirst = settings.DesktopElementSpacingFirst; } if('MobileElementSpacingFirst' in settings && settings.MobileElementSpacingFirst && isNumberPositive(settings.MobileElementSpacingFirst)) { EnhancedAdvertisingConfig.StoryDynamicSlotsMobileElementSpacingFirst = settings.MobileElementSpacingFirst; } if('DesktopElementSpacing' in settings && settings.DesktopElementSpacing && isNumberPositive(settings.DesktopElementSpacing)) { EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopElementSpacing = settings.DesktopElementSpacing; } if('MobileElementSpacing' in settings && settings.MobileElementSpacing && isNumberPositive(settings.MobileElementSpacing)) { EnhancedAdvertisingConfig.StoryDynamicSlotsMobileElementSpacing = settings.MobileElementSpacing; } if('RHCMinHeightForSlotInsert' in settings && settings.RHCMinHeightForSlotInsert && isNumberPositive(settings.RHCMinHeightForSlotInsert)) { EnhancedAdvertisingConfig.RHCMinHeightForSlotInsert = settings.RHCMinHeightForSlotInsert; } if('RHCMinHeightForStickyAd' in settings && settings.RHCMinHeightForStickyAd && isNumberPositive(settings.RHCMinHeightForStickyAd)) { EnhancedAdvertisingConfig.RHCMinHeightForStickyAd = settings.RHCMinHeightForStickyAd; } if('CollapseEmptyDivs' in settings && isBoolean(settings.CollapseEmptyDivs)) { EnhancedAdvertisingConfig.CollapseEmptyDivs = settings.CollapseEmptyDivs; } } } } } } } var paragraphThreshold = isDesktopResolution ? EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopElementSpacing : EnhancedAdvertisingConfig.StoryDynamicSlotsMobileElementSpacing; var paragraphFirstThreshold = isDesktopResolution ? EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopElementSpacingFirst : EnhancedAdvertisingConfig.StoryDynamicSlotsMobileElementSpacingFirst; var maxInlineSlots = isDesktopResolution ? EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMaxInlineSlots : EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMaxInlineSlots; var minRHCSlots = isDesktopResolution ? EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMinRHCSlots : EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMinRHCSlots; var maxRHCSlots = isDesktopResolution ? EnhancedAdvertisingConfig.StoryDynamicSlotsDesktopMaxRHCSlots : EnhancedAdvertisingConfig.StoryDynamicSlotsMobileMaxRHCSlots; var allAddGroups = (EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsAll ? EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsAll : "").split(',').filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); var allAddInlineGroups = [].concat(allAddGroups, (EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsInline ? EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsInline : "").split(',')).map(function(m) { return m.toLowerCase(); }).filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); var allAddRHCGroups = [].concat(allAddGroups, (EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsRHC ? EnhancedAdvertisingConfig.StoryDynamicSlotsAddGroupsRHC : "").split(',')).map(function(m) { return m.toLowerCase(); }).filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); var allRemoveGroups = (EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsAll ? EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsAll : "").split(',').filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); var allRemoveInlineGroups = [].concat(allRemoveGroups, (EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsInline ? EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsInline : "").split(',')).map(function(m) { return m.toLowerCase(); }).filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); var allRemoveRHCGroups = [].concat(allRemoveGroups, (EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsRHC ? EnhancedAdvertisingConfig.StoryDynamicSlotsRemoveGroupsRHC : "").split(',')).map(function(m) { return m.toLowerCase(); }).filter(function(f) { return f; }).filter(function(x, i, a) { return a.indexOf(x) === i; }); EnhancedAdvertisingConfig.Slots = EnhancedAdvertisingConfig.Slots.map(function(x, i) { x.Used = false; x.Index = i; if('Type' in x) { if(supportedTypes.indexOf(x.Type.toString().toLowerCase()) != -1) { x.Type = x.Type.toString().toLowerCase(); } else { x.Type = 'customcontent'; } } else { x.Type = 'customcontent'; } if('Position' in x) { if(supportedPositions.indexOf(x.Position.toString().toLowerCase()) != -1) { x.Position = x.Position.toString().toLowerCase(); } else { x.Position = 'inline'; } } else { x.Position = 'inline'; } if('CSSClass' in x) { x.CSSClass = x.CSSClass.toString().split(' ').join(',').split(',').filter(function(e) { return e && e; }).join(' '); } else { x.CSSClass = ''; } if('Group' in x) { x.Group = x.Group.toString().split(' ').join(',').split(',').filter(function(e) { return e && e; }).join(','); } else { x.Group = ''; } if('Sticky' in x) { if(x.Sticky.toString().toLowerCase() == 'true') { x.Sticky = true; } else { x.Sticky = false; } } else { x.Sticky = false; } if('InsertIfNoRHCSpace' in x) { if(x.InsertIfNoRHCSpace.toString().toLowerCase() == 'true') { x.InsertIfNoRHCSpace = true; } else { x.InsertIfNoRHCSpace = false; } } else { x.InsertIfNoRHCSpace = false; } if('MinHeight' in x) { x.MinHeight = parseInt(x.MinHeight.toString()); } else { x.MinHeight = 0; } if('NoBackfill' in x) { if(x.NoBackfill.toString().toLowerCase() == 'true') { x.NoBackfill = true; } else { x.NoBackfill = false; } } else { x.NoBackfill = false; } if('Refresh' in x) { if(x.Refresh.toString().toLowerCase() == 'true') { x.Refresh = true; } else { x.Refresh = false; } } else { x.Refresh = false; } if('ExtraHTML' in x) { if(x.ExtraHTML.toString()) { x.ExtraHTML = x.ExtraHTML.toString(); } else { x.ExtraHTML = ''; } } else { x.ExtraHTML = ''; } if('CustomEventName' in x) { if(x.CustomEventName.toString()) { x.CustomEventName = x.CustomEventName.toString(); } else { x.CustomEventName = ''; } } else { x.CustomEventName = ''; } if('Javascript' in x) { if(x.Javascript) { if(typeof x.Javascript === 'function') { x.Javascript = x.Javascript; } } else { x.Javascript = ''; } } else { x.Javascript = ''; } if('AdUnit' in x) { if(x.AdUnit.toString()) { x.AdUnit = x.AdUnit.toString(); } else { x.AdUnit = ''; } } else { x.AdUnit = ''; } if('AdUnitSizesInlineMobile' in x) { x.AdUnitSizesInlineMobile = x.AdUnitSizesInlineMobile; } else if('GAMAdUnitSizesInlineMobileDefault' in EnhancedAdvertisingConfig) { x.AdUnitSizesInlineMobile = EnhancedAdvertisingConfig.GAMAdUnitSizesInlineMobileDefault } if('AdUnitSizesInlineDesktop' in x) { x.AdUnitSizesInlineDesktop = x.AdUnitSizesInlineDesktop; } else if('GAMAdUnitSizesInlineDesktopDefault' in EnhancedAdvertisingConfig) { x.AdUnitSizesInlineDesktop = EnhancedAdvertisingConfig.GAMAdUnitSizesInlineDesktopDefault; } if('AdUnitSizesRHC' in x) { x.AdUnitSizesRHC = x.AdUnitSizesRHC; } else if('GAMAdUnitSizesRHCDefault' in EnhancedAdvertisingConfig) { x.AdUnitSizesRHC = EnhancedAdvertisingConfig.GAMAdUnitSizesRHCDefault; } if('RefreshDelaySeconds' in x) { x.RefreshDelaySeconds = parseInt(x.RefreshDelaySeconds.toString(), 10); } else { x.RefreshDelaySeconds = 30; } return x; }); var storyInlineContent = EnhancedAdvertisingConfig.Slots.filter(function(el) { return el && (el.Position.toLowerCase() == "inline" || ((!isDesktopResolution || isStoryFullLayout) && el.Position.toLowerCase() == "preferright")) && (el.Group || "").split(',').filter(function(subel) { return subel && subel != undefined; }).map(function(subel) { return subel.toLowerCase(); }).some(function(subel) { return allAddInlineGroups.indexOf(subel) != -1 || allAddInlineGroups.indexOf('[all]') != -1; }) && !(el.Group || "").split(',').filter(function(subel) { return subel && subel != undefined; }).map(function(subel) { return subel.toLowerCase(); }).some(function(subel) { return allRemoveInlineGroups.indexOf(subel) != -1 || allRemoveInlineGroups.indexOf('[all]') != -1; }); }); var storyRHCContent = isDesktopResolution ? EnhancedAdvertisingConfig.Slots.filter(function(el) { return el && (el.Position.toLowerCase() == "right" || (isDesktopResolution && !isStoryFullLayout && el.Position.toLowerCase() == "preferright")) && (el.Group || "").split(',').filter(function(subel) { return subel && subel != undefined; }).map(function(subel) { return subel.toLowerCase(); }).some(function(subel) { return allAddRHCGroups.indexOf(subel) != -1 || allAddRHCGroups.indexOf('[all]') != -1; }) && !(el.Group || "").split(',').filter(function(subel) { return subel && subel != undefined; }).map(function(subel) { return subel.toLowerCase(); }).some(function(subel) { return allRemoveRHCGroups.indexOf(subel) != -1 || allRemoveRHCGroups.indexOf('[all]') != -1; }); }) : []; storyInlineContent.forEach( (c, ix) => c.inlineIndex = ix ); storyRHCContent.forEach( (c, ix) => c.rhcIndex = ix ); var googletag = w.googletag || {}; googletag.cmd = googletag.cmd || []; if( isNumberPositive(maxInlineSlots) ){ //PWVD-781 for(var tmpCounter = 0, i = 0, eL = storyCustomContentPlaceholders.length, adThresholdCounter = 1; i < eL; i++) { var currentIsPara = matches(storyCustomContentPlaceholders[i], 'p:not([class])'); var nextIsPara = (i + 1 < eL) && matches(storyCustomContentPlaceholders[i + 1], 'p:not([class])'); if( currentIsPara && !nextIsPara ){ //PWVD-897 - count paragraphs followed by any other element if(adThresholdCounter < (tmpCounter == 0 ? paragraphFirstThreshold : paragraphThreshold)) { adThresholdCounter++; continue; } } else if( currentIsPara && nextIsPara ) { if(adThresholdCounter < (tmpCounter == 0 ? paragraphFirstThreshold : paragraphThreshold)) { adThresholdCounter++; continue; } tmpCounter++; adThresholdCounter = 1; storyCustomContentPlaceholders[i].outerHTML = storyCustomContentPlaceholders[i].outerHTML + "<div class=\"story-inlinecontent-placeholder story-inlinecontent-placeholder-init item-notin-viewport\" data-storyinlinecontainer=\"" + tmpCounter + "\"><div class=\"story-inlinecontent-placeholder-inner\" data-id=\"story-inline-item-" + tmpCounter + "\" data-storyinlineitem=\"" + tmpCounter + "\"></div></div>"; if(tmpCounter >= maxInlineSlots && maxInlineSlots) break; } } } if(d.querySelector('#story.enhanced-advertising:not(.story-full-layout) #rightcolumn_sleeve')) { if(!(d.body.id == "story" || d.body.id == "story_custom") && !d.querySelector('.storytext div.table-full:not(.initialized)')) { w.addEventListener("abacus:storytexttablefull:finished", function(e) { adjustRHCHeightAndInitialAds(); }, true); } else { adjustRHCHeightAndInitialAds(); } } if('IntersectionObserver' in w && 'IntersectionObserverEntry' in w && 'intersectionRatio' in w.IntersectionObserverEntry.prototype) { d.querySelectorAll('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init').forEach(function(el) { if(el) { var inlineAdsObserver = new IntersectionObserver(function(entries) { return inlineAdsObserverCallback(entries); }, { root: null, rootMargin: "50px 0px 50px 0px", threshold: [0, 0.01, 0.99, 1] }); inlineAdsObserver.observe(el); } }); var inlineAdsObserverCallback = function(entries) { return entries.forEach(function(entry, i) { if(entry.isIntersecting) { entry.target.classList.remove('item-notin-viewport'); entry.target.classList.add('item-in-viewport'); } else { entry.target.classList.remove('item-in-viewport'); entry.target.classList.add('item-notin-viewport'); } }); }; d.querySelectorAll('.storytext-end, #rhcreflow-extra-end').forEach(function(el) { if(el) { var adsInViewportObserver = new IntersectionObserver(function(entries) { return adsInViewportObserverCallback(entries); }, { root: null, rootMargin: "0px 0px 200px 0px", threshold: [1] }); adsInViewportObserver.observe(el); } }); var adsInViewportObserverCallback = function(entries) { return entries.forEach(function(entry, i) { if(entry.isIntersecting) { if(entry.target.classList.contains('storytext-end') && d.body.classList.contains('enhanced-advertising-inline-init')) { d.body.classList.add('enhanced-advertising-storytext-endreached'); } // RHC is empty at load time so it always fires as in viewport, need to check whether rhc ads slots already init if(entry.target.classList.contains('rhcreflow-extra-end') && d.body.classList.contains('enhanced-advertising-rhc-init')) { d.body.classList.add('enhanced-advertising-rhc-endreached'); } /* if(entry.target.id === 'rhcreflow-extra'){ //Fix for issue when RHC is not in initial viewport if( location.host.indexOf('abasoftaws.co.uk') > 0 ) console.log('New observer callback'); readjusRHCHeight(); } */ } }); }; } var inlineEl = d.querySelector('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init:not(.story-inlinecontent-placeholder-completed):not(.story-inlinecontent-placeholder-processing)'); if(inlineEl) { googletag.cmd = googletag.cmd || []; googletag.cmd.push(function() { d.body.classList.add('enhanced-advertising-inline-init'); insertInlineSlot(inlineEl); console.log('Init inline ad slot load'); }); } function slotRender(event){ var el, slot = event.slot, slotId = slot.getSlotElementId(); if(enhAdDebug) console.log('Slot render: ' + slotId); if(slotId == 'custom-inline'){ el = document.querySelector(`div.story-inlinecontent-placeholder-inner[data-id="story-inline-item-${event.dataId}"]`); //Get inline slot (does not have ID) //if(!el) // el = document.querySelector(`div.story-inlinecontent-placeholder-inner[data-id="story-inline-item-${event.inlineIndex+1}"]`); } else el = d.getElementById(slotId); if(el) { var minHeight = 0; var parentInlineNode = getClosestParent(el, '.story-inlinecontent-placeholder'); var parentRHCNode = getClosestParent(el, '.story-rhccontent-placeholder'); if(parentInlineNode || parentRHCNode) { var classList = el.classList; if(parentInlineNode) { parentInlineNode.classList.add('story-inlinecontent-placeholder-ad'); var index = parseInt(parentInlineNode.hasAttribute('data-index') ? parentInlineNode.getAttribute('data-index') : '0', 10); if(!event.isEmpty) { classList.add('ad'); classList.add('mob-ad-50'); classList.add('ad-story-inline'); classList.add('ad-story-inline-notempty'); parentInlineNode.classList.add('story-inlinecontent-placeholder-ad-size-' + event.size.join('x')); parentInlineNode.setAttribute('data-slot', slot.getAdUnitPath()); var currentInlineSlot = storyInlineContent.filter(function(e) { return e.Index == index; }); if(currentInlineSlot.length) { minHeight = currentInlineSlot[0].MinHeight; if(currentInlineSlot[0].Repeat == false) { currentInlineSlot[0].Used = true; } } else { console.log('Slot with index [data-index="' + index + '"] was not found'); } parentInlineNode.classList.add('story-inlinecontent-placeholder-finished'); insertInlineSlot(d.querySelector('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init:not(.story-inlinecontent-processing)')); } else { classList.add('ad-story-inline-isempty'); var currentInlineSlot = storyInlineContent.filter(function(e) { return e.Index == index; }); if(currentInlineSlot.length) { minHeight = currentInlineSlot[0].MinHeight; currentInlineSlot[0].Used = true; } else { console.log('Slot with index [data-index="' + index + '"] was not found'); } if(parentInlineNode && parentInlineNode.hasAttribute('data-nobackfill')) { if(parentInlineNode.getAttribute('data-nobackfill') == '1') { updateInlinePlaceholderClasses(parentInlineNode, event.isEmpty, minHeight); if(!storyInlineContent.some(function(el) { return el.Used == false; })) { finalizeRemainingEmptyInlineSlotContainers(parentInlineNode.classList, true); } else { insertInlineSlot(d.querySelector('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init:not(.story-inlinecontent-processing)')); } initRHCHeightCalc(); return; } } // Move to next from the list if( storyInlineContent.some( function(e){ return e.Used == false; } ) ) { if(enhAdDebug) console.log('slotRender: parentInlineNode: Move to next from the list') var adRetryCssClass = 'ad-story-inline-retry'; var nextInlineSlotList = storyInlineContent.filter(function(e) { return e.Index > index && e.Used == false; }); if(!nextInlineSlotList.length) { // select repeatable ads nextInlineSlotList = storyInlineContent.filter(function(e) { return e.Used == false && e.Index > index && e.Repeat == true; }); if(!nextInlineSlotList.length) { // if no repeatable ads by indexed order then start from the beginning or just pick any existing nextInlineSlotList = storyInlineContent.filter(function(e) { return e.Used == false && e.Repeat == true; }); if(!nextInlineSlotList.length) { // no more ads to add d.body.classList.add('enhanced-advertising-inline-runoutofslots'); finalizeRemainingEmptyInlineSlotContainers(parentInlineNode.classList, true); updateInlinePlaceholderClasses(parentInlineNode, event.isEmpty, minHeight); initRHCHeightCalc(); return; } } } var mapInlineAdItem = nextInlineSlotList[0]; var refresh = EnhancedAdvertisingConfig.Refresh; googletag.destroySlots([slot]); if(mapInlineAdItem.Refresh) { refresh = mapInlineAdItem.Refresh; } if(mapInlineAdItem.Repeat) { parentInlineNode.classList.remove('story-inlinecontent-placeholder-repeat-false'); parentInlineNode.classList.add('story-inlinecontent-placeholder-repeat-true'); } else { parentInlineNode.classList.remove('story-inlinecontent-placeholder-repeat-true'); parentInlineNode.classList.add('story-inlinecontent-placeholder-repeat-false'); } var mapInlineAdItemSlot = googletag.defineSlot(mapInlineAdItem.AdUnit, isDesktopResolution ? mapInlineAdItem.AdUnitSizesInlineDesktop : mapInlineAdItem.AdUnitSizesInlineMobile, slotId); if(mapInlineAdItemSlot) { mapInlineAdItemSlot.defineSizeMapping(googletag.sizeMapping().build()).setTargeting('refresh', (refresh ? 'true' : 'false')).setTargeting('refreshdelayseconds', mapInlineAdItem.RefreshDelaySeconds || (isDesktopResolution ? EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultDesktop : EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultMobile)).setCollapseEmptyDiv(EnhancedAdvertisingConfig.CollapseEmptyDivs, false).addService(googletag.pubads()); } else { console.warn('Something wrong with inline ad slot \'' + slotId + '\', size(s) \'' + (isDesktopResolution ? mapInlineAdItem.AdUnitSizesInlineDesktop : mapInlineAdItem.AdUnitSizesInlineMobile).join('x') + '\', path \'' + mapInlineAdItem.AdUnit + '\''); } googletag.display(slotId); el.classList.add(adRetryCssClass); parentInlineNode.setAttribute('data-index', mapInlineAdItem.Index); if(mapInlineAdItem.ExtraHTML) { var extraHTMLEl = parentInlineNode.querySelector('.story-inlinecontent-placeholder-ad-extrahtml'); if(extraHTMLEl) { extraHTMLEl.innerHTML = mapInlineAdItem.ExtraHTML; } } else { var extraHTMLEl = parentInlineNode.querySelector('.story-inlinecontent-placeholder-ad-extrahtml'); if(extraHTMLEl) { extraHTMLEl.innerHTML = ''; } } } else { // no slots to add.. finalizeRemainingEmptyInlineSlotContainers(parentInlineNode.classList, true); } } } else if(parentRHCNode) { parentRHCNode.classList.add('story-rhccontent-placeholder-ad'); var index = parseInt(parentRHCNode.hasAttribute('data-index') ? parentRHCNode.getAttribute('data-index') : '0', 10); if(!event.isEmpty) { classList.add('ad-rhc'); classList.add('ad-story-rhc'); classList.add('ad-story-rhc-notempty'); parentRHCNode.classList.add('story-rhccontent-placeholder-ad-size-' + event.size.join('x')); parentRHCNode.setAttribute('data-slot', slot.getAdUnitPath()); var currentRHCSlot = storyRHCContent.filter(function(e) { return e.Index == index; }); if(currentRHCSlot.length) { minHeight = currentRHCSlot[0].MinHeight; if(currentRHCSlot[0].Repeat == false) { currentRHCSlot[0].Used = true; } if(currentRHCSlot[0].InsertIfNoRHCSpace) { currentRHCSlot[0].InsertIfNoRHCSpace = false; } } else { console.log('Slot with index [data-index="' + index + '"] was not found'); } parentRHCNode.classList.remove('story-rhccontent-placeholder-isempty'); parentRHCNode.classList.remove('story-rhccontent-placeholder-notempty'); parentRHCNode.classList.add((event.isEmpty ? 'story-rhccontent-placeholder-isempty' : 'story-rhccontent-placeholder-notempty')); parentRHCNode.classList.add('story-rhccontent-placeholder-ad-completed'); parentRHCNode.classList.add('story-rhccontent-placeholder-finished'); var canAddRHC = isStoryTextTallerThanRHC(); if( ( index > 0 && !d.body.classList.contains('enhanced-advertising-inline-completed') && parentRHCNode.classList.contains('story-rhccontent-placeholder-canbesticky') ) || ( canAddRHC.canAdd && parentRHCNode.classList.contains('story-rhccontent-placeholder-canbesticky') && canAddRHC.delta > EnhancedAdvertisingConfig.RHCMinHeightForStickyAd ) ){ parentRHCNode.classList.remove('story-rhccontent-placeholder-canbesticky'); parentRHCNode.classList.add('story-rhccontent-placeholder-sticky'); } } else { classList.add('ad-story-rhc-isempty'); var currentRHCSlot = storyRHCContent.filter(function(e) { return e.Index == index; }); if(currentRHCSlot.length) { currentRHCSlot[0].Used = true; } else { console.log('Slot with index [data-index="' + index + '"] was not found'); } if(parentRHCNode && parentRHCNode.hasAttribute('data-nobackfill')) { if(parentRHCNode.getAttribute('data-nobackfill') == '1') { updateRHCPlaceholderClasses(parentRHCNode, event.isEmpty); if(!storyRHCContent.some(function(el) { return el.Used == false; })) { d.body.classList.add('enhanced-advertising-rhc-runoutofslots'); finalizeRemainingEmptyRHCSlotContainers(parentRHCNode.classList, true); } initRHCHeightCalc(); return; } } // Move to next from the list if(enhAdDebug){ console.log('slotRender: parentRHCNode: storyRHCContent: index: ' + index); console.log(storyRHCContent); } if(storyRHCContent.some(function(e) { return e.Used == false; })) { var adRetryCssClass = 'ad-story-rhc-retry'; var nextRHCSlotList = storyRHCContent.filter(function(e) { if(enhAdDebug) console.log('%c Current index: ' + e.Index + ', slot data index: ' + index, 'color: #0C6') return e.Index > index && e.Used == false; }); if(enhAdDebug){ console.log('%c slotRender: parentRHCNode: Moved to next from the list', 'color: #06C'); console.log(nextRHCSlotList); } if(!nextRHCSlotList.length) { // select repeatable ads nextRHCSlotList = storyRHCContent.filter(function(e) { return e.Used == false && e.Index > index && e.Repeat == true; }); if(!nextRHCSlotList.length) { // if no repeatable ads by indexed order then start from the beginning or just pick any existing nextRHCSlotList = storyRHCContent.filter(function(e) { return e.Used == false && e.Repeat == true; }); if(!nextRHCSlotList.length) { // no more ads to add finalizeRemainingEmptyRHCSlotContainers(parentRHCNode.classList, false); //updateRHCPlaceholderClasses(parentRHCNode, event.isEmpty, minHeight); updateRHCPlaceholderClasses(parentRHCNode, event.isEmpty); initRHCHeightCalc(); return; } } } var mapRHCAdItem = nextRHCSlotList[0]; var refresh = EnhancedAdvertisingConfig.Refresh; googletag.destroySlots([slot]); if(mapRHCAdItem.Refresh) { refresh = mapRHCAdItem.Refresh; } if(mapRHCAdItem.Repeat) { parentRHCNode.classList.remove('story-rhccontent-placeholder-repeat-false'); parentRHCNode.classList.add('story-rhccontent-placeholder-repeat-true'); } else { parentRHCNode.classList.remove('story-rhccontent-placeholder-repeat-true'); parentRHCNode.classList.add('story-rhccontent-placeholder-repeat-false'); } if(mapRHCAdItem.Type == 'customcontent'){ //Custom content (RSCCS-540) if(enhAdDebug) console.log('Next RHC config item is custom content'); adjustRHCHeightAndInitialAds(); } else if(mapRHCAdItem.AdUnit){ //Google ad var mapInlineAdItemSlot = googletag.defineSlot(mapRHCAdItem.AdUnit, isDesktopResolution ? mapRHCAdItem.AdUnitSizesInlineDesktop : mapRHCAdItem.AdUnitSizesInlineMobile, slotId); if(mapInlineAdItemSlot) { mapInlineAdItemSlot.defineSizeMapping( googletag.sizeMapping().build() ).setTargeting( 'refresh', (refresh ? 'true' : 'false') ).setTargeting( 'refreshdelayseconds', mapRHCAdItem.RefreshDelaySeconds || (isDesktopResolution ? EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultDesktop : EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultMobile) ).setCollapseEmptyDiv( EnhancedAdvertisingConfig.CollapseEmptyDivs, false ).addService( googletag.pubads() ); } else { console.warn('SlotRender: Something wrong with RHC ad slot \'' + slotId + '\', size(s) \'' + (isDesktopResolution ? mapRHCAdItem.AdUnitSizesInlineDesktop : mapRHCAdItem.AdUnitSizesInlineMobile).join('x') + '\', path \'' + mapRHCAdItem.AdUnit + '\''); } googletag.display(slotId); } el.classList.add(adRetryCssClass); parentRHCNode.setAttribute('data-index', mapRHCAdItem.Index); if(mapRHCAdItem.ExtraHTML) { var extraHTMLEl = parentRHCNode.querySelector('.story-rhccontent-placeholder-ad-extrahtml'); if(extraHTMLEl) { extraHTMLEl.innerHTML = mapRHCAdItem.ExtraHTML; } } else { var extraHTMLEl = parentRHCNode.querySelector('.story-rhccontent-placeholder-ad-extrahtml'); if(extraHTMLEl) { extraHTMLEl.innerHTML = ''; } } } else { // no slots to add.. finalizeRemainingEmptyRHCSlotContainers(parentRHCNode.classList, false); } } } if(parentInlineNode) { updateInlinePlaceholderClasses(parentInlineNode, event.isEmpty, minHeight); } else { //updateRHCPlaceholderClasses(parentRHCNode, event.isEmpty, minHeight); updateRHCPlaceholderClasses(parentRHCNode, event.isEmpty); } } } initRHCHeightCalc(); } googletag.cmd = googletag.cmd || []; googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRequested', function(event) { var slot = event.slot; var el = d.getElementById(slot.getSlotElementId()); if(el) { var parentInlineNode = getClosestParent(el, '.story-inlinecontent-placeholder'); var parentRHCNode = getClosestParent(el, '.story-rhccontent-placeholder'); if(parentInlineNode || parentRHCNode) { if(parentInlineNode) { parentInlineNode.classList.add('story-inlinecontent-placeholder-ad-init'); } else { parentRHCNode.classList.add('story-rhccontent-placeholder-ad-init'); } } } }); googletag.pubads().addEventListener('slotRenderEnded', function(event) { var sId = event.slot.getSlotElementId(); if( enhAdDebug && sId.includes('story-rhcad') || sId.includes('story-inlinead') ){ console.log(`%c Slot RENDER END (${sId})`, 'color: #FE2ACA'); console.log(event); //loadOrRender(sId, 'render', event); } slotRender(event); }); if(enhAdDebug){ //Track slot load events googletag.pubads().addEventListener('slotOnload', (evLoad) => { var sId = evLoad.slot.getSlotElementId(); if( sId.includes('story-rhcad') || sId.includes('story-inlinead') ){ console.log(`%c Slot LOAD (${ evLoad.slot.getSlotElementId() })`, 'color: #C00;'); console.log(event); //loadOrRender(sId, 'load'); } }); } googletag.pubads().addEventListener('slotVisibilityChanged', function(event) { var slot = event.slot; if(slot.getTargeting('refresh').indexOf('true') > -1 && event.inViewPercentage > 0) { var el = d.getElementById(slot.getSlotElementId()); var parentStoryInlineNode = getClosestParent(el, '.ad-story-inline'); var parentStoryRHCNode = getClosestParent(el, '.ad-story-rhc'); if(parentStoryInlineNode || parentStoryRHCNode) { if(parentStoryInlineNode) { var inlineEl = getClosestParent(el, '.story-inlinecontent-placeholder'); if(inlineEl) { if(inlineEl.hasAttribute('data-shouldrefresh')) { var shouldRefresh = inlineEl.getAttribute('data-shouldrefresh'); if(shouldRefresh && shouldRefresh == '1') { googletag.cmd.push(function() { googletag.pubads().refresh([slot], { changeCorrelator: false }); }); var classList = parentStoryInlineNode.classList; var cssClassName = 'ad-story-inline-refreshed-'; var cssClassCounter = 1; for(var i = 0, c = parentStoryInlineNode.className.split(' '), iL = c.length; i < iL; i++) { var v = c[i]; if(v.indexOf(cssClassName) != -1) { cssClassCounter = parseInt(v.split(cssClassName).join(''), 10) + 1; classList.remove(v); break; } } classList.add(cssClassName + cssClassCounter); classList.add('ad-story-inline-refreshed'); inlineEl.setAttribute('data-shouldrefresh', '0'); } } } } else { var rhcEl = getClosestParent(el, '.story-rhccontent-placeholder'); if(rhcEl) { if(rhcEl.hasAttribute('data-shouldrefresh')) { var shouldRefresh = rhcEl.getAttribute('data-shouldrefresh'); if(shouldRefresh && shouldRefresh == '1') { googletag.cmd.push(function() { googletag.pubads().refresh([slot], { changeCorrelator: false }); }); var classList = parentStoryRHCNode.classList; var cssClassName = 'ad-story-rhc-refreshed-'; var cssClassCounter = 1; for(var i = 0, c = parentStoryRHCNode.className.split(' '), iL = c.length; i < iL; i++) { var v = c[i]; if(v.indexOf(cssClassName) != -1) { cssClassCounter = parseInt(v.split(cssClassName).join(''), 10) + 1; classList.remove(v); break; } } classList.add(cssClassName + cssClassCounter); classList.add('ad-story-rhc-refreshed'); rhcEl.setAttribute('data-shouldrefresh', '0'); } } } } } } }); googletag.pubads().addEventListener('impressionViewable', function(event) { var slot = event.slot; if(slot.getTargeting('refresh').indexOf('true') > -1) { var refreshdelayseconds = slot.getTargeting('refreshdelayseconds').length ? parseInt(slot.getTargeting('refreshdelayseconds')[0], 10) : 0; if(refreshdelayseconds) { setTimeout(function() { var el = d.getElementById(slot.getSlotElementId()); var parentStoryInlineNode = getClosestParent(el, '.ad-story-inline'); var parentStoryRHCNode = getClosestParent(el, '.ad-story-rhc'); if(parentStoryInlineNode) { var inlineEl = getClosestParent(el, '.story-inlinecontent-placeholder'); if(inlineEl) { if(inlineEl.classList.contains('item-in-viewport')) { googletag.cmd.push(function() { googletag.pubads().refresh([slot], { changeCorrelator: false }); }); var classList = parentStoryInlineNode.classList; var cssClassName = 'ad-story-inline-refreshed-'; var cssClassCounter = 1; for(var i = 0, c = parentStoryInlineNode.className.split(' '), iL = c.length; i < iL; i++) { var v = c[i]; if(v.indexOf(cssClassName) != -1) { cssClassCounter = parseInt(v.split(cssClassName).join(''), 10) + 1; classList.remove(v); break; } } classList.add(cssClassName + cssClassCounter); inlineEl.setAttribute('data-shouldrefresh', '0'); } else { inlineEl.setAttribute('data-shouldrefresh', '1'); } } } else if(parentStoryRHCNode) { var rhcEl = getClosestParent(el, '.story-rhccontent-placeholder'); if(rhcEl) { if(rhcEl.classList.contains('item-in-viewport')) { googletag.cmd.push(function() { googletag.pubads().refresh([slot], { changeCorrelator: false }); }); var classList = parentStoryRHCNode.classList; var cssClassName = 'ad-story-rhc-refreshed-'; var cssClassCounter = 1; for(var i = 0, c = parentStoryRHCNode.className.split(' '), iL = c.length; i < iL; i++) { var v = c[i]; if(v.indexOf(cssClassName) != -1) { cssClassCounter = parseInt(v.split(cssClassName).join(''), 10) + 1; classList.remove(v); break; } } classList.add(cssClassName + cssClassCounter); rhcEl.setAttribute('data-shouldrefresh', '0'); } else { rhcEl.setAttribute('data-shouldrefresh', '1'); } } } }, refreshdelayseconds * 1000); } else { console.log('Ad refresh delay in seconds is incorrect (slot: ' + slot.getSlotElementId() + '): ', refreshdelayseconds); } } }); }); function isBoolean(n) { return !!n === n; } function isNumber(n) { return +n === n; } function isString(n) { return '' + n === n; } function isNumberPositive(n) { return +n === n && n > 0; } function isNumberPositiveOrZero(n) { return +n === n && n >= 0; } function isArrayOfArrays(a) { return a.every(function(x) { return Array.isArray(x); }); } function getAbsoluteHeight(element) { if(!element) return 0; var styles = w.getComputedStyle(element); var margin = parseFloat(styles['margin-top']) + parseFloat(styles['margin-bottom']); var minHeight = element.clientHeight; return Math.ceil(minHeight ? minHeight + margin : element.offsetHeight + margin); } function updateRHCContainerState() { var classList = d.body.classList; if(!d.querySelectorAll('#rhcreflow-extra .story-rhccontent-placeholder.story-rhccontent-placeholder-completed').length) { d.body.classList.add('enhanced-advertising-rhc-empty'); } else { d.body.classList.remove('enhanced-advertising-rhc-empty'); } } function insertRHCSlot(el) { if(el) { el.classList.add('story-rhccontent-placeholder-processing'); } if(el && storyRHCContent.some(function(e) { return e.Used == false; })) { var classList = el.classList; var placeholder = el.querySelector('[data-id]'); var tempFilteredRHCAds = storyRHCContent; if(placeholder) { var elemsIndexes = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed[data-index]'); var slotIndex = elemsIndexes.length ? parseInt(elemsIndexes[elemsIndexes.length - 1].getAttribute('data-index'), 10) : -1; tempFilteredRHCAds = storyRHCContent.filter(function(e) { return slotIndex < e.Index && e.Used == false; }); if(!tempFilteredRHCAds.length) { tempFilteredRHCAds = storyRHCContent.filter(function(e) { return e.Used == false && slotIndex < e.Index && e.Repeat == true; }); } if(!tempFilteredRHCAds.length) { tempFilteredRHCAds = storyRHCContent.filter(function(e) { return e.Used == false && e.Repeat == true; }); } if(!tempFilteredRHCAds.length) { finalizeRemainingEmptyRHCSlotContainers(classList, false); return; } var mapRHCAdItem = tempFilteredRHCAds[0]; classList.remove('story-rhccontent-placeholder-init'); classList.remove('story-rhccontent-placeholder-processing'); classList.add('story-rhccontent-placeholder-completed'); if(mapRHCAdItem.CSSClass) { mapRHCAdItem.CSSClass.split(' ').forEach(function(elem) { if(elem) { classList.add(elem); } }); } if(mapRHCAdItem.Type == 'gamadvert') { if(placeholder) { var refresh = EnhancedAdvertisingConfig.Refresh; el.setAttribute('data-storycustomcontent', '0'); if(mapRHCAdItem.Sticky) { classList.add('story-rhccontent-placeholder-canbesticky'); placeholder.classList.add('sticky'); } if(mapRHCAdItem.NoBackfill) { el.setAttribute('data-nobackfill', '1'); } else { el.setAttribute('data-nobackfill', '0'); } if(mapRHCAdItem.Refresh) { refresh = mapRHCAdItem.Refresh; } var mapRHCAdItemSlot = googletag.defineSlot(mapRHCAdItem.AdUnit, mapRHCAdItem.AdUnitSizesRHC, 'story-rhcad-' + rhcAdCounter); if(mapRHCAdItemSlot) { mapRHCAdItemSlot.defineSizeMapping(googletag.sizeMapping().build()).setTargeting('refresh', (refresh ? 'true' : 'false')).setTargeting('refreshdelayseconds', mapRHCAdItem.RefreshDelaySeconds || (isDesktopResolution ? EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultDesktop : EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultMobile)).setCollapseEmptyDiv(EnhancedAdvertisingConfig.CollapseEmptyDivs, false).addService(googletag.pubads()); } else { console.warn('Something wrong with rhc ad slot \'' + 'story-rhcad-' + rhcAdCounter + '\', size(s) \'' + mapRHCAdItem.AdUnitSizesRHC.join('x') + '\', path \'' + mapRHCAdItem.AdUnit + '\''); } if(refresh) { el.setAttribute('data-shouldrefresh', '0'); classList.add('story-rhccontent-placeholder-refresh-true'); } else { classList.add('story-rhccontent-placeholder-refresh-false'); } classList.add('story-rhccontent-placeholder-ad'); placeholder.id = 'story-rhcad-' + rhcAdCounter; placeholder.outerHTML = '<div class="story-rhccontent-placeholder-ad-extrahtml">' + mapRHCAdItem.ExtraHTML + '</div>' + placeholder.outerHTML; el.setAttribute('data-slot', mapRHCAdItem.AdUnit); googletag.display('story-rhcad-' + rhcAdCounter); $(w).trigger("wvcfe:storyrhcaditeminit", [$(el), $(placeholder), mapRHCAdItem, rhcAdCounter, rhcCounter, false, 'rhc', mapRHCAdItem.Type]); if(mapRHCAdItem.CustomEventName) { $(w).trigger(mapRHCAdItem.CustomEventName, [el, placeholder, mapRHCAdItem, rhcAdCounter, rhcCounter, false, 'rhc', mapRHCAdItem.Type]); } if(mapRHCAdItem.Javascript) { if(typeof mapRHCAdItem.Javascript === 'function') { mapRHCAdItem.Javascript.call(this, el, placeholder, mapRHCAdItem, rhcAdCounter, rhcCounter, false, 'rhc', mapRHCAdItem.Type); } } rhcAdCounter++; } } else if(mapRHCAdItem.Type == 'customcontent') { el.setAttribute('data-storycustomcontent', '1'); classList.add('story-rhccontent-placeholder-customcontent'); if(placeholder) { placeholder.innerHTML = mapRHCAdItem.HTML; classList.add('story-rhccontent-placeholder-notempty'); $(w).trigger("wvcfe:storyrhcitemajaxinit", [$(el), $(placeholder), mapRHCAdItem, rhcCounter, false, 'rhc', mapRHCAdItem.Type]); if(mapRHCAdItem.CustomEventName) { $(w).trigger(mapRHCAdItem.CustomEventName, [$(el), $(placeholder), mapRHCAdItem, rhcCounter, false, 'rhc', mapRHCAdItem.Type]); } if(mapRHCAdItem.Javascript) { if(typeof mapRHCAdItem.Javascript === 'function') { mapRHCAdItem.Javascript.call(this, el, placeholder, mapRHCAdItem, rhcCounter, false, 'rhc', mapRHCAdItem.Type); } } el.classList.add('story-rhccontent-placeholder-finished'); } } el.setAttribute('data-index', mapRHCAdItem.Index); rhcCounter++; } else { console.log('Missing placeholder: [data-id="story-rhc-item-' + rhcCounter + '"]'); } } else if(el) { // All slots are used, mark current slot placeholder and the rest ones as completed and used var classList = el.classList; finalizeRemainingEmptyRHCSlotContainers(classList, false); } else { console.log('Missing RHC element'); } } function insertInlineSlot(el) { if(el) { el.classList.add('story-inlinecontent-placeholder-processing'); } if(el && storyInlineContent.some(function(e) { return e.Used == false; })) { var classList = el.classList; var placeholder = el.querySelector('[data-id]'); var tempFilteredInlineAds = storyInlineContent; if(placeholder) { var elemsIndexes = d.querySelectorAll('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-completed[data-index]'); var slotIndex = elemsIndexes.length ? parseInt(elemsIndexes[elemsIndexes.length - 1].getAttribute('data-index'), 10) : -1; tempFilteredInlineAds = storyInlineContent.filter(function(e){ return slotIndex < e.Index && e.Used == false; }); if(!tempFilteredInlineAds.length) { tempFilteredInlineAds = storyInlineContent.filter(function(e) { return e.Used == false && slotIndex < e.Index && e.Repeat == true; }); if(!tempFilteredInlineAds.length) { // start from the first repeatable ad index tempFilteredInlineAds = storyInlineContent.filter(function(e) { return e.Used == false && e.Repeat == true; }); if(!tempFilteredInlineAds.length) { finalizeRemainingEmptyInlineSlotContainers(classList, true); return; } } } var mapInlineAdItem = tempFilteredInlineAds[0]; classList.remove('story-inlinecontent-placeholder-init'); classList.remove('story-inlinecontent-placeholder-processing'); classList.add('story-inlinecontent-placeholder-completed'); if(mapInlineAdItem.CSSClass) { mapInlineAdItem.CSSClass.split(' ').forEach(function(elem) { if(elem) { classList.add(elem); } }); } if(mapInlineAdItem.Type == 'gamadvert') { var refresh = EnhancedAdvertisingConfig.Refresh; el.setAttribute('data-storycustomcontent', '0'); el.classList.add('story-inlinecontent-placeholder-ad'); if(mapInlineAdItem.Sticky) { classList.add('story-inlinecontent-placeholder-sticky'); placeholder.classList.add('sticky'); } if(mapInlineAdItem.NoBackfill) { el.setAttribute('data-nobackfill', '1'); } else { el.setAttribute('data-nobackfill', '0'); } if(mapInlineAdItem.Repeat) { classList.add('story-inlinecontent-placeholder-repeat-true'); } else { classList.add('story-inlinecontent-placeholder-repeat-false'); } if(mapInlineAdItem.Refresh) { refresh = mapInlineAdItem.Refresh; } var mapInlineAdItemSlot = googletag.defineSlot(mapInlineAdItem.AdUnit, isDesktopResolution ? mapInlineAdItem.AdUnitSizesInlineDesktop : mapInlineAdItem.AdUnitSizesInlineMobile, 'story-inlinead-' + inlineAdCounter); if(mapInlineAdItemSlot) { mapInlineAdItemSlot.defineSizeMapping(googletag.sizeMapping().build()).setTargeting('refresh', (refresh ? 'true' : 'false')).setTargeting('refreshdelayseconds', mapInlineAdItem.RefreshDelaySeconds || (isDesktopResolution ? EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultDesktop : EnhancedAdvertisingConfig.RefreshDelaySecondsDefaultMobile)).setCollapseEmptyDiv(EnhancedAdvertisingConfig.CollapseEmptyDivs, false).addService(googletag.pubads()); } else { console.warn('Something wrong with inline ad slot \'' + 'story-inlinead-' + inlineAdCounter + '\', size(s) \'' + (isDesktopResolution ? mapInlineAdItem.AdUnitSizesInlineDesktop : mapInlineAdItem.AdUnitSizesInlineMobile).join('x') + '\', path \'' + mapInlineAdItem.AdUnit + '\''); } if(refresh) { el.setAttribute('data-shouldrefresh', '0'); classList.add('story-inlinecontent-placeholder-refresh-true'); } else { classList.add('story-inlinecontent-placeholder-refresh-false'); } placeholder.id = 'story-inlinead-' + inlineAdCounter; placeholder.outerHTML = '<div class="story-inlinecontent-placeholder-ad-extrahtml">' + mapInlineAdItem.ExtraHTML + '</div>' + placeholder.outerHTML; el.setAttribute('data-slot', mapInlineAdItem.AdUnit); googletag.display('story-inlinead-' + inlineAdCounter); $(w).trigger("wvcfe:storyinlineaditeminit", [$(el), $(placeholder), mapInlineAdItem, inlineAdCounter, inlineCounter, false, 'inline', mapInlineAdItem.Type]); if(mapInlineAdItem.CustomEventName) { $(w).trigger(mapInlineAdItem.CustomEventName, [el, placeholder, mapInlineAdItem, inlineAdCounter, inlineCounter, false, 'inline', mapInlineAdItem.Type]); } if(mapInlineAdItem.Javascript) { if(typeof mapInlineAdItem.Javascript === 'function') { mapInlineAdItem.Javascript.call(this, el, placeholder, mapInlineAdItem, inlineAdCounter, inlineCounter, false, 'inline', mapInlineAdItem.Type); } } inlineAdCounter++; } else if(mapInlineAdItem.Type == 'customcontent') { el.setAttribute('data-storycustomcontent', '1'); el.classList.add('story-inlinecontent-placeholder-customcontent'); placeholder.innerHTML = mapInlineAdItem.HTML; $(w).trigger("wvcfe:storyinlineitemajaxinit", [$(el), $(placeholder), mapInlineAdItem, inlineCounter, false, 'inline', mapInlineAdItem.Type]); if(mapInlineAdItem.CustomEventName) { $(w).trigger(mapInlineAdItem.CustomEventName, [$(el), $(placeholder), mapInlineAdItem, inlineCounter, false, 'inline', mapInlineAdItem.Type]); } if(mapInlineAdItem.Javascript) { if(typeof mapInlineAdItem.Javascript === 'function') { mapInlineAdItem.Javascript.call(this, el, placeholder, mapInlineAdItem, inlineCounter, false, 'inline', mapInlineAdItem.Type.toLowerCase()); } } el.classList.add('story-inlinecontent-placeholder-finished'); var inlineCustomEvent = { dataId: (mapInlineAdItem.Index+1), slot: { getSlotElementId: function(){ return 'custom-inline'; }, getAdUnitPath: function(){return 'custom-inline'} }, isEmpty: false, size:[0,0] }; el.setAttribute('data-index', mapInlineAdItem.Index); slotRender(inlineCustomEvent); //$(w).trigger('abacus:inlinecontentrender', inlineCustomEvent); } el.setAttribute('data-index', mapInlineAdItem.Index); //el.setAttribute('data-index', inlineCounter); inlineCounter++; } else { console.log('Missing placeholder: [data-id="story-inline-item-' + inlineCounter + '"]'); } } else if(el) { // All slots are used, mark current slot placeholder and the rest ones as completed and used var classList = el.classList; finalizeRemainingEmptyInlineSlotContainers(classList, true); } else { console.log('Missing inline element'); } } function finalizeRemainingEmptyRHCSlotContainers(classList, processremaining) { classList.remove('story-rhccontent-placeholder-init'); classList.remove('story-rhccontent-placeholder-processing'); classList.add('story-rhccontent-placeholder-completed'); classList.add('story-rhccontent-placeholder-isempty'); classList.add('story-rhccontent-placeholder-runoutofslots'); classList.add('story-rhccontent-placeholder-finished'); if(processremaining) { for(var i = 0, elems = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-init:not(.story-rhccontent-placeholder-processing)'), iL = elems.length; i < iL; i++) { var e = elems[i]; if(e) { var c = e.classList; c.remove('story-rhccontent-placeholder-init'); c.add('story-rhccontent-placeholder-completed'); c.add('story-rhccontent-placeholder-isempty'); c.add('story-rhccontent-placeholder-runoutofslots'); c.add('story-rhccontent-placeholder-finished'); } } } } function finalizeRemainingEmptyInlineSlotContainers(classList, processremaining) { classList.remove('story-inlinecontent-placeholder-init'); classList.remove('story-inlinecontent-placeholder-processing'); classList.add('story-inlinecontent-placeholder-completed'); classList.add('story-inlinecontent-placeholder-isempty'); classList.add('story-inlinecontent-placeholder-runoutofslots'); classList.add('story-inlinecontent-placeholder-finished'); if(processremaining) { for(var i = 0, elems = d.querySelectorAll('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init:not(.story-inlinecontent-placeholder-processing)'), iL = elems.length; i < iL; i++) { var e = elems[i]; if(e) { var c = e.classList; c.remove('story-inlinecontent-placeholder-init'); c.add('story-inlinecontent-placeholder-completed'); c.add('story-inlinecontent-placeholder-isempty'); c.add('story-inlinecontent-placeholder-runoutofslots'); c.add('story-inlinecontent-placeholder-finished'); } } } } function updateInlinePlaceholderClasses(node, status, minHeight) { node.classList.remove('story-inlinecontent-placeholder-isempty'); node.classList.remove('story-inlinecontent-placeholder-notempty'); node.classList.add((status ? 'story-inlinecontent-placeholder-isempty' : 'story-inlinecontent-placeholder-notempty')); node.classList.add('story-inlinecontent-placeholder-ad-completed'); if(!status) { var computedMinHeightValue = w.getComputedStyle(node).minHeight || 0; var computedMinHeight = parseInt(computedMinHeightValue, 10); if(minHeight > computedMinHeight) { node.style.minHeight = minHeight + 'px'; } } } function updateRHCPlaceholderClasses(node, status) { node.classList.remove('story-rhccontent-placeholder-ad-init'); node.classList.remove('story-rhccontent-placeholder-isempty'); node.classList.remove('story-rhccontent-placeholder-notempty'); node.classList.add((status ? 'story-rhccontent-placeholder-isempty' : 'story-rhccontent-placeholder-notempty')); node.classList.add('story-rhccontent-placeholder-ad-completed'); } function initRHCHeightCalc() { updateRHCFirstandLastItemStyles(); // readjust height if no in progress/loading ads as the height might change on storytext or RHC if(!d.querySelectorAll('#rhcreflow-extra .story-rhccontent-placeholder.story-rhccontent-placeholder-completed.story-rhccontent-placeholder-ad-init').length) { readjusRHCHeight(); } else { setTimeout(function() { initRHCHeightCalc(); }, 0); } } function isInViewport(element) { var rect = element.getBoundingClientRect(); var height = w.innerHeight || d.documentElement.clientHeight; var width = w.innerWidth || d.documentElement.clientWidth; return ( rect.right >= 0 && rect.bottom >= 0 && rect.left <= width && rect.top <= height ); } function processElementsInViewport() { var adsInlinePlaceholders = d.querySelectorAll('.storytext .story-inlinecontent-placeholder'); //PWVD-893 : change from rhccontent var adsRHCPlaceholders = d.querySelectorAll('#rhcreflow-extra .story-rhccontent-placeholder'); if(adsInlinePlaceholders || adsRHCPlaceholders) { if(adsInlinePlaceholders) { adsInlinePlaceholders.forEach(function(el) { var classList = el.classList; if(!isInViewport(el)) { classList.remove('story-inlinecontent-placeholder-isinviewport'); classList.add('story-inlinecontent-placeholder-isnotinviewport'); } else { classList.remove('story-inlinecontent-placeholder-isnotinviewport'); classList.add('story-inlinecontent-placeholder-isinviewport'); } }); } else { adsRHCPlaceholders.forEach(function(el) { var classList = el.classList; if(!isInViewport(el)) { classList.remove('story-rhccontent-placeholder-isinviewport'); classList.add('story-rhccontent-placeholder-isnotinviewport'); } else { classList.remove('story-rhccontent-placeholder-isnotinviewport'); classList.add('story-rhccontent-placeholder-isinviewport'); } }); } } } function adjustRHCHeightAndInitialAds() { var output = []; var googletag = w.googletag || {}; var rhcreflowExtra = d.querySelector('#rhcreflow-extra'); if(rhcreflowExtra) { rhcreflowExtra.innerHTML = ''; minRHCSlotsToFitIn = (minRHCSlots > 0 ? minRHCSlots : 2); maxRHCSlotsToFitIn = (maxRHCSlots > 0 ? maxRHCSlots : 0); for(var i = 0, iL = Math.max(storyRHCContent.length, maxRHCSlotsToFitIn); i < iL; i++) { rhcCounter = i + 1; output.push("<div class=\"story-rhccontent-placeholder story-rhccontent-placeholder-init item-notin-viewport\" data-storyrhccontainer=\"" + rhcCounter + "\"><div class=\"story-rhccontent-placeholder-inner\" data-id=\"story-rhc-item-" + rhcCounter + "\" data-storyrhcitem=\"" + rhcCounter + "\"></div></div>"); if(rhcCounter >= maxRHCSlotsToFitIn) break; } d.querySelector('#rhcreflow-extra').innerHTML = output.join(''); if('IntersectionObserver' in w && 'IntersectionObserverEntry' in w && 'intersectionRatio' in w.IntersectionObserverEntry.prototype) { d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-init').forEach(function(el) { if(el) { observer = new IntersectionObserver(function(entries) { return observerCallback(entries); }, { root: null, rootMargin: "50px 0px 50px 0px", threshold: [0, 0.01, 0.99, 1] }); observer.observe(el); } }); var observerCallback = function(entries) { return entries.forEach(function(entry, i) { if(entry.isIntersecting) { entry.target.classList.remove('item-notin-viewport'); entry.target.classList.add('item-in-viewport'); } else { entry.target.classList.remove('item-in-viewport'); entry.target.classList.add('item-notin-viewport'); } }); } } googletag.cmd = googletag.cmd || []; googletag.cmd.push(function() { var rhcEl = d.querySelector('.story-rhccontent-placeholder.story-rhccontent-placeholder-init:not(.story-rhccontent-placeholder-completed):not(.story-rhccontent-placeholder-processing)'); var hasAnyRHCLoadedBefore = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed'); if(rhcEl && !hasAnyRHCLoadedBefore.length) { insertRHCSlot(rhcEl); d.body.classList.add('enhanced-advertising-rhc-init'); } }); updateRHCContainerState(); } } function isStoryTextTallerThanRHC() { var calcHeight = 0; if(w.matchMedia("screen and (min-width: 1023px)").matches && !d.body.classList.contains('story-full-layout')) { var h = 0, colmain = d.getElementById('colmain').clientHeight; d.querySelectorAll('#rightcolumn_sleeve > *:not(#rhcreflow-extra)').forEach(function(item) { h = getAbsoluteHeight(item); item.setAttribute('data-height', h); calcHeight += h; }); d.querySelectorAll('#rhcreflow-extra > *').forEach(function(item) { h = getAbsoluteHeight(item); item.setAttribute('data-height', h); calcHeight += h; }); return { "canAdd": colmain > calcHeight, "delta": colmain - calcHeight }; } else { return { "canAdd": false, "delta": 0 }; } } function canAddRHCItem() { // check whether inline and RHC ads finished loading, otherwise ignore var storyRHCSlotHeight = EnhancedAdvertisingConfig.RHCMinHeightForSlotInsert; var calcHeight = 0; if(w.matchMedia("screen and (min-width: 1023px)").matches && !d.body.classList.contains('story-full-layout')) { var h = 0, innerChild = 0; d.querySelectorAll('#rightcolumn_sleeve > *:not(#rhcreflow-extra)').forEach(function(item) { h = getAbsoluteHeight(item); item.setAttribute('data-height', h); calcHeight += h; }); d.querySelectorAll('#rhcreflow-extra > *').forEach(function(item) { //innerChild = (item || item.querySelector('.story-rhccontent-placeholder-inner') || item.firstChild); //h = getAbsoluteHeight(innerChild); //if (h == 0) { // h = getAbsoluteHeight(item); //} h = getAbsoluteHeight(item); item.setAttribute('data-height', h); calcHeight += h; }); var result = { "canAddRHCItem": d.getElementById('colmain').clientHeight > calcHeight + storyRHCSlotHeight, "colmainTaller": d.getElementById('colmain').clientHeight > calcHeight }; return result; } else { return { "canAddRHCItem": false, "colmainTaller": false }; } } function readjusRHCHeight() { if(w.matchMedia("screen and (min-width: 1023px)").matches && !d.body.classList.contains('story-full-layout')) { d.getElementById('rightcolumn_sleeve').style.minHeight = d.getElementById('colmain').clientHeight + 'px'; } var elemsIndexes = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed[data-index]'); var slotIndex = elemsIndexes.length ? parseInt(elemsIndexes[elemsIndexes.length - 1].getAttribute('data-index'), 10) : -1; var rhcEl = d.querySelector('.story-rhccontent-placeholder.story-rhccontent-placeholder-init:not(.story-rhccontent-placeholder-completed):not(.story-rhccontent-placeholder-processing)'); var canAdd = canAddRHCItem(); var hasInsertIfNoRHCSpace = storyRHCContent.some(function(e) { return e.InsertIfNoRHCSpace == true && e.Used == false && e.Index > slotIndex; }); if(!rhcEl || (!canAdd.canAddRHCItem && !hasInsertIfNoRHCSpace && !d.querySelectorAll('.story-inlinecontent-placeholder.story-inlinecontent-placeholder-init:not(.story-inlinecontent-processing)').length)) { d.body.classList.add('enhanced-advertising-rhc-completed'); } else { d.body.classList.remove('enhanced-advertising-rhc-completed'); } //var rhcElementsInitialised = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed:not(.story-rhccontent-placeholder-init):not(.story-rhccontent-placeholder-processing):not(.story-rhccontent-placeholder-finished)'); var rhcElementsInitialised = d.querySelectorAll('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed:not(.story-rhccontent-placeholder-init):not(.story-rhccontent-placeholder-processing):not(.story-rhccontent-placeholder-finished):not(.story-rhccontent-placeholder-isempty)'); //var rhcElemInit = $('.story-rhccontent-placeholder.story-rhccontent-placeholder-completed'); //PWVD-749 //var classesToExclude = ['init', 'processing', 'finished'].map( cls => '.story-rhccontent-placeholder-' + cls); //, 'isempty' //rhcElemInit = rhcElemInit.find( classesToExclude.join(',') ).remove(); if(rhcEl && (canAdd.canAddRHCItem || hasInsertIfNoRHCSpace) && rhcElementsInitialised.length == 0) { googletag.cmd.push(function() { insertRHCSlot(rhcEl); }); } } function updateRHCFirstandLastItemStyles() { d.querySelectorAll('#rhcreflow-extra > *:not(.story-rhccontent-placeholder-init):not(.story-rhccontent-placeholder-processing):not(.story-rhccontent-placeholder-isempty)').forEach(function(item, index, data) { item.classList.remove('story-rhccontent-placeholder-first'); item.classList.remove('story-rhccontent-placeholder-last'); if(index == 0) { item.classList.add('story-rhccontent-placeholder-first'); } if(index == data.length - 1) { item.classList.add('story-rhccontent-placeholder-last'); } }); if((d.querySelectorAll('.storytext .story-inlinecontent-placeholder.story-inlinecontent-placeholder-completed').length == d.querySelectorAll('.storytext .story-inlinecontent-placeholder.story-inlinecontent-placeholder-finished').length) && !d.querySelectorAll('.storytext .story-inlinecontent-placeholder.story-inlinecontent-placeholder-init').length) { d.body.classList.add('enhanced-advertising-inline-completed'); } else { d.body.classList.remove('enhanced-advertising-inline-completed'); } } w.addEventListener('scroll', function(e) { if(!ticking) { w.requestAnimationFrame(function() { processElementsInViewport(); readjusRHCHeight(); ticking = false; }); ticking = true; } }, true); w.addEventListener('resize', function(e) { if(!ticking) { w.requestAnimationFrame(function() { processElementsInViewport(); readjusRHCHeight(); ticking = false; }); ticking = true; } }, true); w.addEventListener("abacus:loadcontent:complete", function(evt, context) { readjusRHCHeight(); }, true); if(d.querySelector('#story .storytext img.lazyload')) { d.addEventListener('lazyloaded', function(e) { if(w.googletag && googletag.apiReady) { if(getClosestParent(e.target, '.storytext')) { readjusRHCHeight(); } } }); } w.addEventListener("abacus:advertb:loaded", function(evt, context) { readjusRHCHeight(); }, true); w.addEventListener("abacus:gamadvert:loaded", function(evt, context) { readjusRHCHeight(); }, true); w.addEventListener("abacus:readjusrhcheight", function(evt, context) { readjusRHCHeight(); }, true); //w.addEventListener('abacus:inlinecontentrender', function(customEvent) { // slotRender(customEvent); //}, true); } }); })(window, document); </script> <!-- ABACUS Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KPTQSCJ');</script> <!-- End Google Tag Manager --> <!-- Broadcast Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5PQHM6');</script> <!-- End Broadcast Google Tag Manager --> </head> <body id="story" class="M1-master js-disabled story-style-1 story-format-11008 story-type-1099 enhanced-advertising enhanced-advertising-rhc-empty"> <!-- ABACUS Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KPTQSCJ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- Broadcast Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5PQHM6" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- END Broadcast Google Tag Manager (noscript) --> <!--[if lte IE 10]> <link rel="stylesheet" href="/CSS/dest/notsupported.css"> <div class="notSupported"> <div class="sleeve"> <span id="logo" class="vector-icon i-brand-logo i-brand-logo-dims"></span> <h2> Your browser is not supported </h2> <p> Sorry but it looks as if your browser is out of date. To get the best experience using our site we recommend that you upgrade or switch browsers. </p> <p class="buttonContainer"> <a class="button" href="https://www.google.co.uk/webhp?ion=1&espv=2&ie=UTF-8#q=update+my+browser" target="_blank">Find a solution</a> </p> </div> </div> <![endif]--> <script type="text/javascript">document.body.className = document.body.className.replace('js-disabled', ''); document.cookie = "_js=1; path=/";</script> <div id="wrapper"> <ul id="skiplinks"><li><a href="#wrapper_sleeve">Skip to main content</a></li><li><a href="#mainnav">Skip to navigation</a></li></ul> <header id="masthead" class="masthead"> <div class="htmlContent"> <!-- /21612928716/Broadcast/wallpaper --> <div id='div-gpt-wallpaper' class="wallpaper-ad adslot" data-site-width-1024> <script> googletag.cmd.push(function() { googletag.display('div-gpt-wallpaper'); }); </script> </div> <!-- /21612928716/Broadcast/Overlay --> <div id='div-gpt-overlay'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-overlay'); }); </script> </div> <!-- /21612928716/Broadcast/html_skin_left --> <!--<div id='div-gpt-html_skin_left' style="min-height: 1900px; position:fixed"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-html_skin_left'); }); </script> </div>--> </div> <div class="hot-topics-container container showMenuPushed"><div class="inner-sleeve"><ul><li class="hot-topics-item"><svg id="hot-topics-icon" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg"><title>hot-topics</title><path d="M.31,7.44,7.56,14.7A1,1,0,0,0,9,14.7H9L14.7,9h0a1,1,0,0,0,0-1.45L7.44.31A1,1,0,0,0,6.79,0H1A.92.92,0,0,0,.27.27h0A.92.92,0,0,0,0,1V6.65a1,1,0,0,0,0,.14H0A1,1,0,0,0,.31,7.44ZM2.39,5.3a2.07,2.07,0,1,1,2.93,0A2.07,2.07,0,0,1,2.39,5.3Z" fill="#ababab" /></svg><span>In focus</span></li><li class="first"><a href="https://www.broadcastnow.co.uk/AI-media-news">AI Media News</a></li><li><a href="https://www.broadcasttechawards.co.uk/" class="newWindow">Broadcast TECH Innovation Awards</a></li><li><a href="https://www.broadcastnow.co.uk/commissioning/1046.subject">Commissioning</a></li><li><a href="https://www.broadcastnow.co.uk/people/11686.subject">People</a></li><li><a href="https://www.broadcastnow.co.uk/channel-4/1043.subject">Channel 4</a></li><li class="last"><a href="https://www.broadcastnow.co.uk/financial-results/12876.subject">Financial results</a></li></ul></div></div> <div class="leaderboard offsetHeight showMenuPushed"> <div class="ad"> <!-- /21612928716/Broadcast/AdvertMastLB --> <div class="mob-ad-75 tab-ad-250 dt-ad-250"> <div id='div-gpt-AdvertMastLB' > <script> googletag.cmd.push(function() { googletag.display('div-gpt-AdvertMastLB'); }); </script> </div> </div> </div> </div> <div class="mast container full" role="banner" data-multi-toggle-menu> <div class="inner-sleeve" data-menu-open-pushed> <div class="mastheadLogo"> <a href="/"> <span class="logoIcon"> <span class="assistive">Broadcast Now</span> </span> </a> </div> <div id="print_logo"> <img src="/magazine/dest/graphics/logo/print_logo.png" alt="" /> </div> <!--<div class="mastheadLogo" style="width:50% !important"> <a href="/"> <div style="width:50%; float:left"> <a href="/"> <img src="https://mbinsight.azurewebsites.net/production/broadcast/b60/logo.png" alt="broadcast60" style="width: 100%;" /> </a> </div> <div style="width:50%; float:right"> <a href="https://www.broadcastnow.co.uk/broadcast-at-60"> <img src="https://mbinsight.azurewebsites.net/production/broadcast/b60/sixty.png" alt="broadcastsixty" style="width: 90%;" /> </a> </div> </a> </div>--> <div class="mastheadMobileLogo"> <a href="/"> <span class="logoIcon"> <span class="assistive">Core Test</span> </span> </a> </div> <div class="mastControls"> <nav data-multi-toggle-item="" class="mastNav loggedout hide"><span class="toggleIcon"><a href="#mastnav" data-toggle-button=""><span class="assistive">Mast navigation</span></a></span><ul id="mastnav" data-toggle-element=""><li><a href="https://subs.broadcastnow.co.uk/subscriptions" class="newWindow">Subscribe</a></li><li><a href="https://account.broadcastnow.co.uk/register" class="newWindow">Register</a></li><li><a class="popup signIn" href="https://www.broadcastnow.co.uk/sign-in">Sign in</a></li></ul></nav> <div class="mastheadSearch hide" data-multi-toggle-item=""> <span class="toggleIcon"> <a href="#search" data-toggle-button=""> <span class="assistive">Search our site</span> </a> </span> <form action="https://www.broadcastnow.co.uk/searchresults" method="get" id="mastsearch" data-toggle-element=""> <fieldset> <div> <label for="search">Search our site</label> <input type="text" id="search" value="" name="qkeyword" class="text" placeholder="Search our site" /> <button class="mastSearch" type="submit">Search</button> </div> </fieldset> </form> </div> <div class="menuToggle"> <span class="toggleIcon"><a href="#mobilemenu" data-menu-toggle-button=""><span class="assistive">Menu</span></a></span> </div> </div> </div> </div> <div class="menuContainer"> <div class="mobileMenu" id="mobilemenu"> <div class="sleeve"> <a class="menuClose" href="#wrapper"> <span>Close<span class="assistive"> menu</span></span> </a> <ul class="main"> <li class="hasChildren home-icon"> <a href="https://www.broadcastnow.co.uk/" aria-expanded="false"> <span>Home</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav home-icon"> <a href="https://www.broadcastnow.co.uk/"> <span>Home</span> </a> </li> <li class=""> <a href="https://broadcastawards.co.uk/" class="newWindow"> <span>Broadcast Awards</span> </a> </li> <li class=""> <a href="https://www.broadcastsportawards.co.uk"> <span>Broadcast Sport Awards</span> </a> </li> <li class=""> <a href="https://www.broadcasttechawards.co.uk"> <span>Broadcast Tech Innovation Awards</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-digital-awards-2024" class="newWindow"> <span>Broadcast Digital Awards 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/best-places-to-work-2024"> <span>Best Places To Work in TV 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indie-survey-2024"> <span>Indie Survey 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/broadcast-awards-2024"> <span>Broadcast Awards 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/digital-editions"> <span>Digital Editions</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/broadcast-network"> <span>Broadcast Network</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/advertise"> <span>Advertise</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/events"> <span>Events</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/contact-us"> <span>Contact Us</span> </a> </li> </ul> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/subscribe"> <span>Subscribe</span> </a> </li> <li class="intel"> <a href="https://www.broadcastintel.com/" class="newWindow"> <span>Intelligence</span> </a> </li> <li class="hasChildren "> <a href="https://www.broadcastnow.co.uk/more-news/48889.more?navcode=6232" aria-expanded="false"> <span>News</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav"> <a href="https://www.broadcastnow.co.uk/more-news/48889.more?navcode=6232"> <span>News</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcasters/1004.subject"> <span>Broadcasters</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/11930.subject"> <span>Indies</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/svod/12074.subject"> <span>SVoD</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/international/1010.subject"> <span>International</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/commissioning/1046.subject"> <span>Commissioning</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/people/11686.subject"> <span>People</span> </a> </li> </ul> </li> <li class="hasChildren "> <a href="https://www.broadcastnow.co.uk/international" aria-expanded="false"> <span>International</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav"> <a href="https://www.broadcastnow.co.uk/international"> <span>International</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/distributors-survey/12053.subject"> <span>Distributors Survey</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article"> <span>Global TV Production Map</span> </a> </li> </ul> </li> <li class="hasChildren "> <a href="https://www.broadcastnow.co.uk/ratings" aria-expanded="false"> <span>Ratings</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav"> <a href="https://www.broadcastnow.co.uk/ratings"> <span>Ratings</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45224.more"> <span>Overnights</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45234.more"> <span>7-day consolidated</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/12712.subject"> <span>28-day consolidated</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45235.more"> <span>Top 100</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45236.more"> <span>Channel Overview</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45237.more"> <span>Digital & Demographic focus</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/45238.more"> <span>Non-PSB</span> </a> </li> </ul> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/tech-and-innovation"> <span>TECH</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-sport"> <span>Sport</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/events"> <span>Events</span> </a> </li> <li class="hasChildren "> <a href="https://www.broadcastnow.co.uk/broadcast-magazine" aria-expanded="false"> <span>Magazine</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav"> <a href="https://www.broadcastnow.co.uk/broadcast-magazine"> <span>Magazine</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-magazine"> <span>Broadcast magazine</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/commissioner-survey/12654.subject"> <span>Commissioner Survey</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indie-survey-2024"> <span>Indie Survey 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/distributors-survey/12053.subject"> <span>Distributors Survey</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article"> <span>Global TV Production Map</span> </a> </li> </ul> </li> <li class="hasChildren "> <a href="https://www.broadcastnow.co.uk/features" aria-expanded="false"> <span>Features</span> </a> <ul aria-hidden="true" class="subMenu hide"> <li class="parentBack"> <a class="toolbar" href="#"> <span class="header">Back<span class="assistive"> to parent navigation item</span></span> <span class="btn backBtn"> <i></i> </span> </a> </li> <li class="parentNav"> <a href="https://www.broadcastnow.co.uk/features"> <span>Features</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/hot-shots-2024"> <span>Hot Shots 2024</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/features/comment"> <span>Comment</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/features/interviews"> <span>Interviews</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/features/behind-the-scenes"> <span>Behind The Scenes</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-newswrap/12376.subject"> <span>Podcast</span> </a> </li> </ul> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/home/broadcast-network"> <span>Broadcast Network</span> </a> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/advertise"> <span>Advertise</span> </a> </li> <li class=""> <a href="https://broadcastjobs.com/"> <span>Jobs</span> </a> </li> </ul> </div> </div> <div class="mobileMenuClose"></div> <div id="mainnav" class="desktopNavigation container" data-menu-open-pushed=""><div class="dropdown vanityPanel"><div class="inner-sleeve"></div></div><div class="inner-sleeve"><ul class="main preJS"><li data-navcode="6232" data-rootnavcode="6232" class="home-icon hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/"><span>Home</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="6418" data-rootnavcode="6232" class=""><a href="https://broadcastawards.co.uk/" class="newWindow"><span>Broadcast Awards</span></a></li><li data-navcode="6415" data-rootnavcode="6232" class=""><a href="https://www.broadcastsportawards.co.uk"><span>Broadcast Sport Awards</span></a></li><li data-navcode="6416" data-rootnavcode="6232" class=""><a href="https://www.broadcasttechawards.co.uk"><span>Broadcast Tech Innovation Awards</span></a></li><li data-navcode="5711" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/broadcast-digital-awards-2024" class="newWindow"><span>Broadcast Digital Awards 2024</span></a></li><li data-navcode="6312" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/best-places-to-work-2024"><span>Best Places To Work in TV 2024</span></a></li><li data-navcode="5959" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/indie-survey-2024"><span>Indie Survey 2024</span></a></li><li data-navcode="5889" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/home/broadcast-awards-2024"><span>Broadcast Awards 2024</span></a></li><li data-navcode="5851" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/home/digital-editions"><span>Digital Editions</span></a></li><li data-navcode="5907" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/home/broadcast-network"><span>Broadcast Network</span></a></li><li data-navcode="5724" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/advertise"><span>Advertise</span></a></li><li data-navcode="5725" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/home/events"><span>Events</span></a></li><li data-navcode="6247" data-rootnavcode="6232" class=""><a href="https://www.broadcastnow.co.uk/contact-us"><span>Contact Us</span></a></li></ul></li><li class="promotedStory"><a href="/home/broadcast-summit-2025-reveals-first-sessions/5199332.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/1/0/6/1437106_broadcast_summit25_banner_1140x355_3270.jpg" loading="lazy" class="lazyloaded" alt="Broadcast_Summit25_Banner_1140x355"></div><div class="captionBlock"><span class="title">Broadcast Summit 2025 reveals first sessions</span></div></a></li><li class="promotedStory"><a href="/production/gallery-broadcast-sport-awards-2024/5199231.article" class="image layoutIcon galleryLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/8/7/3/1436873_54141284916_9927f80839_o_503752.jpg" loading="lazy" class="lazyloaded" alt="54141284916_9927f80839_o"></div><div class="captionBlock"><span class="title">Gallery: Broadcast Sport Awards 2024</span></div></a></li><li class="promotedStory"><a href="/international/analysis-how-donald-trumps-election-win-will-impact-media-sector/5199193.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/7/3/9/1436739_trumpimpactonusmediasector_880600.jpg" loading="lazy" class="lazyloaded" alt="Trump impact on US media sector"></div><div class="captionBlock"><span class="title">Analysis: how Donald Trump’s election win will impact media sector</span></div></a></li></ul></div></div></li><li data-navcode="5748" data-rootnavcode="5748" class="hasChildren"><a href="https://www.broadcastnow.co.uk/subscribe"><span>Subscribe</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="htmlBlock"><div><style type="text/css"> .desktopNavigation #subspromo {background:#fff; padding:20px;} .desktopNavigation #subspromo img {float:right; clear:right; display:block; margin-top:0px; width:450px;} .desktopNavigation #subspromo .subpromo {margin-bottom:20px; margin-left: 20px; padding-left: 0;} .desktopNavigation #subspromo .subpromo li { list-style:disc;} .desktopNavigation #subspromo p {margin-bottom:0} .desktopNavigation #subspromo .register {margin-top:22px;} @media only screen and (max-width: 1123px) { .desktopNavigation #subspromo img { max-width:200px; } } </style> <div id="subspromo" style="overflow:hidden;"> <img src="https://mbinsight.azurewebsites.net/production/broadcast/subs/subs-package.jpg" alt="bc packshot onlineprint november" alt="core access small" style="padding-right:20px;" /> <h3 id="">Subscribe to Broadcast in print and online</h3> <p><strong>Take out a subscription to get immediate access to Broadcast:</strong></p> <ul class="subpromo"> <li>Expert analysis and comment</li> <li>Unlimited access to in-depth articles and premium content</li> <li>Full access to all our online archive</li> </ul> <a class="button" id="intcmp" data-gtm-event="internal_campaign" data-gtm-action="subscribe_click" data-gtm-label="mega_menu_subscribe" target="_blank" href="http://subs.broadcastnow.co.uk/Subscribenow">Subscribe Now</a> </div></div></li></ul></div></div></li><li data-navcode="5928" data-rootnavcode="5928" class="intel hasChildren"><a href="https://www.broadcastintel.com/" class="newWindow"><span>Intelligence</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="htmlBlock"><div><style type="text/css"> .desktopNavigation #cipromo {background:#fff; padding:20px;} .desktopNavigation #cipromo img {float:right; clear:left; display:block; margin-top:0px; width:310px;} .desktopNavigation #cipromo .subpromo {margin-bottom:20px; margin-left: 20px; padding-left: 0;} .desktopNavigation #cipromo .subpromo li { list-style:disc;} .desktopNavigation #cipromo p {margin-bottom:0} .desktopNavigation #cipromo .register {margin-top:22px;} @media only screen and (max-width: 1123px) { .desktopNavigation #cipromo img { max-width:150px; } } .button-right { background-color:#ff7043; color:#000000 } </style> <div id="cipromo" style="overflow:hidden;"> <img alt="Broadcast Intelligence" src="https://res.cloudinary.com/du1efakdk/image/upload/c_fill,h_350,w_610/wvoo84l1bjtvorcbwly2" style="width:30%; height:auto; float:right" /> <div style="float:left; padding-left:10px; width:70%"> <img alt="Broadcast Intelligence" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/480xAny/P/web/x/r/y/bilogo_634234.png" /><br> <p style="font-size:1rem"><strong>Broadcast Intelligence is the only place to get up to date information on the current content needs of 500+ global buyers, a real-time database of greenlit programmes plus networking opportunities. <a href="https://commissionerindex.youcanbook.me/?SOURCE=BDCNAV" target="_blank">Book a Zoom demo</a> to see what the platform can do for your company.</strong></p> <br> <a class="button" target="_blank" href="https://www.broadcastintel.com/features/commissioner-index-info">Not a member? Find out more</a> <a class="button button-right" target="_blank" href="https://www.broadcastintel.com/login">Members login here</a> <p style="font-size:1rem"> </p> </div> </div></div></li></ul></div></div></li><li data-navcode="6254" data-rootnavcode="6254" class="hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/more-news/48889.more?navcode=6232"><span>News</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="5714" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/broadcasters/1004.subject"><span>Broadcasters</span></a></li><li data-navcode="6257" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/indies/11930.subject"><span>Indies</span></a></li><li data-navcode="6258" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/svod/12074.subject"><span>SVoD</span></a></li><li data-navcode="6259" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/international/1010.subject"><span>International</span></a></li><li data-navcode="6260" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/commissioning/1046.subject"><span>Commissioning</span></a></li><li data-navcode="6261" data-rootnavcode="6254" class=""><a href="https://www.broadcastnow.co.uk/people/11686.subject"><span>People</span></a></li></ul></li><li class="promotedStory"><a href="/bbc/bbc-ni-and-daytime-order-blue-light-farming-series/5199183.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/6/7/1/1436671_airambulancecomingtoafarm_55309.jpg" loading="lazy" class="lazyloaded" alt="Air Ambulance coming to a farm"></div><div class="captionBlock"><span class="title">BBC NI and daytime order blue light farming series</span></div></a></li><li class="promotedStory"><a href="/indies/zinc-moves-into-entertainment-with-label-launch/5199157.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/6/3/3/1436633_hamilton2_90219.jpg" loading="lazy" class="lazyloaded" alt="Andrea Hamilton"></div><div class="captionBlock"><span class="title">Zinc moves into entertainment with label launch</span></div></a></li><li class="promotedStory"><a href="/international/ex-monkey-head-and-ex-talkback-exec-set-up-with-bbcs/5199126.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/5/6/1/1436561_olliebrackandjameslongman_808502.jpg" loading="lazy" class="lazyloaded" alt="Ollie Brack and James Longman"></div><div class="captionBlock"><span class="title">Ex-Monkey head and ex-Talkback exec set up with BBCS</span></div></a></li></ul></div></div></li><li data-navcode="5717" data-rootnavcode="5717" class="hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/international"><span>International</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="6287" data-rootnavcode="5717" class=""><a href="https://www.broadcastnow.co.uk/distributors-survey/12053.subject"><span>Distributors Survey</span></a></li><li data-navcode="6333" data-rootnavcode="5717" class=""><a href="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article"><span>Global TV Production Map</span></a></li></ul></li><li class="promotedStory"><a href="/svod/itv-streaming-chief-heading-to-tubi-uk/5198706.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/6/5/4/1435654_rossappleton002_357274_crop.jpeg" loading="lazy" class="lazyloaded" alt="Ross Appleton (002)"></div><div class="captionBlock"><span class="title">ITV streaming chief heading to Tubi UK</span></div></a></li><li class="promotedStory"><a href="/international/formats/5198107.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/2/9/8/1434298_iwasactuallytherebeatles_anndomingoandhennienoll_314665.jpg" loading="lazy" class="lazyloaded" alt="I Was Actually There - Beatles_Ann Domingo and Hennie Noll"></div><div class="captionBlock"><span class="title">Formats</span></div></a></li><li class="promotedStory"><a href="/international/factual/5198214.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/5/5/3/1434553_mozart_hero_image_bbc_72films_410432.jpg" loading="lazy" class="lazyloaded" alt="Mozart_HERO_IMAGE_BBC_72 FILMS"></div><div class="captionBlock"><span class="title">Factual</span></div></a></li></ul></div></div></li><li data-navcode="5819" data-rootnavcode="5819" class="hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/ratings"><span>Ratings</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="5825" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45224.more"><span>Overnights</span></a></li><li data-navcode="5820" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45234.more"><span>7-day consolidated</span></a></li><li data-navcode="6322" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/12712.subject"><span>28-day consolidated</span></a></li><li data-navcode="5821" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45235.more"><span>Top 100</span></a></li><li data-navcode="5822" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45236.more"><span>Channel Overview</span></a></li><li data-navcode="5823" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45237.more"><span>Digital & Demographic focus</span></a></li><li data-navcode="5824" data-rootnavcode="5819" class=""><a href="https://www.broadcastnow.co.uk/45238.more"><span>Non-PSB</span></a></li></ul></li><li class="promotedStory"><a href="/ratings/hunting-mr-nice-opens-with-600000/5199391.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/2/0/8/1437208_huntingmrnice_166167.jpg" loading="lazy" class="lazyloaded" alt="hunting mr nice"></div><div class="captionBlock"><span class="title">Hunting Mr Nice opens with 600,000</span></div></a></li><li class="promotedStory"><a href="/ratings/britains-nuclear-bomb-scandal-shocks-600k/5199356.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/1/0/3/1437103_britainsnuclearscandalbbc2_910609.jpg" loading="lazy" class="lazyloaded" alt="Britain's Nuclear Scandal BBC2"></div><div class="captionBlock"><span class="title">Britain’s Nuclear Bomb Scandal shocks 600k</span></div></a></li><li class="promotedStory"><a href="/ratings/the-listeners-lands-14m/5199330.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/0/5/1/1437051_485115_858136.jpg" loading="lazy" class="lazyloaded" alt="485115"></div><div class="captionBlock"><span class="title">The Listeners lands 1.4m</span></div></a></li></ul></div></div></li><li data-navcode="5752" data-rootnavcode="5752" class="hasChildren"><a href="https://www.broadcastnow.co.uk/tech-and-innovation"><span>TECH</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="promotedStory"><a href="/tech-and-innovation/equity-campaigns-to-block-council-sale-of-bottle-yard-studios/5198073.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/2/4/2/1434242_tby2s1mwpsolararrayimagecourtesyofthebottleyardstudios_4_387633.jpg" loading="lazy" class="lazyloaded" alt="TBY2's 1MWp solar array (image courtesy of The Bottle Yard Studios)_4"></div><div class="captionBlock"><span class="title">Equity campaigns to block council sale of Bottle Yard Studios</span></div></a></li><li class="promotedStory"><a href="/tech-innovation/analysis-ibc2024-marks-the-bedding-in-of-ai-and-genai/5197203.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/2/2/1/1432221_screenshot20240118at15.34.38_408699.jpg" loading="lazy" class="lazyloaded" alt="Screenshot 2024-01-18 at 15.34.38"></div><div class="captionBlock"><span class="title">Analysis: IBC2024 marks the bedding in of AI and GenAI</span></div></a></li><li class="promotedStory"><a href="/tech/whats-in-store-for-the-future-of-graphics/5196954.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/6/8/3/1431683_grahammedia_309000.jpg" loading="lazy" class="lazyloaded" alt="Graham Media"></div><div class="captionBlock"><span class="title">What’s in store for the future of graphics?</span></div></a></li><li class="promotedStory"><a href="/tech/ibc-2024-atomos-to-showcase-the-ninja-phone/5196629.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/9/8/2/1430982_atomos_843224.jpg" loading="lazy" class="lazyloaded" alt="Atomos"></div><div class="captionBlock"><span class="title">IBC 2024: Atomos to showcase the Ninja Phone</span></div></a></li></ul></div></div></li><li data-navcode="6101" data-rootnavcode="6101"><a href="https://www.broadcastnow.co.uk/broadcast-sport"><span>Sport</span></a></li><li data-navcode="6419" data-rootnavcode="6419"><a href="https://www.broadcastnow.co.uk/home/events"><span>Events</span></a></li><li data-navcode="6169" data-rootnavcode="6169" class="hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/broadcast-magazine"><span>Magazine</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="6271" data-rootnavcode="6169" class=""><a href="https://www.broadcastnow.co.uk/broadcast-magazine"><span>Broadcast magazine</span></a></li><li data-navcode="6329" data-rootnavcode="6169" class=""><a href="https://www.broadcastnow.co.uk/commissioner-survey/12654.subject"><span>Commissioner Survey</span></a></li><li data-navcode="6272" data-rootnavcode="6169" class=""><a href="https://www.broadcastnow.co.uk/indie-survey-2024"><span>Indie Survey 2024</span></a></li><li data-navcode="6273" data-rootnavcode="6169" class=""><a href="https://www.broadcastnow.co.uk/distributors-survey/12053.subject"><span>Distributors Survey</span></a></li><li data-navcode="6275" data-rootnavcode="6169" class=""><a href="https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article"><span>Global TV Production Map</span></a></li></ul></li><li class="promotedStory"><a href="/broadcast-magazine/streamers-wield-the-axe-on-slow-starters/5199024.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/3/8/7/1436387_renegadenell_372349.jpeg" loading="lazy" class="lazyloaded" alt="Renegade Nell"></div><div class="captionBlock"><span class="title">Streamers wield the axe on slow starters</span></div></a></li><li class="promotedStory"><a href="/magazine/james-durie-how-a-leonard-cohen-biopic-became-a-case-study-in-co-pro/5198863.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/9/4/8/1435948_so_long_marianne_sr1_ep6_02_0_750713.jpg" loading="lazy" class="lazyloaded" alt="so_long_marianne_sr1_ep6_02_0"></div><div class="captionBlock"><span class="title">James Durie: How a Leonard Cohen biopic became a case study in co-pro</span></div></a></li><li class="promotedStory"><a href="/magazine/goalhanger-the-evolution-of-a-podcast-powerhouse/5198802.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/8/4/6/1435846_goalhangerpodcasts_190536.jpg" loading="lazy" class="lazyloaded" alt="GOALHANGER-PODCASTS"></div><div class="captionBlock"><span class="title">Goalhanger: the evolution of a podcast powerhouse</span></div></a></li></ul></div></div></li><li data-navcode="6262" data-rootnavcode="6262" class="hasChildren oneSubNav"><a href="https://www.broadcastnow.co.uk/features"><span>Features</span></a><div class="dropdown"><div class="inner-sleeve"><ul><li class="subnav"><ul><li data-navcode="6327" data-rootnavcode="6262" class=""><a href="https://www.broadcastnow.co.uk/hot-shots-2024"><span>Hot Shots 2024</span></a></li><li data-navcode="6263" data-rootnavcode="6262" class=""><a href="https://www.broadcastnow.co.uk/features/comment"><span>Comment</span></a></li><li data-navcode="6264" data-rootnavcode="6262" class=""><a href="https://www.broadcastnow.co.uk/features/interviews"><span>Interviews</span></a></li><li data-navcode="6265" data-rootnavcode="6262" class=""><a href="https://www.broadcastnow.co.uk/features/behind-the-scenes"><span>Behind The Scenes</span></a></li><li data-navcode="6270" data-rootnavcode="6262" class=""><a href="https://www.broadcastnow.co.uk/broadcast-newswrap/12376.subject"><span>Podcast</span></a></li></ul></li><li class="promotedStory"><a href="/comment/the-future-of-intimacy-coordination-beyond-scripted-tv/5199364.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/1/9/5/1437195_datingnakeduknestimage_945331.jpg" loading="lazy" class="lazyloaded" alt="Dating Naked UK Nest image"></div><div class="captionBlock"><span class="title">The future of intimacy coordination: beyond scripted TV</span></div></a></li><li class="promotedStory"><a href="/itv/michael-jermey-journalism-on-tv-is-as-strong-as-its-ever-been/5199334.article" class="image"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/0/6/4/1437064_michaeljermey_444909.jpg" loading="lazy" class="lazyloaded" alt="michael jermey"></div><div class="captionBlock"><span class="title">Michael Jermey: journalism on TV is as strong as it’s ever been</span></div></a></li><li class="promotedStory"><a href="/behind-the-scenes/her-majesty-the-queen-behind-closed-doors-itv1/5199033.article" class="image layoutIcon pictureLayout"><div class="image"><img src="https://d11p0alxbet5ud.cloudfront.net/Pictures/274x183/4/4/1/1436441_her_majesty_the_queen_behind_closed_doors_04_01_765565.jpg" loading="lazy" class="lazyloaded" alt="her_majesty_the_queen_behind_closed_doors_04_0 (1)"></div><div class="captionBlock"><span class="title">Her Majesty The Queen: Behind Closed Doors, ITV1</span></div></a></li></ul></div></div></li><li data-navcode="6097" data-rootnavcode="6097"><a href="https://www.broadcastnow.co.uk/home/broadcast-network"><span>Broadcast Network</span></a></li><li data-navcode="6221" data-rootnavcode="6221"><a href="https://www.broadcastnow.co.uk/advertise"><span>Advertise</span></a></li><li data-navcode="5908" data-rootnavcode="5908"><a href="https://broadcastjobs.com/"><span>Jobs</span></a></li><li class="more hide"><a href="#mobilemenu" data-menu-toggle-button="" aria-expanded="false"><span> More from<span class="assistive"> navigation items</span></span></a></li></ul></div></div><div class="desktopNavigationSpace"></div> </div> </header> <!--<div class="leaderboard billboard showMenuPushed"> <div class="sleeve">--> <!-- /21612928716/Broadcast/fireplace-bb --> <!--<div id='div-gpt-ad-1619178117533-0' style='width: 1024px; height: 250px;'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1619178117533-0'); }); </script> </div>--> <!-- /21612928716/Broadcast/AdvertMastLB --> <!--<div id='div-gpt-mapLBUnderNav' style="width:100%; height:250px; margin-left:auto; margin-right:auto; text-align:center"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-mapLBUnderNav'); }); </script> </div> </div> </div>--> <div id="_D4DFB674-F64E-45AA-A8A1-45797AEC442D"></div><script>(function(w,d,t,u,c,b,m,s,n,i,e,p){(w[n]=w[n]||[]).push(arguments);e=d.createElement(t);p=d.getElementsByTagName(t)[0];e.async=1;e.src=u+'/scripts/eme.js';p.parentNode.insertBefore(e,p);})(window,document,'script','https://emeapi.abacusemedia.com','MBI','BN','Site_top_banner','#_D4DFB674-F64E-45AA-A8A1-45797AEC442D','EMEObject','UserID,StoryCategories,FullNavPath');</script> <div id="wrapper_sleeve" data-menu-open-pushed> <div class="storyLayout standard"></div> <div class="headerWrapper"> <div class="container titleByline"> <div class="inner-sleeve"> <div class="storyPrimaryNav"><a href="https://www.broadcastnow.co.uk/indies">Indies</a></div> <div class="story_title"> <h1>Broadcast Global TV Production Map 2022</h1> </div> <p class="byline meta">Sponsored by <span class="author"><a href="https://www.broadcastnow.co.uk/barclays/1101302.bio" rel="author">Barclays</a></span><span class="date" data-date-timezone="{"publishdate": "2022-05-30T15:41:00","format": "D MMMM YYYY"}">2022-05-30T15:41:00+01:00</span></p> </div> </div> </div> <div id="columns" class="container"> <div id="colwrapper" class="inner-sleeve"> <div id="colmain" role="main" class="restrictedcontent"> <div id="content"> <div id="content_sleeve"> <div class="contentWrapper"> <div class="storyContentWrapper"> <div class="pageOptions"> <ul> <!--facebook--> <li> <a href="https://www.facebook.com/sharer/sharer.php?u=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article&e=Broadcast+Global+TV+Production+Map+2022" class="facebook" title="Share this on Facebook" target="_blank"></a> </li> <!-- twitter--> <li> <a href="https://twitter.com/intent/tweet?text=Broadcast+Global+TV+Production+Map+2022&url=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article" class="twitter" title="Share this on Twitter" target="_blank"></a> </li> <!--linked in--> <li> <a href="https://www.linkedin.com/cws/share?url=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article" class="linkedin" title="Share this on Linked in" target="_blank"></a> </li><li><a href="mailto:?subject=Broadcast Global TV Production Map 2022&body=https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article" class="email" title="Email this article"></a></li> </ul> <ul class="pageOptions_right"> <li aria-live="polite"><a href="#commentsJump" class="commentButton scrollTo"><div class="commentCount"><span class="commentText commentHidden">No comments</span></div> <div class="commentIcon"> </div></a></li> <li class=" last" aria-live="polite" data-cache-bust="true" data-ajax-load-content="" data-url="/5171316/bookmark"> </li> </ul> </div> <div class="articleWrapper"> <div class="articleContent"> <div class="native-content-intro"> <p><img class="native-content-intro--image" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/web/z/w/y/Broadcast-Network-v3.png" alt="Broadcast network">Sponsored content</p> <a href="advertise-with-broadcast/broadcast-network/5118987.article">Find out more</a> </div><div class="standfirst"><p>The shape of the consolidated world</p></div><div class="storytext"><h4>Click to enlarge</h4> <div class="inline_image image_size_full fullsize zoom" data-attachment="1378759" data-sequence="6"><button class="show-fullscreen" data-url="/attachment?attype=P&atcode=1378759&storycode=5171316">Show Fullscreen</button> <p class="picture"><img alt="Global Production Map 2022" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/480xany/7/5/9/1378759_globalproductionmap2022_32153.png" sizes="(max-width: 1023px) 100vw, 780px" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/480xany/7/5/9/1378759_globalproductionmap2022_32153.png 480w,https://d11p0alxbet5ud.cloudfront.net/Pictures/600xany/7/5/9/1378759_globalproductionmap2022_32153.png 600w,https://d11p0alxbet5ud.cloudfront.net/Pictures/780xany/7/5/9/1378759_globalproductionmap2022_32153.png 780w" loading="eager" class="lazyloaded" width="1261" height="848"></p> </div></div><div id="storytext-end" class="storytext-end"></div> </div> </div> <div class="htmlContent"> </div> </div> <div class="topics"><div class="sleeve"><span class="topicsLabel"></span><h2>Topics</h2><ul class="topicsList"><li><a href="/indies/11930.subject">Indies</a></li></ul></div></div> <div class="relatedfiles"><h2>Related files/tables</h2><ul><li><a href="/download?ac=1378674"><h3>MBI_BROADCAST_GLOBAL TV PRODUCTION MAP_2022_FINAL_V2</h3><span class="download">PDF, Size 1.31 mb</span></a></li></ul></div> <div class="pageOptions"> <ul> <!--facebook--> <li> <a href="https://www.facebook.com/sharer/sharer.php?u=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article&e=Broadcast+Global+TV+Production+Map+2022" class="facebook" title="Share this on Facebook" target="_blank"></a> </li> <!-- twitter--> <li> <a href="https://twitter.com/intent/tweet?text=Broadcast+Global+TV+Production+Map+2022&url=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article" class="twitter" title="Share this on Twitter" target="_blank"></a> </li> <!--linked in--> <li> <a href="https://www.linkedin.com/cws/share?url=https%3a%2f%2fwww.broadcastnow.co.uk%2findies%2fbroadcast-global-tv-production-map-2022%2f5171316.article" class="linkedin" title="Share this on Linked in" target="_blank"></a> </li><li><a href="mailto:?subject=Broadcast Global TV Production Map 2022&body=https://www.broadcastnow.co.uk/indies/broadcast-global-tv-production-map-2022/5171316.article" class="email" title="Email this article"></a></li> </ul> <ul class="pageOptions_right"> <li aria-live="polite"><a href="#commentsJump" class="commentButton scrollTo"><div class="commentCount"><span class="commentText commentHidden">No comments</span></div> <div class="commentIcon"> </div></a></li> <li class=" last" aria-live="polite" data-cache-bust="true" data-ajax-load-content="" data-url="/5171316/bookmark"> </li> </ul> </div> </div> </div> </div> </div> <div id="rightcolumn" class="fixedrightcolumn rightcolumn restrictedcontent"> <div id="rightcolumn_sleeve"> <!-- BELOW NOT SUPPORT Instructions for implementation depending on right or bottom. If this in the bottom position then we might need to wrap the code with ` <div class="container"> <div class="inner-sleeve"> // taxanomy-list to go here </div> </div> ` --> <div data-mpu1-reflow></div> <div id="rhcreflow-tabletlandscape"></div> <div id="rhcreflow-desktop" class="rhc-mostpopular-desktop"> </div> <div id="rhcreflow-extra"></div> <div id="rhcreflow-extra-end" class="rhcreflow-extra-end"></div> </div> </div> </div> </div> <div class="container bottomAdContainer restrictedcontent"> <div class="inner-sleeve"> <div class="bottomAd"> <div class="leaderboard offsetHeight"> <div class="ad"> <!-- /21612928716/Broadcast/articlebanner --> <div id='div-gpt-ad-1623321883412-0' style="mob-ad-75 tab-ad-250 dt-ad-250"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1623321883412-0'); }); </script> </div> </div> </div> <div id="_97415B49-56A7-45F4-BF65-F8C9B4820F8E"></div> <script>(function(w,d,t,u,c,b,m,s,n,i,e,p){(w[n]=w[n]||[]).push(arguments);e=d.createElement(t);p=d.getElementsByTagName(t)[0];e.async=1;e.src=u+'/scripts/eme.js';p.parentNode.insertBefore(e,p);})(window,document,'script','https://emeapi.abacusemedia.com','MBI','BN','Article_bottom_banner','#_97415B49-56A7-45F4-BF65-F8C9B4820F8E','EMEObject','UserID,StoryCategories,FullNavPath');</script> </div> </div> </div> <div class="container relatedVideos restrictedcontent"> <div class="inner-sleeve"> <div id="videosreflow-tabletportrait"></div> <div id="videosreflow-mobile"></div> </div> </div> <div class="container relatedArticles" id="relatedArticles"> <div class="inner-sleeve"> <div class="extras relatedarticles restrictedcontent"> <div class="relatedarticles_sleeve"> <div class="extras_heading"> <h3>Related articles</h3> </div> <div class="extrasStory listBlocks"> <div class="contentWrapper loadMoreItems" data-load-more-ajax=""> <ul data-load-more-context=""> <li class=""> <a href="https://www.broadcastnow.co.uk/globaldata-acquires-broadcast-owner-media-business-insight/5171612.article" class="image"> <img alt="Broadcast_Media_Pack_Indie_Survey_V2" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/8/3/5/1372835_broadcast_media_pack_indie_survey_v2_44838.jpg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/8/3/5/1372835_broadcast_media_pack_indie_survey_v2_44838.jpg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/8/3/5/1372835_broadcast_media_pack_indie_survey_v2_44838.jpg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/8/3/5/1372835_broadcast_media_pack_indie_survey_v2_44838.jpg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/8/3/5/1372835_broadcast_media_pack_indie_survey_v2_44838.jpg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/news/102.type" class="storyType">News</a> <h3> <a href="https://www.broadcastnow.co.uk/globaldata-acquires-broadcast-owner-media-business-insight/5171612.article">GlobalData acquires Broadcast owner Media Business Insight</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2022-06-13T09:00:00Z","format": "D MMMM YYYY HH:mm"}">2022-06-13T09:00:00Z</span> </p> <p>Deal will help ramp up GD’s media sector expertise and data</p> </div> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-network/future-of-content-thought-leadership/5166109.article" class="image"> <img alt="Barclays" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/9/3/1/1359931_barclays_177816.jpg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/9/3/1/1359931_barclays_177816.jpg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/9/3/1/1359931_barclays_177816.jpg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/9/3/1/1359931_barclays_177816.jpg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/9/3/1/1359931_barclays_177816.jpg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/sponsored/11008.type" class="storyType">Sponsored</a> <h3> <a href="https://www.broadcastnow.co.uk/broadcast-network/future-of-content-thought-leadership/5166109.article">Future of Content Thought Leadership</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2021-12-17T10:43:00Z","format": "D MMMM YYYY HH:mm"}">2021-12-17T10:43:00Z</span> <span class="author">Sponsored by <a rel="author" href="https://www.broadcastnow.co.uk/barclays/1101302.bio">Barclays</a></span> </p> <p>Special report on the content sector, exploring the value of new and original programming at a time of continued disruption by new technologies</p> </div> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/broadcast-network/whisper-our-assets-are-our-people/5160984.article" class="image layoutIcon pictureLayout"> <img alt="Whisper boys" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/7/1/8/1348718_whisperboys_253569.jpg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/7/1/8/1348718_whisperboys_253569.jpg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/7/1/8/1348718_whisperboys_253569.jpg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/7/1/8/1348718_whisperboys_253569.jpg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/7/1/8/1348718_whisperboys_253569.jpg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/sponsored/11008.type" class="storyType">Sponsored</a> <h3> <a href="https://www.broadcastnow.co.uk/broadcast-network/whisper-our-assets-are-our-people/5160984.article">Whisper: our assets are our people</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2021-06-30T13:05:00Z","format": "D MMMM YYYY HH:mm"}">2021-06-30T13:05:00Z</span> <span class="author">Sponsored by <a rel="author" href="https://www.broadcastnow.co.uk/barclays/1101302.bio">Barclays</a></span> </p> <p>When the pandemic hit, the sports producer doubled down on protecting staff jobs and “eking out that little bit more” than its rivals</p> </div> </li> </ul> <div class="loadMoreButtonWrapper" data-load-more-button-wrapper=""> <button type="button" class="button" data-load-more-button="" data-items-offset="3" data-ajax-url="https://www.broadcastnow.co.uk/5171316/loadmore?code=ARTICLES" data-items-to-load="8" data-loading-more-text="Loading more articles"> Load more articles </button> </div> </div> </div> <div class="fixedrightcolumn rightcolumn"> <div class="ad"> <!-- /21612928716/Broadcast/AdvertC --> <div id='div-gpt-AdvertC' class="ad-250"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-AdvertC'); }); </script> </div> </div> </div> </div> </div> </div> </div> <div class="container commentContainer restrictedcontent"> <div class="inner-sleeve"> <div class=" extras"> <a id="commentsJump" class="scrollTarget"></a><div id="commentsHead"><div class="extras_heading"><h3>No comments yet</h3></div></div> <div class="extrasStory"> <div class="contentWrapper"> <div id="comments_form" class="formbox"><div class="formbox_sleeve"><div class="commentWarningWrapper"> <div class="commentWarningLeft"> <span class="commentAvatar"></span> <span class="commentWarningText">You're not signed in.</span> </div> <div class="commentWarningRight"> <h3>Only subscribers can comment on this article.</h3> <a class="popup signIn button" href="/sign-in">Sign in</a> <a class="button" href="http://subs.broadcastnow.co.uk/Subscribenow">Subscribe</a> </div> </div></div></div> <div id="ajaxCommentsList" aria-live="polite" data-cache-bust="true" data-ajax-load-content="" data-url="/0/5171316/commentlist?cachetoken=1&fh=1&sort="></div></div> </div> <div class="fixedrightcolumn rightcolumn"><div class="ad"> <!-- /21612928716/Broadcast/AdvertD --> <div id='div-gpt-AdvertD' class="ad-250"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-AdvertD'); }); </script> </div> </div></div></div> </div> </div> <div class="container relatedArticles" id="moreArticles"> <div class="inner-sleeve"> <div class="extras relatedarticles restrictedcontent"> <div class="relatedarticles_sleeve"> <div class="extras_heading"> <h3>More from Indies</h3> </div> <div class="extrasStory listBlocks"> <div class="contentWrapper loadMoreItems" data-load-more-ajax=""> <ul data-load-more-context=""> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/in-brief-itvx-picks-up-peacock-sci-fi-noah-media-promotion-black-mirror-comic/5199347.article" class="image"> <img alt="Mrs Davis 1" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/0/9/6/1437096_mrsdavis1_216803.jpg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/0/9/6/1437096_mrsdavis1_216803.jpg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/0/9/6/1437096_mrsdavis1_216803.jpg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/0/9/6/1437096_mrsdavis1_216803.jpg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/0/9/6/1437096_mrsdavis1_216803.jpg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/news/102.type" class="storyType">News</a> <h3> <a href="https://www.broadcastnow.co.uk/indies/in-brief-itvx-picks-up-peacock-sci-fi-noah-media-promotion-black-mirror-comic/5199347.article">In Brief: ITVX picks up Peacock sci-fi; Noah Media promotion; Black Mirror comic</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2024-11-21T10:16:00Z","format": "D MMMM YYYY HH:mm"}">2024-11-21T10:16:00Z</span> </p> <p>Comedy series heads to ITV AVoD</p> </div> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/quintus-studios-launches-digital-doc-series-on-drugs/5199322.article" class="image"> <img alt="Quintus Studios Drug Wars" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/0/3/9/1437039_quintusstudiosdrugwars_297411.jpeg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/0/3/9/1437039_quintusstudiosdrugwars_297411.jpeg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/0/3/9/1437039_quintusstudiosdrugwars_297411.jpeg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/0/3/9/1437039_quintusstudiosdrugwars_297411.jpeg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/0/3/9/1437039_quintusstudiosdrugwars_297411.jpeg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/news/102.type" class="storyType">News</a> <h3> <a href="https://www.broadcastnow.co.uk/indies/quintus-studios-launches-digital-doc-series-on-drugs/5199322.article">Quintus Studios launches digital doc series on drugs</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2024-11-20T10:05:00Z","format": "D MMMM YYYY HH:mm"}">2024-11-20T10:05:00Z</span> <span class="author">By <a rel="author" href="https://www.broadcastnow.co.uk/heather-fallon/1101400.bio">Heather Fallon</a></span> </p> <p>Distributor and channel owner explores drug hotspots, traffickers and their operations </p> </div> </li> <li class=""> <a href="https://www.broadcastnow.co.uk/indies/indiepics-taps-factual-producer-as-head-of-international/5199282.article" class="image"> <img alt="Ear to the Ground" loading="lazy" sizes="(max-width:767px) 100px, (max-width: 1179px) 220px, 280px" src="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/9/5/9/1436959_eartotheground_557689.jpg" srcset="https://d11p0alxbet5ud.cloudfront.net/Pictures/100x67/9/5/9/1436959_eartotheground_557689.jpg 100w,https://d11p0alxbet5ud.cloudfront.net/Pictures/172x115/9/5/9/1436959_eartotheground_557689.jpg 172w,https://d11p0alxbet5ud.cloudfront.net/Pictures/220x148/9/5/9/1436959_eartotheground_557689.jpg 220w,https://d11p0alxbet5ud.cloudfront.net/Pictures/280x188/9/5/9/1436959_eartotheground_557689.jpg 280w" width="100" height="67" class="lazyloaded" /> </a> <div class="storyDetails"> <a href="https://www.broadcastnow.co.uk/news/102.type" class="storyType">News</a> <h3> <a href="https://www.broadcastnow.co.uk/indies/indiepics-taps-factual-producer-as-head-of-international/5199282.article">Indiepics taps factual producer as head of international</a> </h3> <p class="meta"> <span class="date" data-date-timezone="{"publishdate": "2024-11-19T10:00:00Z","format": "D MMMM YYYY HH:mm"}">2024-11-19T10:00:00Z</span> <span class="author">By <a rel="author" href="https://www.broadcastnow.co.uk/marian-mchugh/1101558.bio">Marian McHugh</a></span> </p> <p>Eoin O’Shea joins Irish outfit behind RTÉ’s Ear to the Ground</p> </div> </li> </ul> <div class="loadMoreButtonWrapper" data-load-more-button-wrapper=""> <button type="button" class="button" data-load-more-button="" data-items-offset="3" data-ajax-url="https://www.broadcastnow.co.uk/5171316/loadmore?code=MORE" data-items-to-load="8" data-loading-more-text="Loading more articles"> Load more articles </button> </div> </div> </div> <div class="fixedrightcolumn rightcolumn"> <div class="ad"> <!-- /21612928716/Broadcast/AdvertE --> <div id='div-gpt-AdvertE' class="ad-250"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-AdvertE'); }); </script> </div> </div> </div> </div> </div> </div> </div> <div class="container"><div class="inner-sleeve"><div id="rhcreflow-tabletportrait"></div><div id="rhcreflow-mobile"></div></div></div><div id="mobile-drop-zone"></div> <div class="container storyBottomMostPopularContainer"> <div class="inner-sleeve"> <div class="extrasStory"> <div class="contentWrapper"> <div class="tab-widget-10" data-ajax-load-content="" data-url="/ajax/most?bottom=1&storypage=1"></div> </div> </div> <div class="fixedrightcolumn rightcolumn"> </div> </div> </div> <div class="footer_ad"> <div class="footer_ad_strip"> <div class="ad"> </div> </div> </div> <div id="footer" class="footer" role="contentinfo"> <div class="container footerTopNavPageText"> <div class="inner-sleeve"> <div class="nav topNav"><ul><li class="first"><a href="https://www.broadcastnow.co.uk/advertise">Advertise</a></li><li class=""><a href="https://www.broadcastnow.co.uk/a-z-of-contributors">A-Z of Contributors</a></li><li class=""><a href="https://www.broadcastnow.co.uk/a-z-of-subjects">A-Z of Subjects</a></li><li class="last"><a href="https://www.broadcastnow.co.uk/browse-by-issues">Browse by issues</a></li></ul></div><div class="footerSocial"> <ul> <li class="footerSocialFacebook"> <a href="https://www.facebook.com/broadcastnow/">Connect with us on Facebook</a> </li> <li class="footerSocialTwitter"> <a href="https://x.com/broadcastnow">Connect with us on Twitter</a> </li> <li class="footerSocialInstagram"> <a href="https://www.instagram.com/broadcastnow_mbi/">Connect with us on Instagram</a> </li> <li class="footerSocialLinkedin"> <a href="https://uk.linkedin.com/company/broadcast-mbi-">Connect with us on Linked in</a> </li> </ul> </div> <div class="footerPromo"> <div> <h3>Events</h3> <ul> <li><a href="http://broadcastawards.co.uk/" rel="nofollow">Broadcast Awards</a></li> <li><a href="http://broadcastdigitalawards.co.uk/" rel="nofollow">Broadcast Digital Awards</a></li> <li><a href="https://www.mediaproductionshow.com/?utm_source=Broadcast&utm_medium=website&utm_campaign=Awareness" rel="nofollow">Media Production & Technology Show</a></li> <li><a href="https://www.broadcastsportawards.co.uk/" rel="nofollow">Broadcast Sport Awards</a></li> <li><a href="https://www.aicreativesummit.co.uk/" rel="nofollow">AI Creative Summit</a></li> <li><a href="http://broadcasttechawards.co.uk/" rel="nofollow">Tech Innovation Awards</a></li> <li><a href="http://broadcasttech.co.uk/" rel="nofollow">Tech Fest</a></li> </ul> </div> <!-- <div> <h3>Help and information</h3> <ul> <li><a href="#">Advertise</a></li> <li><a href="#">Subscribe</a></li> <li><a href="#">Corporate subscriptions</a></li> <li><a href="#">Subscription and website access help</a></li> <li><a href="#">FAQs</a></li> <li><a href="#">Newsletters</a></li> </ul> </div> --> <div> <h3>Other MBI sites</h3> <ul> <li><a href="https://www.broadcastnow.co.uk//broadcast-sport" target="_blank" rel="nofollow">Broadcast Sport</a></li> <li><a href="https://www.broadcastnow.co.uk/tech-and-innovation" rel="nofollow">Broadcast Tech</a></li> <li><a href="https://www.screendaily.com" rel="nofollow">Screen Daily</a></li> <li><a href="https://www.broadcastnow.co.uk/AI-media-news" rel="nofollow">AI Media News</a></li> <li><a href="https://www.alfinsight.com" rel="nofollow">ALF Insight</a></li> <li><a href="http://www.kftv.com" rel="nofollow">KFTV</a></li> <li><a href="http://www.theknowledgeonline.com" rel="nofollow">The Knowledge and Production Intelligence</a></li> </ul> </div> </div> </div> </div> <div class="container bottomNav"><div class="inner-sleeve"><ul><li class="first"><a href="http://subs.broadcastnow.co.uk/Subscribenow">Subscribe</a></li><li><a href="https://www.broadcastnow.co.uk/about-us">About Us</a></li><li><a href="https://www.broadcastnow.co.uk/contact-us">Contact Us</a></li><li><a href="https://www.broadcastnow.co.uk/subscription-faqs">Subscription FAQs</a></li><li><a href="http://www.mb-insight.com/mbi-website-terms-of-use" class="newWindow">Terms and conditions</a></li><li><a href="http://www.globaldata.com/privacy-policy" class="newWindow">Privacy & Cookies Policy</a></li><li class="last">Copyright © 2024 Media Business Insight Limited</li></ul></div></div> <div class="bottom"> <div class="container footerBottomNavPageText"> <div class="inner-sleeve"> <p class="webvision">Site powered by <a href="https://www.abacusemedia.com/webvisioncloud">Webvision Cloud</a></p> </div> </div> </div> </div> </div> </div> <script src="/Magazine/core.js?p=7513768136130952" defer></script> <!-- REMOVE CLASS OF `popup` TO FORGOTTEN PASSWORD IN POPUP --> <script> $(window).on('abacus:popuploaded', function() { $('.abacusPopup .forgottenpassword a').removeClass('popup'); }); </script> <!-- Add instagram CSS class to video containers --> <script> $(document).ready(function(){ $('.story_video').each(function(index,element) { var instagramMedia = $(element).find('.instagram-media'); if(instagramMedia.length){ instagramMedia.parents('.story_video').addClass('instagram'); } }); }); </script> <!-- Company name / close message scripts --> <script> (function(){ var myData=myData||{"fistName":"","companyName":""}; $('.FirstName').html(myData.firstName); $('.UserCompanyName').html(myData.companyName); })(); $(window).on("eme:itemapplied", function(evt) { //var data = evt && evt.detail || {}; $('.FirstName').html(myData.firstName); $('.UserCompanyName').html(myData.companyName); }); $(window).on("abacus:ajspinblock", function(evt,element,data,settings,id,html) { $('.FirstName').html(myData.firstName); $('.UserCompanyName').html(myData.companyName); }); $(window).on("eme:itemapplied", function(evt) { //var data = evt && evt.detail || {}; var self = {"element":$(evt.originalEvent.detail.item).find('.content-close-block'), "data": ($(evt.originalEvent.detail.item).find('[data-content-close]').data('content-close')|| {})}; function setupEvent() { $(self.element) .find(".content-close-block-trigger") .on("click", function(evt) { if (self.data) { evt.preventDefault(); writeCookie(); } }); } function hideContentCloseBlock() { $(self.element) .removeClass("content-close-block-show") .addClass("content-close-block-hide") .attr("aria-hidden", true); } function showContentCloseBlock() { if (self.data && !getCookie(self.data.messageId)) { $(self.element) .removeClass("content-close-block-hide") .addClass("content-close-block-show") .attr("aria-hidden", false); } } function writeCookie() { const protocol = window.location.protocol == "https:" ? true : false; setCookie(self.data.messageId,true,self.data.expires || 7,'.'+document.location.host,protocol); hideContentCloseBlock(); } function readCookie(name) { return getCookie(name); } function setCookie(name,value,days,domain,secure) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + (value || "") + expires + (domain ? "; domain=" + domain : "")+ "; path=/" + (secure ? "; secure" : ""); } function getCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); } return null; } showContentCloseBlock(); setupEvent(); }); </script> <!-- Insight tags - MBICS-994 --> <script type="text/javascript"> _linkedin_partner_id = "5743666"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); </script><script type="text/javascript"> (function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; window.lintrk.q=[]} var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);})(window.lintrk); </script> <noscript> <img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=5743666&fmt=gif" /> </noscript> </body> </html>