fox-send/app/ui/legal.js

39 lines
1.2 KiB
JavaScript
Raw Normal View History

2018-10-25 02:07:10 +00:00
const html = require('choo/html');
const raw = require('choo/html/raw');
2019-01-29 21:08:54 +00:00
const modal = require('./modal');
2018-10-25 02:07:10 +00:00
2019-01-29 21:08:54 +00:00
module.exports = function(state, emit) {
2018-10-25 02:07:10 +00:00
return html`
2019-02-22 21:31:54 +00:00
<main class="main">
2019-01-29 21:08:54 +00:00
${state.modal && modal(state, emit)}
2018-11-16 20:39:36 +00:00
<div
class="flex flex-col items-center bg-white m-6 px-6 py-8 border border-grey-light md:border-none md:px-12 md:py-16 shadow w-full md:h-full"
>
2019-02-28 23:53:13 +00:00
<h1 class="text-center">${state.translate('legalHeader')}</h1>
2019-01-24 20:31:20 +00:00
${raw(
replaceLinks(state.translate('legalNoticeTestPilot'), [
'https://testpilot.firefox.com/terms',
'https://testpilot.firefox.com/privacy',
'https://testpilot.firefox.com/experiments/send'
])
)}
${raw(
replaceLinks(state.translate('legalNoticeMozilla'), [
'https://www.mozilla.org/privacy/websites/',
'https://www.mozilla.org/about/legal/terms/mozilla/'
])
)}
2018-11-16 20:39:36 +00:00
</div>
</main>
`;
2018-10-25 02:07:10 +00:00
};
function replaceLinks(str, urls) {
let i = 0;
const s = str.replace(
/<a>([^<]+)<\/a>/g,
(m, v) => `<a class="text-blue" href="${urls[i++]}">${v}</a>`
);
2018-11-02 09:27:59 +00:00
return `<p class="mt-10 max-w-md leading-normal">${s}</p>`;
2018-10-25 02:07:10 +00:00
}