Add policyLink configuration to piwik
Also: - Make CookieBar ES6 class - Alter phrasing on CookieBar - Conditionaly display longer "...(See our ++cookie and privacy policies++)." if policy link is configured.
This commit is contained in:
parent
4e6594d64b
commit
d15051a635
3 changed files with 35 additions and 28 deletions
|
@ -355,7 +355,8 @@ const LoggedInView = React.createClass({
|
||||||
let topBar;
|
let topBar;
|
||||||
const isGuest = this.props.matrixClient.isGuest();
|
const isGuest = this.props.matrixClient.isGuest();
|
||||||
if (this.props.showCookieBar) {
|
if (this.props.showCookieBar) {
|
||||||
topBar = <CookieBar />;
|
const policyUrl = this.props.config.piwik ? (this.props.config.piwik.policyUrl || null) : null;
|
||||||
|
topBar = <CookieBar policyUrl={policyUrl} />;
|
||||||
} else if (this.props.hasNewVersion) {
|
} else if (this.props.hasNewVersion) {
|
||||||
topBar = <NewVersionBar version={this.props.version} newVersion={this.props.newVersion}
|
topBar = <NewVersionBar version={this.props.version} newVersion={this.props.newVersion}
|
||||||
releaseNotes={this.props.newVersionReleaseNotes}
|
releaseNotes={this.props.newVersionReleaseNotes}
|
||||||
|
|
|
@ -15,59 +15,64 @@ limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
import PropTypes from 'prop-types';
|
||||||
import dis from '../../../dispatcher';
|
import dis from '../../../dispatcher';
|
||||||
import { _t } from '../../../languageHandler';
|
import { _t } from '../../../languageHandler';
|
||||||
import sdk from '../../../index';
|
import sdk from '../../../index';
|
||||||
|
|
||||||
const makeLink = (href) => (sub) =>
|
export default class CookieBar extends React.Component {
|
||||||
<a
|
static propTypes = {
|
||||||
className="mx_MatrixToolbar_link"
|
policyUrl: PropTypes.string,
|
||||||
target="_blank"
|
}
|
||||||
href={href}
|
|
||||||
>
|
|
||||||
{ sub }
|
|
||||||
</a>;
|
|
||||||
|
|
||||||
export default React.createClass({
|
constructor() {
|
||||||
onAccept: function() {
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
onAccept() {
|
||||||
dis.dispatch({
|
dis.dispatch({
|
||||||
action: 'accept_cookies',
|
action: 'accept_cookies',
|
||||||
});
|
});
|
||||||
},
|
}
|
||||||
|
|
||||||
onReject: function() {
|
onReject() {
|
||||||
dis.dispatch({
|
dis.dispatch({
|
||||||
action: 'reject_cookies',
|
action: 'reject_cookies',
|
||||||
});
|
});
|
||||||
},
|
}
|
||||||
|
|
||||||
render: function() {
|
render() {
|
||||||
const AccessibleButton = sdk.getComponent('elements.AccessibleButton');
|
const AccessibleButton = sdk.getComponent('elements.AccessibleButton');
|
||||||
const toolbarClasses = "mx_MatrixToolbar";
|
const toolbarClasses = "mx_MatrixToolbar";
|
||||||
return (
|
return (
|
||||||
<div className={toolbarClasses}>
|
<div className={toolbarClasses}>
|
||||||
<img className="mx_MatrixToolbar_warning" src="img/warning.svg" width="24" height="23" alt="Warning" />
|
<img className="mx_MatrixToolbar_warning" src="img/warning.svg" width="24" height="23" alt="Warning" />
|
||||||
<div className="mx_MatrixToolbar_content">
|
<div className="mx_MatrixToolbar_content">
|
||||||
{ _t(
|
{ this.props.policyUrl ? _t(
|
||||||
"Help us improve Riot by sending usage data. " +
|
"Help improve Riot by sending usage data? " +
|
||||||
"This will use a cookie " +
|
"This will use a cookie. " +
|
||||||
"(see our <CookieLink>cookie</CookieLink> and " +
|
"(See our <PolicyLink>cookie and privacy policies</PolicyLink>).",
|
||||||
"<PrivacyLink>privacy</PrivacyLink> policies)",
|
|
||||||
{},
|
{},
|
||||||
{
|
{
|
||||||
// XXX: We need to link to the page that explains our cookies
|
// XXX: We need to link to the page that explains our cookies
|
||||||
'CookieLink': makeLink("https://riot.im/privacy"),
|
'PolicyLink': (sub) => <a
|
||||||
'PrivacyLink': makeLink("https://riot.im/privacy"),
|
className="mx_MatrixToolbar_link"
|
||||||
|
target="_blank"
|
||||||
|
href={this.props.policyUrl}
|
||||||
|
>
|
||||||
|
{ sub }
|
||||||
|
</a>
|
||||||
|
,
|
||||||
},
|
},
|
||||||
) }
|
) : _t("Help improve Riot by sending usage data? This will use a cookie.") }
|
||||||
</div>
|
</div>
|
||||||
<AccessibleButton element='button' className="mx_MatrixToolbar_action" onClick={this.onAccept}>
|
<AccessibleButton element='button' className="mx_MatrixToolbar_action" onClick={this.onAccept}>
|
||||||
{ _t("Send usage data") }
|
{ _t("Yes please") }
|
||||||
</AccessibleButton>
|
</AccessibleButton>
|
||||||
<AccessibleButton className="mx_MatrixToolbar_close" onClick={this.onReject}>
|
<AccessibleButton className="mx_MatrixToolbar_close" onClick={this.onReject}>
|
||||||
<img src="img/cancel.svg" width="18" height="18" />
|
<img src="img/cancel.svg" width="18" height="18" />
|
||||||
</AccessibleButton>
|
</AccessibleButton>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
},
|
}
|
||||||
});
|
}
|
||||||
|
|
|
@ -634,8 +634,9 @@
|
||||||
"Something went wrong when trying to get your communities.": "Something went wrong when trying to get your communities.",
|
"Something went wrong when trying to get your communities.": "Something went wrong when trying to get your communities.",
|
||||||
"Display your community flair in rooms configured to show it.": "Display your community flair in rooms configured to show it.",
|
"Display your community flair in rooms configured to show it.": "Display your community flair in rooms configured to show it.",
|
||||||
"You're not currently a member of any communities.": "You're not currently a member of any communities.",
|
"You're not currently a member of any communities.": "You're not currently a member of any communities.",
|
||||||
"Help us improve Riot by sending usage data. This will use a cookie (see our <CookieLink>cookie</CookieLink> and <PrivacyLink>privacy</PrivacyLink> policies)": "Help us improve Riot by sending usage data. This will use a cookie (see our <CookieLink>cookie</CookieLink> and <PrivacyLink>privacy</PrivacyLink> policies)",
|
"Help improve Riot by sending usage data? This will use a cookie. (See our <PolicyLink>cookie and privacy policies</PolicyLink>).": "Help improve Riot by sending usage data? This will use a cookie. (See our <PolicyLink>cookie and privacy policies</PolicyLink>).",
|
||||||
"Send usage data": "Send usage data",
|
"Help improve Riot by sending usage data? This will use a cookie.": "Help improve Riot by sending usage data? This will use a cookie.",
|
||||||
|
"Yes please": "Yes please",
|
||||||
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
|
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
|
||||||
"Enable them now": "Enable them now",
|
"Enable them now": "Enable them now",
|
||||||
"What's New": "What's New",
|
"What's New": "What's New",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue