common/app/conf/switches/CommercialSwitches.scala (439 lines of code) (raw):

package conf.switches import java.time.LocalDate import conf.switches.Expiry.never import conf.switches.Owner.group import conf.switches.SwitchGroup.{Commercial, CommercialPrebid, Membership} trait CommercialSwitches { val LiveBlogTopSponsorshipSwitch = Switch( Commercial, "live-blog-top-sponsorship", "When on allows a sposorship ad to be displayed on live blogs", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ShouldLoadGoogleTagSwitch = Switch( Commercial, "should-load-googletag", "If this switch is OFF, the commercial bundle won't load the googletag script. This is intended for use as a failsafe, and will disable all forms of advertising that are managed via Google Ad Manager, including Prebid and A9.", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = true, impactShortMessage = Some("Critical for advertising!"), impactFullMessage = Some( "Warning: Requires director-level sign-off + notification of global commerical stakeholders. Disabling this switch will cost £160k/day in ad-revenue", ), ) val ImrWorldwideSwitch = Switch( Commercial, "imr-worldwide", "Enable the IMR Worldwide audience segment tracking.", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val InizioSwitch = Switch( Commercial, "inizio", "Include the Inizio script on page so that creatives can show a survey.", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val TwitterUwtSwitch = Switch( Commercial, "twitter-uwt", "Include the Twitter universal website tag code.", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val PermutiveSwitch = Switch( Commercial, "permutive", "Enable Permutive library loading", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ampAmazon = Switch( Commercial, "amp-amazon", "Amp inventory is being auctioned through Amazon", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val RemarketingSwitch = Switch( Commercial, "remarketing", "Enable Remarketing tracking", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val AffiliateLinks: Switch = Switch( group = Commercial, name = "affiliate-links", description = "Enable affiliate links. If off, affiliate links will never be added to content by frontend apps. If on, affiliate links may be added based off other settings", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = false, highImpact = true, impactShortMessage = Some("Required for 'The Filter'"), impactFullMessage = Some("Warning: Disabling this switch will prevent us from being able to monetize The Filter"), ) val confiantAdVerification: Switch = Switch( group = Commercial, name = "confiant-ad-verification", description = "Enable Confiant ad verification", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val a9HeaderBidding: Switch = Switch( group = CommercialPrebid, name = "a9-header-bidding", description = "Turn on A9 header bidding", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = true, impactShortMessage = Some("Required for Amazon A9 (TAM) header bidding"), impactFullMessage = Some("Warning: Disabling this switch will prevent Amazon A9 (TAM) from running"), ) val commercialMetrics: Switch = Switch( group = Commercial, name = "commercial-metrics", description = "Send commercial metric data to the lake via fastly", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val articleEndSlot: Switch = Switch( group = Commercial, name = "article-end-slot", description = "Enable the article end slot, this appears when the contributions epic does not. Currently only Public Good is served in this slot in the US.", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val LineItemJobs: Switch = Switch( group = Commercial, name = "line-item-jobs", description = "Enable Frontend to read from the S3 line items jobs generated by the Step Functions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) } trait PrebidSwitches { val prebidHeaderBidding: Switch = Switch( group = CommercialPrebid, name = "prebid-header-bidding", description = "Turn on Prebid header bidding (takes priority over Sonobi)", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidAnalytics: Switch = Switch( group = CommercialPrebid, name = "prebid-analytics", description = "Gather analytics from Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ampPrebidPubmatic: Switch = Switch( group = CommercialPrebid, name = "amp-prebid-pubmatic", description = "Amp inventory is being auctioned through Pubmatic's Prebid Server", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ampPrebidCriteo: Switch = Switch( group = CommercialPrebid, name = "amp-prebid-criteo", description = "Amp inventory is being auctioned through Criteo's Prebid Server", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ampPrebidOzone: Switch = Switch( group = CommercialPrebid, name = "amp-prebid-ozone", description = "Amp inventory is being auctioned through Ozone's Prebid Server", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidUserSync: Switch = Switch( group = CommercialPrebid, name = "prebid-user-sync", description = "Enable bidders to sync their user data with iframe or image beacons", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val PrebidPermutiveAudience = Switch( group = CommercialPrebid, name = "prebid-permutive-audience", description = "Enable Permutive’s Audience Connector to run with Prebid", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidAppNexus: Switch = Switch( group = CommercialPrebid, name = "prebid-appnexus", description = "Include AppNexus adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidAppNexusUKROW: Switch = Switch( group = CommercialPrebid, name = "prebid-appnexus-uk-row", description = "Include AppNexus adapter in Prebid auctions in UK/ROW", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidAppNexusInvcode: Switch = Switch( group = CommercialPrebid, name = "prebid-appnexus-invcode", description = "Swap placementId for invCode in the bid params", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidIndexExchange: Switch = Switch( group = CommercialPrebid, name = "prebid-index-exchange", description = "Include Index Exchange adapter in Prebid auctions", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidOpenx: Switch = Switch( group = CommercialPrebid, name = "prebid-openx", description = "Include OpenX adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidOzone: Switch = Switch( group = CommercialPrebid, name = "prebid-ozone", description = "Include Ozone adapter direct in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidPubmatic: Switch = Switch( group = CommercialPrebid, name = "prebid-pubmatic", description = "Include Pubmatic adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidTrustx: Switch = Switch( group = CommercialPrebid, name = "prebid-trustx", description = "Include TrustX adapter in Prebid auctions", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidTripleLift: Switch = Switch( group = CommercialPrebid, name = "prebid-triplelift", description = "Include Triple Lift adapter in Prebid auctions", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidXaxis: Switch = Switch( group = CommercialPrebid, name = "prebid-xaxis", description = "Include Xaxis adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidAdYouLike: Switch = Switch( group = CommercialPrebid, name = "prebid-ad-you-like", description = "Include AdYouLike adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidCriteo: Switch = Switch( group = CommercialPrebid, name = "prebid-criteo", description = "Include Criteo adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidSmart: Switch = Switch( group = CommercialPrebid, name = "prebid-smart", description = "Include the Smart AdServer adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidKargo: Switch = Switch( group = CommercialPrebid, name = "prebid-kargo", description = "Include the Kargo adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidMagnite: Switch = Switch( group = CommercialPrebid, name = "prebid-magnite", description = "Include the Magnite adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidTheTradeDesk: Switch = Switch( group = CommercialPrebid, name = "prebid-the-trade-desk", description = "Include The Trade Desk (ttd) adapter in Prebid auctions", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val prebidBidCache: Switch = Switch( group = CommercialPrebid, name = "prebid-bid-cache", description = "Enable the Prebid bid cache", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val sentinelLogger: Switch = Switch( group = Commercial, name = "sentinel-logger", description = "Send logs to BigQuery allowing devs to discover from which pages legacy code is run", owners = group(Commercial), safeState = On, sellByDate = never, exposeClientSide = true, highImpact = false, ) val ampContentABTesting: Switch = Switch( group = Commercial, name = "amp-content-ab-testing", description = "Enable content based testing on AMP", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val optOutAdvertising: Switch = Switch( group = Commercial, name = "opt-out-advertising", description = "Enable Opt Out Advertising", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) val youtubeIma: Switch = Switch( group = Commercial, name = "youtube-ima", description = "When ON, the YouTube player will use the YouTube IMA (Interactive Media Ads) integration", owners = group(Commercial), safeState = Off, sellByDate = never, exposeClientSide = true, highImpact = false, ) }