Skip to content

Commit 16c2480

Browse files
committed
Merge remote-tracking branch 'origin/master' into candidate
2 parents 7022459 + 65059bf commit 16c2480

26 files changed

+852
-109
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,4 @@ jobs:
4040
command: |
4141
npm run build
4242
sudo apt-get -y -qq install awscli
43-
aws s3 sync build/ s3://cmp-origin-$CIRCLE_BRANCH.digitru.st/ --delete
43+
aws s3 sync build/ s3://cmp-origin-$CIRCLE_BRANCH.digitru.st/1/ --delete

metadata.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,17 @@
33
"cmpId": 1,
44
"maxCookieLifespanDays" : 390,
55
"cmpGlobalName": "__cmp",
6+
"portalUrl": "https://cdn.digitrust.mgr.consensu.org/1/portal.html",
7+
"globalVendorListLocation": "https://vendorlist.consensu.org/vendorlist.json",
68
"countryCodes": [
79
"GB",
810
"DE",
911
"PL",
1012
"FR",
1113
"ES",
14+
"NO",
1215
"IT",
16+
"IS",
1317
"RO",
1418
"SE",
1519
"BG",
@@ -23,8 +27,10 @@
2327
"FI",
2428
"DK",
2529
"BE",
30+
"LI",
2631
"PT",
2732
"MT",
33+
"LU",
2834
"CY",
2935
"LT",
3036
"SK",

src/complete.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import { CMP_GLOBAL_NAME } from "./lib/cmp";
88

99
const {config} = window[CMP_GLOBAL_NAME] || {};
1010
const configUpdates = {
11-
globalConsentLocation: '//acdn.adnxs.com/cmp/docs/portal.html',
1211
...config
1312
};
1413
init(configUpdates).then(() => { window.__cmp('renderCmpIfNeeded'); });

src/components/app.less

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
.gdpr {
44
@import '../style/normalize';
55

6-
font-family: 'Helvetica Neue', arial, sans-serif;
6+
font-family: 'acumin-pro-wide', sans-serif;
77
font-weight: 400;
88
font-size: 16px;
99
line-height: 1.5;

src/components/button/button.less

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ button, input[type=button] {
44
&.button {
55
cursor: pointer;
66
outline: none;
7-
padding: 1em;
7+
padding: 0.8em;
88
background: @color-primary;
99
color: white;
1010
border: none;

src/components/popup/details/details.jsx

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,6 @@ export default class Details extends Component {
9090
<div class={style.details}>
9191
<div class={style.header}>
9292
<LocalLabel class={style.title} providedValue={localization && localization.details ? localization.details.title : ''} localizeKey='title'>Privacy Preferences</LocalLabel>
93-
<Button class={style.save} onClick={this.handleEnableAll}>
94-
{state.showEnableAll &&
95-
<LocalLabel providedValue={localization && localization.details ? localization.details.enableAll : ''} localizeKey='enableAll'>Enable all</LocalLabel>
96-
}
97-
{!state.showEnableAll &&
98-
<LocalLabel providedValue={localization && localization.details ? localization.details.disableAll : ''} localizeKey='disableAll'>Disable all</LocalLabel>
99-
}
100-
</Button>
10193
</div>
10294
<div class={style.body}>
10395
<Panel selectedIndex={selectedPanelIndex}>
@@ -120,6 +112,7 @@ export default class Details extends Component {
120112
selectVendor={selectVendor}
121113
vendors={vendors}
122114
onShowPurposes={this.handleShowPurposes}
115+
onHandleEnableAll={this.handleEnableAll}
123116
/>
124117
</Panel>
125118
</div>

src/components/popup/details/purposes/purposes.jsx

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ export default class Purposes extends Component {
3232
showLocalVendors: false,
3333
localVendors: []
3434
});
35+
this.scrollRef.scrollTop = 0;
3536
};
3637
};
3738

@@ -121,25 +122,14 @@ export default class Purposes extends Component {
121122
))}
122123
</div>
123124
{selectedPurpose &&
124-
<div class={style.purposeDescription}>
125+
<div class={style.purposeDescription} ref={scrollRef => this.scrollRef = scrollRef}>
125126
<div class={style.purposeDetail}>
126127
<div class={style.detailHeader}>
127128
<div class={style.title}>
128129
<LocalLabel localizeKey={`${currentPurposeLocalizePrefix}.title`}>{selectedPurpose.name}</LocalLabel>
129130
</div>
130-
<div class={style.active}>
131-
{purposeIsActive &&
132-
<LocalLabel providedValue={localization && localization.purposes ? localization.purposes.active : ''} localizeKey='active'>Active</LocalLabel>
133-
}
134-
{!purposeIsActive &&
135-
<LocalLabel providedValue={localization && localization.purposes ? localization.purposes.inactive : ''} localizeKey='inactive'>Inactive</LocalLabel>
136-
}
137-
<Switch
138-
isSelected={purposeIsActive}
139-
onClick={this.handleSelectPurpose}
140-
/>
141-
</div>
142131
</div>
132+
143133
<div class={style.body}>
144134
<p><LocalLabel providedValue={selectedPurpose.description} localizeKey={`${currentPurposeLocalizePrefix}.description`} /></p>
145135
<p><LocalLabel providedValue={localization && localization.purposes ? localization.purposes.featureHeader : ''} localizeKey='featureHeader'>This will include the following features:</LocalLabel></p>
@@ -148,6 +138,21 @@ export default class Purposes extends Component {
148138
<li><LocalLabel class='featureItem' providedValue={feature.description} /></li>
149139
))}
150140
</ul>
141+
<div class={style.switchWrap}>
142+
<div class={style.active}>
143+
<Switch
144+
isSelected={purposeIsActive}
145+
onClick={this.handleSelectPurpose}
146+
/>
147+
{purposeIsActive &&
148+
<LocalLabel providedValue={localization && localization.purposes ? localization.purposes.active : ''} localizeKey='active'>Active</LocalLabel>
149+
}
150+
{!purposeIsActive &&
151+
<LocalLabel providedValue={localization && localization.purposes ? localization.purposes.inactive : ''} localizeKey='inactive'>Inactive</LocalLabel>
152+
}
153+
</div>
154+
<span class={style.switchText}>Publisher and their partners could collect anonymized information in order ot improve your experience on our site</span>
155+
</div>
151156
{!showLocalVendors &&
152157
<a class={style.vendorLink} onClick={this.onShowLocalVendors}>
153158
<LocalLabel providedValue={localization && localization.purposes ? localization.purposes.showVendors : ''} localizeKey='showVendors'>Show companies</LocalLabel>

src/components/popup/details/purposes/purposes.less

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,17 @@
1010
border-bottom: 1px solid @color-border;
1111
}
1212

