From 7d64555a50cd42c47cc09be899f90268c309f8b0 Mon Sep 17 00:00:00 2001 From: HarveyPeachey Date: Mon, 15 Dec 2025 09:23:21 +0000 Subject: [PATCH] optimizely bleed on most read and live radio pages --- .../experimentsForPageMetrics.ts | 15 ++++++++++++++- src/app/pages/LiveRadioPage/LiveRadioPage.tsx | 12 ++++++++++++ src/app/pages/LiveRadioPage/index.tsx | 5 ++++- src/app/pages/MostReadPage/MostReadPage.jsx | 12 ++++++++++++ src/app/pages/MostReadPage/index.jsx | 5 ++++- 5 files changed, 46 insertions(+), 3 deletions(-) diff --git a/src/app/components/OptimizelyPageMetrics/experimentsForPageMetrics.ts b/src/app/components/OptimizelyPageMetrics/experimentsForPageMetrics.ts index 7941a85fe42..a2b832d34b8 100644 --- a/src/app/components/OptimizelyPageMetrics/experimentsForPageMetrics.ts +++ b/src/app/components/OptimizelyPageMetrics/experimentsForPageMetrics.ts @@ -1,5 +1,10 @@ import { PageTypes } from '#app/models/types/global'; -import { ARTICLE_PAGE, HOME_PAGE } from '#app/routes/utils/pageTypes'; +import { + ARTICLE_PAGE, + HOME_PAGE, + LIVE_RADIO_PAGE, + MOST_READ_PAGE, +} from '#app/routes/utils/pageTypes'; // Any running serverside and client side experiments which collect Optimizely Page Metrics; page view, page complete, scroll depth // Includes PageType so that different experiments can be run on different pageTypes @@ -25,6 +30,14 @@ const experimentsForPageMetrics: ExperimentsForPageTypeMetrics = [ pageType: HOME_PAGE, activeExperiments: ['newswb_ws_tod_homepage', 'newswb_ws_pwa_promo_prompt'], }, + { + pageType: LIVE_RADIO_PAGE, + activeExperiments: ['general_event_bleed_test_2'], + }, + { + pageType: MOST_READ_PAGE, + activeExperiments: ['general_event_bleed_test_1'], + }, ]; export default experimentsForPageMetrics; diff --git a/src/app/pages/LiveRadioPage/LiveRadioPage.tsx b/src/app/pages/LiveRadioPage/LiveRadioPage.tsx index 237e0cb9676..956d69d9890 100644 --- a/src/app/pages/LiveRadioPage/LiveRadioPage.tsx +++ b/src/app/pages/LiveRadioPage/LiveRadioPage.tsx @@ -6,6 +6,10 @@ import ComscoreAnalytics from '#containers/ComscoreAnalytics'; import Grid, { GelPageGrid } from '#components/Grid'; import MediaLoader from '#app/components/MediaLoader'; import { ContentType } from '#app/components/ChartbeatAnalytics/types'; +import useOptimizelyVariation, { + ExperimentType, +} from '#app/hooks/useOptimizelyVariation'; +import OptimizelyPageMetrics from '#app/components/OptimizelyPageMetrics'; import ATIAnalytics from '../../components/ATIAnalytics'; import ChartbeatAnalytics from '../../components/ChartbeatAnalytics'; import MetadataContainer from '../../components/Metadata'; @@ -25,6 +29,13 @@ const LiveRadioPage = ({ pageData }: { pageData: LiveRadioPageData }) => { } = pageData; const { script, service } = use(ServiceContext); + const variation = useOptimizelyVariation({ + experimentName: 'general_event_bleed_test_2', + experimentType: ExperimentType.CLIENT_SIDE, + }); + + console.log(variation); + const hasRadioScheduleData = Boolean(radioScheduleData); return ( <> @@ -106,6 +117,7 @@ const LiveRadioPage = ({ pageData }: { pageData: LiveRadioPageData }) => { eventTrackingData={{ componentName: 'radio-schedule' }} /> )} + ); }; diff --git a/src/app/pages/LiveRadioPage/index.tsx b/src/app/pages/LiveRadioPage/index.tsx index dc0940218b6..e9a9e121068 100644 --- a/src/app/pages/LiveRadioPage/index.tsx +++ b/src/app/pages/LiveRadioPage/index.tsx @@ -1,4 +1,7 @@ +import withOptimizelyProvider from '#app/legacy/containers/PageHandlers/withOptimizelyProvider'; import LiveRadioPage from './LiveRadioPage'; import applyBasicPageHandlers from '../utils/applyBasicPageHandlers'; -export default applyBasicPageHandlers(LiveRadioPage); +export default applyBasicPageHandlers(LiveRadioPage, { + handlerBeforeContexts: withOptimizelyProvider, +}); diff --git a/src/app/pages/MostReadPage/MostReadPage.jsx b/src/app/pages/MostReadPage/MostReadPage.jsx index 6f5d92d9161..c1bfbb2950e 100644 --- a/src/app/pages/MostReadPage/MostReadPage.jsx +++ b/src/app/pages/MostReadPage/MostReadPage.jsx @@ -13,6 +13,10 @@ import ComscoreAnalytics from '#containers/ComscoreAnalytics'; import Grid, { GelPageGrid } from '#components/Grid'; import IndexHeading from '#containers/IndexHeading'; import IndexPageContainer from '#components/PageLayout/IndexPageContainer'; +import useOptimizelyVariation, { + ExperimentType, +} from '#app/hooks/useOptimizelyVariation'; +import OptimizelyPageMetrics from '#app/components/OptimizelyPageMetrics'; import MostRead from '../../components/MostRead/Canonical'; import ATIAnalytics from '../../components/ATIAnalytics'; import ChartbeatAnalytics from '../../components/ChartbeatAnalytics'; @@ -110,6 +114,13 @@ const MostReadPage = ({ pageData }) => { mostRead: { header }, } = use(ServiceContext); + const variation = useOptimizelyVariation({ + experimentName: 'general_event_bleed_test_1', + experimentType: ExperimentType.CLIENT_SIDE, + }); + + console.log(variation); + const { metadata: { atiAnalytics }, } = pageData; @@ -135,6 +146,7 @@ const MostReadPage = ({ pageData }) => { + ); }; diff --git a/src/app/pages/MostReadPage/index.jsx b/src/app/pages/MostReadPage/index.jsx index 809237340ca..133d050f1da 100644 --- a/src/app/pages/MostReadPage/index.jsx +++ b/src/app/pages/MostReadPage/index.jsx @@ -1,4 +1,7 @@ +import withOptimizelyProvider from '#app/legacy/containers/PageHandlers/withOptimizelyProvider'; import MostReadPage from './MostReadPage'; import applyBasicPageHandlers from '../utils/applyBasicPageHandlers'; -export default applyBasicPageHandlers(MostReadPage); +export default applyBasicPageHandlers(MostReadPage, { + handlerBeforeContexts: withOptimizelyProvider, +});