Skip to content

Commit 2024443

Browse files
committed
Add Promotional Message Component
1 parent d6ab33a commit 2024443

28 files changed

+1280
-59
lines changed

component/MultiArmBanditComponent.js

Lines changed: 0 additions & 57 deletions
This file was deleted.

component/RemoteControlComponent.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
const promotionBannerStyle = {
2+
width: '100%',
3+
display: 'block',
4+
position: 'relative',
5+
backgroundSize: '100%',
6+
backgroundColor: 'black',
7+
color: 'white',
8+
textAlign: 'center',
9+
padding: '1rem',
10+
fontSize: '2rem'
11+
}
12+
13+
const RemoteControlComponent = ({...props}) => {
14+
15+
const { promotionMessage } = props;
16+
17+
return (
18+
<div className="container" style={promotionBannerStyle}>
19+
{promotionMessage}
20+
</div>
21+
)
22+
}
23+
24+
export default RemoteControlComponent;

data/datafile.json

Lines changed: 1241 additions & 1 deletion
Large diffs are not rendered by default.

pages/index.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@ import { getOptimizelyProjectsDataFile, getUserId } from "../utils/optimizelyCon
55

66
import Banner from "../component/Banner";
77
import FeatureFlagComponent from "../component/FeatureFlagComponent";
8+
import RemoteControlComponent from "../component/RemoteControlComponent";
89

910
export default function Home({...props}) {
1011

1112
const { datafile, clientId } = props;
1213

1314
let [ isFeatureEnabled, renderIsFeatureEnabled ] = useState(false);
15+
let [ promotionalMessage, setPromotionalMessage ] = useState('');
1416
let [ backgroundColor, setBackgroundColor ] = useState('');
1517
let [ componentTitle, setComponentTitle ] = useState('');
1618
let [ bannerText, setBannerText ] = useState('');
@@ -44,6 +46,10 @@ export default function Home({...props}) {
4446
console.log('featureFlag', featureFlag);
4547
renderIsFeatureEnabled(featureFlag.enabled);
4648

49+
const remoteControl = optimizelyUserContext.decide('1_homepage_-_remote_control');
50+
console.log('remote_control', remoteControl);
51+
setPromotionalMessage(remoteControl.variables.promotionMessage);
52+
4753
// AB Testing Code
4854
const abTestFlag = optimizelyUserContext.decide('ab_test');
4955
console.log('abTest', abTestFlag);
@@ -64,6 +70,12 @@ export default function Home({...props}) {
6470

6571
<section id="main">
6672

73+
{promotionalMessage &&
74+
<RemoteControlComponent
75+
promotionMessage={promotionalMessage} />
76+
}
77+
78+
6779
{componentTitle &&
6880
<Banner key={`${componentTitle}${backgroundColor}`}
6981
userId={userId}

public/demo/apetito/feature.png

2.26 MB
Loading

public/demo/apetito/footer.png

66.8 KB
Loading

public/demo/apetito/header.png

52.3 KB
Loading

public/demo/apetito/item.png

465 KB
Loading

public/demo/formula1/feature.png

3.21 MB
Loading

public/demo/formula1/footer.png

315 KB
Loading

0 commit comments

Comments
 (0)