13+
.switchWrap {
14+
display: flex;
15+
16+
.switchText {
17+
font-size: 14px;
18+
line-height: 24px;
19+
padding-top: 6px;
20+
padding-left: 18px;
21+
}
22+
}
23+
1324
.purposes {
1425
display: flex;
1526
flex: 1;
@@ -64,10 +75,11 @@
6475
padding-bottom: 5px;
6576
}
6677
}
78+
6779
.active {
80+
font-size: 10px;
6881
color: @color-primary;
69-
font-weight: bold;
70-
display: flex;
82+
text-align: center;
7183
padding-top: 6px;
7284
@media @smartphone {
7385
flex: 1 1 auto;

src/components/popup/details/vendors/vendors.jsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export default class Vendors extends Component {
1919

2020
static defaultProps = {
2121
onShowPurposes: () => {},
22+
handleEnableAll: () =>{},
2223
vendors: [],
2324
selectedVendorIds: new Set(),
2425
selectVendor: () => {}
@@ -42,6 +43,7 @@ export default class Vendors extends Component {
4243
vendors,
4344
selectedVendorIds,
4445
onShowPurposes,
46+
onHandleEnableAll,
4547
localization
4648
} = props;
4749

@@ -52,15 +54,21 @@ export default class Vendors extends Component {
5254
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.description : ''} localizeKey='description'>Companies carefully selected by us will use your information. Depending on the type of data they collect, use, process and other factors, certain companies rely on your consent while others require you to opt-out. For information on each partner and to exercise your choices, see below. Or to opt-out, visit the </LocalLabel>
5355
<a href='http://optout.networkadvertising.org/?c=1#!/' target='_blank'>NAI,</a><a href='http://optout.aboutads.info/?c=2#!/' target='_blank'> DAA, </a>
5456
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.or : ''} localizeKey='or'>or </LocalLabel>
55-
<a href='http://youronlinechoices.eu/' target='_blank'>EDAA </a>
56-
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.sites : ''} localizeKey='sites'>sites.</LocalLabel>
57+
<a href='http://youronlinechoices.eu/' target='_blank'>EDAA</a>
58+
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.sites : ''} localizeKey='sites'> sites.</LocalLabel>
5759
</p>
5860
<p>
5961
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.description2 : ''} localizeKey="description2">Customise how these companies use data on the </LocalLabel>
6062
<a style={style.vendorLink} onClick={onShowPurposes}>
6163
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.description2Link : ''} localizeKey="description2Link">previous page.</LocalLabel>
6264
</a>
6365
</p>
66+
<p>
67+
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.description3 : ''} localizeKey="description3">You can control your preferences for all companies by </LocalLabel>
68+
<a style={style.vendorLink} onClick={onHandleEnableAll}>
69+
<LocalLabel providedValue={localization && localization.vendors ? localization.vendors.description3Link : ''} localizeKey="description3Link">clicking here.</LocalLabel>
70+
</a>
71+
</p>
6472
</div>
6573
<div class={style.vendorHeader}>
6674
<table class={style.vendorList}>
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
import { h, Component } from 'preact';
2+
import style from './footer.less';
3+
import Label from '../../label/label';
4+
import Button from '../../button/button';
5+
6+
class LocalLabel extends Label {
7+
static defaultProps = {};
8+
}
9+
10+
export default class IntroFooter extends Component {
11+
12+
static defaultProps = {};
13+
14+
state = {
15+
showFull: false
16+
};
17+
18+
handleShow = () => {
19+
this.setState({
20+
showFull: !this.state.showFull
21+
});
22+
}
23+
render(props, state) {
24+
25+
const { showFull } = this.state;
26+
27+
const {
28+
localization,
29+
onShowPurposes,
30+
onAcceptAll
31+
} = props;
32+
33+
return (
34+
<div>
35+
{!showFull &&
36+
<div class={style.base}>
37+
<span name="ctrl" class={style.icon} onClick={this.handleShow}></span>
38+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.message : ''} localizeKey='footer.message' class={style.message}>Read more about access and use of information on your device for various purposes</LocalLabel>
39+
</div>}
40+
{showFull && <div class={style.container}>
41+
<div class={style.infoHeader}>
42+
<span name="ctrl" class={style.iconDown} onClick={this.handleShow}></span>
43+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.deviceInformationHeader : ''} localizeKey='footer.deviceInformationHeader' class={style.headerMessage}>Information that may be used</LocalLabel>
44+
</div>
45+
46+
<div class={style.content}>
47+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.deviceInformationHeader : ''} localizeKey='footer.deviceInformationHeader' class={style.message2}>Information that may be used:</LocalLabel>
48+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.deviceInformation : ''} localizeKey='footer.deviceInformation' class={style.message}>
49+
<ul>
50+
<li>Type of browser and its settings</li>
51+
<li>Information about the device's operating system</li>
52+
<li>Cookie information</li>
53+
<li>Information about other identifiers assigned to the device</li>
54+
<li>The IP address from which the device accesses a client's website or mobile application</li>
55+
<li>Information about the user's activity on that device, including web pages and mobile apps visited or used</li>
56+
<li>Information about the geographic location of the device when it accesses a website or mobile application</li>
57+
</ul>
58+
</LocalLabel>
59+
60+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.purposesHeader : ''} localizeKey='footer.purposesHeader' class={style.message2}>Purposes for storing information:</LocalLabel>
61+
<LocalLabel providedValue={localization && localization.footer ? localization.footer.purposes : ''} localizeKey='footer.purposes' class={style.message}>
62+
<ul>
63+
<li>Storage and access of information</li>
64+
<li>Ad selection and delivery</li>
65+
<li>Content selection and delivery</li>
66+
<li>Personalisation</li>
67+
<li>Measurement</li>
68+
</ul>
69+
</LocalLabel>
70+
</div>
71+
72+
<div class={style.infoFooter}>
73+
<Button
74+
class={style.rejectAll}
75+
invert={true}
76+
onClick={onShowPurposes}
77+
>
78+
<LocalLabel providedValue={localization && localization.intro ? localization.intro.showPurposes : ''} localizeKey='intro.showPurposes'>Learn more</LocalLabel>
79+
</Button>
80+
<Button
81+
class={style.acceptAll}
82+
onClick={onAcceptAll}
83+
>
84+
<LocalLabel providedValue={localization && localization.intro ? localization.intro.acceptAll : ''} localizeKey='intro.acceptAll'>OK, Continue to site</LocalLabel>
85+
</Button>
86+
</div>
87+
</div>}
88+
</div>
89+
);
90+
};
91+
}

0 commit comments

Comments
 (0)