Skip to content

Commit b3aa8cd

Browse files
marjisoundarelra
andcommitted
remove the trail that has branding from trail list if user is ad free
Co-authored-by: Ravi Lal <[email protected]>
1 parent 41d0b51 commit b3aa8cd

File tree

2 files changed

+19
-8
lines changed

2 files changed

+19
-8
lines changed

dotcom-rendering/src/components/FetchOnwardsData.importable.tsx

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ type Props = {
1919
discussionApiUrl: string;
2020
absoluteServerTimes: boolean;
2121
renderingTarget: RenderingTarget;
22+
isAdFreeUser: boolean;
2223
};
2324

2425
type OnwardsResponse = {
@@ -32,6 +33,20 @@ const minHeight = css`
3233
min-height: 300px;
3334
`;
3435

36+
const isTrailPaidContent = (trailType: FETrailType) =>
37+
trailType.branding?.brandingType?.name === 'paid-content';
38+
39+
const buildTrails = (
40+
trails: FETrailType[],
41+
trailLimit: number,
42+
isAdFreeUser: boolean,
43+
): TrailType[] => {
44+
return trails
45+
.filter((trailType) => !(isTrailPaidContent(trailType) && isAdFreeUser))
46+
.slice(0, trailLimit)
47+
.map(decideTrail);
48+
};
49+
3550
export const FetchOnwardsData = ({
3651
url,
3752
limit,
@@ -40,16 +55,10 @@ export const FetchOnwardsData = ({
4055
discussionApiUrl,
4156
absoluteServerTimes,
4257
renderingTarget,
58+
isAdFreeUser,
4359
}: Props) => {
4460
const { data, error } = useApi<OnwardsResponse>(url);
4561

46-
const buildTrails = (
47-
trails: FETrailType[],
48-
trailLimit: number,
49-
): TrailType[] => {
50-
return trails.slice(0, trailLimit).map(decideTrail);
51-
};
52-
5362
if (error) {
5463
// Send the error to Sentry and then prevent the element from rendering
5564
window.guardian.modules.sentry.reportError(error, 'onwards-lower');
@@ -76,7 +85,7 @@ export const FetchOnwardsData = ({
7685
<div css={minHeight}>
7786
<Carousel
7887
heading={data.heading || data.displayname} // Sometimes the api returns heading as 'displayName'
79-
trails={buildTrails(data.trails, limit)}
88+
trails={buildTrails(data.trails, limit, isAdFreeUser)}
8089
description={data.description}
8190
onwardsSource={onwardsSource}
8291
format={format}

dotcom-rendering/src/components/OnwardsUpper.importable.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,7 @@ export const OnwardsUpper = ({
318318
discussionApiUrl={discussionApiUrl}
319319
absoluteServerTimes={absoluteServerTimes}
320320
renderingTarget={renderingTarget}
321+
isAdFreeUser={isAdFreeUser}
321322
/>
322323
</Section>
323324
)}
@@ -334,6 +335,7 @@ export const OnwardsUpper = ({
334335
discussionApiUrl={discussionApiUrl}
335336
absoluteServerTimes={absoluteServerTimes}
336337
renderingTarget={renderingTarget}
338+
isAdFreeUser={isAdFreeUser}
337339
/>
338340
</Section>
339341
)}

0 commit comments

Comments
 (0)