|
|
|
@ -102,27 +102,54 @@ define([
|
|
|
|
|
return h('a', attrs, text);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var imprintUrl = AppConfig.imprint && (typeof(AppConfig.imprint) === "boolean" ?
|
|
|
|
|
'/imprint.html' : AppConfig.imprint);
|
|
|
|
|
|
|
|
|
|
Pages.versionString = "v4.13.0";
|
|
|
|
|
|
|
|
|
|
var customURLs = Pages.customURLs = {};
|
|
|
|
|
(function () {
|
|
|
|
|
var defaultURLs = {
|
|
|
|
|
//imprint: '/imprint.html', // XXX cryptpad.org/default-imprint.html?
|
|
|
|
|
//privacy: '/privacy.html', // XXX cryptpad.org/default-privacy.html?
|
|
|
|
|
terms: '/terms.html', // XXX cryptpad.org/default-terms.html?
|
|
|
|
|
//roadmap: '/roadmap.html', // XXX cryptpad.org/default-roadmap.html?
|
|
|
|
|
source: 'https://github.com/xwiki-labs/cryptpad',
|
|
|
|
|
};
|
|
|
|
|
var l = Msg._getLanguage();
|
|
|
|
|
['imprint', 'privacy', 'terms', 'roadmap', 'source'].forEach(function (k) {
|
|
|
|
|
var value = AppConfig[k];
|
|
|
|
|
if (value === false) { return; }
|
|
|
|
|
if (value === true) {
|
|
|
|
|
customURLs[k] = defaultURLs[k];
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!value) { return; }
|
|
|
|
|
if (typeof(value) === 'string') {
|
|
|
|
|
customURLs[k] = value;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if (typeof(value) === 'object') {
|
|
|
|
|
customURLs[k] = value[l] || value['default'];
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}());
|
|
|
|
|
|
|
|
|
|
Msg.footer_source = 'Source code'; // XXX
|
|
|
|
|
|
|
|
|
|
// used for the about menu
|
|
|
|
|
Pages.imprintLink = AppConfig.imprint ? footLink(imprintUrl, 'imprint') : undefined;
|
|
|
|
|
Pages.privacyLink = footLink(AppConfig.privacy, 'privacy');
|
|
|
|
|
Pages.githubLink = footLink('https://github.com/xwiki-labs/cryptpad', null, 'GitHub');
|
|
|
|
|
Pages.imprintLink = footLink(customURLs.imprint, 'imprint');
|
|
|
|
|
Pages.privacyLink = footLink(customURLs.privacy, 'privacy');
|
|
|
|
|
Pages.termsLink = footLink(customURLs.terms, 'footer_tos');
|
|
|
|
|
Pages.sourceLink = footLink(customURLs.source, 'footer_source');
|
|
|
|
|
Pages.docsLink = footLink('https://docs.cryptpad.fr', 'docs_link');
|
|
|
|
|
Pages.roadmapLink = footLink(AppConfig.roadmap, 'footer_roadmap');
|
|
|
|
|
Pages.roadmapLink = footLink(customURLs.roadmap, 'footer_roadmap');
|
|
|
|
|
|
|
|
|
|
Pages.infopageFooter = function () {
|
|
|
|
|
var terms = footLink('/terms.html', 'footer_tos'); // FIXME this should be configurable like the other legal pages
|
|
|
|
|
var legalFooter;
|
|
|
|
|
|
|
|
|
|
// only display the legal part of the footer if it has content
|
|
|
|
|
if (terms || Pages.privacyLink || Pages.imprintLink) {
|
|
|
|
|
if (Pages.termsLink || Pages.privacyLink || Pages.imprintLink) {
|
|
|
|
|
legalFooter = footerCol('footer_legal', [
|
|
|
|
|
terms,
|
|
|
|
|
Pages.termsLink,
|
|
|
|
|
Pages.privacyLink,
|
|
|
|
|
Pages.imprintLink,
|
|
|
|
|
]);
|
|
|
|
@ -145,7 +172,7 @@ define([
|
|
|
|
|
footLink('/what-is-cryptpad.html', 'topbar_whatIsCryptpad'),
|
|
|
|
|
Pages.docsLink,
|
|
|
|
|
footLink('/features.html', Pages.areSubscriptionsAllowed()? 'pricing': 'features'), // Messages.pricing, Messages.features
|
|
|
|
|
Pages.githubLink,
|
|
|
|
|
Pages.sourceLink,
|
|
|
|
|
footLink('https://opencollective.com/cryptpad/contribute/', 'footer_donate'),
|
|
|
|
|
]),
|
|
|
|
|
footerCol('footer_aboutUs', [
|
|
|
|
|