diff --git a/customize.dist/pages/features.js b/customize.dist/pages/features.js
index a71d085d5..ff67c6912 100644
--- a/customize.dist/pages/features.js
+++ b/customize.dist/pages/features.js
@@ -1,13 +1,13 @@
define([
'jquery',
'/common/hyperscript.js',
- '/common/common-util.js',
'/customize/messages.js',
'/customize/application_config.js',
'/common/outer/local-store.js',
'/customize/pages.js',
'/api/config',
-], function ($, h, Util, Msg, AppConfig, LocalStore, Pages, Config) {
+ '/common/common-ui-elements.js',
+], function ($, h, Msg, AppConfig, LocalStore, Pages, Config, UIElements) {
var accounts = {
donateURL: AppConfig.donateURL || "https://opencollective.com/cryptpad/",
upgradeURL: AppConfig.upgradeURL
@@ -44,26 +44,26 @@ define([
var SPECIAL_GROUP_ITEMS = {};
SPECIAL_GROUP_ITEMS.storage0 = function (f) {
return groupItemTemplate(
- Msg['features_f_' + f],
- Msg._getKey('features_f_' + f + '_note', [Config.inactiveTime])
+ Msg['features_f_' + f], // .features_f_storage0
+ Msg._getKey('features_f_' + f + '_note', [Config.inactiveTime]) // .features_f_storage0_note
);
};
SPECIAL_GROUP_ITEMS.file1 = function (f) {
return groupItemTemplate(
- Msg['features_f_' + f],
- Msg._getKey('features_f_' + f + '_note', [Config.maxUploadSize / 1024 / 1024])
+ Msg['features_f_' + f], // .features_f_file1
+ Msg._getKey('features_f_' + f + '_note', [Config.maxUploadSize / 1024 / 1024]) // .features_f_file1_note
);
};
SPECIAL_GROUP_ITEMS.storage1 = function (f) {
return groupItemTemplate(
- Msg._getKey('features_f_' + f, [Util.getPrettySize(Config.defaultStorageLimit, Msg)]),
- Msg['features_f_' + f + '_note']
+ Msg._getKey('features_f_' + f, [UIElements.prettySize(Config.defaultStorageLimit)]), // .features_f_storage1
+ Msg['features_f_' + f + '_note'] // .features_f_storage1_note
);
};
SPECIAL_GROUP_ITEMS.storage2 = function (f) {
return groupItemTemplate(
- Msg['features_f_' + f],
- Msg._getKey('features_f_' + f + '_note', [Config.premiumUploadSize / 1024 / 1024])
+ Msg['features_f_' + f], // .features_f_storage2
+ Msg._getKey('features_f_' + f + '_note', [Config.premiumUploadSize / 1024 / 1024]) // .features_f_storage2_note
);
};
@@ -81,7 +81,13 @@ define([
h('div.text-center', '0€'),
h('div.text-center', Msg.features_noData),
]),
- h('ul.list-group.list-group-flush', ['apps', 'file0', 'core', 'cryptdrive0', 'storage0'].map(groupItem)),
+ h('ul.list-group.list-group-flush', [
+ 'apps',
+ 'file0', // Msg.features_f_file0, .features_f_file0_note
+ 'core', // Msg.features_f_core, Msg.features_f_core_note
+ 'cryptdrive0', // Msg.features_f_cryptdrive0, .features_f_cryptdrive0_note
+ 'storage0'
+ ].map(groupItem)),
]),
]);
@@ -95,7 +101,14 @@ define([
h('div.text-center', '0€'),
h('div.text-center', Msg.features_noData),
]),
- h('ul.list-group.list-group-flush', ['anon', 'social', 'file1', 'cryptdrive1', 'devices', 'storage1'].map(groupItem)),
+ h('ul.list-group.list-group-flush', [
+ 'anon', // Msg.features_f_anon, .features_f_anon_note
+ 'social', // Msg.features_f_social, .features_f_social_note
+ 'file1',
+ 'cryptdrive1', // Msg.features_f_cryptdrive1, .features_f_cryptdrive1_note
+ 'devices', // Msg.features_f_devices, .features_f_devices_note
+ 'storage1' // Msg.features_f_storage1, .features_f_storage1_note
+ ].map(groupItem)),
h('div.card-body',[
h('div.cp-features-register#cp-features-register', [
h('a', {
@@ -118,7 +131,12 @@ define([
}, Msg._getKey('features_pricing', ['5', '10', '15']))),
h('div.text-center', Msg.features_emailRequired),
]),
- h('ul.list-group.list-group-flush', ['reg', 'storage2', 'support', 'supporter'].map(groupItem)),
+ h('ul.list-group.list-group-flush', [
+ 'reg', // Msg.features_f_reg, .features_f_reg_note
+ 'storage2',
+ 'support', // Msg.features_f_support, .features_f_support_note
+ 'supporter' // Msg.features_f_supporter, .features_f_supporter_note
+ ].map(groupItem)),
h('div.card-body',[
h('div.cp-features-register#cp-features-subscribe', [
premiumButton
diff --git a/package.json b/package.json
index e2b3c0fa2..52f3fbaed 100644
--- a/package.json
+++ b/package.json
@@ -45,6 +45,7 @@
"lint:js": "jshint --config .jshintrc --exclude-path .jshintignore .",
"lint:server": "jshint --config .jshintrc lib",
"lint:less": "./node_modules/lesshint/bin/lesshint -c ./.lesshintrc ./customize.dist/src/less2/",
+ "lint:translations": "node ./scripts/unused-translations.js",
"test": "node scripts/TestSelenium.js",
"test-rpc": "cd scripts/tests && node test-rpc",
"template": "cd customize.dist/src && for page in ../index.html ../privacy.html ../terms.html ../contact.html ../what-is-cryptpad.html ../features.html ../../www/login/index.html ../../www/register/index.html ../../www/user/index.html;do echo $page; cp template.html $page; done;",
diff --git a/scripts/unused-translations.js b/scripts/unused-translations.js
index 98a57bf16..ea866b489 100644
--- a/scripts/unused-translations.js
+++ b/scripts/unused-translations.js
@@ -76,7 +76,8 @@ var grep = function (pattern, cb) {
return void cb(err);
}
if (/data\-localization/.test(stdout)) {
- return cb(void 0, true, "DATA_LOCALIZATION", stdout);
+ return cb(void 0, false);
+ //return cb(void 0, true, "DATA_LOCALIZATION", stdout);
}
if (/(Messages|Msg|messages)\./.test(stdout) || /(footLink|footerCol)/.test(stdout)) {
return cb(void 0, false);
diff --git a/www/admin/inner.js b/www/admin/inner.js
index f99b98fda..bc2085681 100644
--- a/www/admin/inner.js
+++ b/www/admin/inner.js
@@ -8,6 +8,7 @@ define([
'/common/hyperscript.js',
'/customize/messages.js',
'/common/common-interface.js',
+ '/common/common-ui-elements.js',
'/common/common-util.js',
'/common/common-hash.js',
'/common/common-signing-keys.js',
@@ -26,6 +27,7 @@ define([
h,
Messages,
UI,
+ UIElements,
Util,
Hash,
Keys,
@@ -40,20 +42,20 @@ define([
var sFrameChan;
var categories = {
- 'general': [
+ 'general': [ // Msg.admin_cat_general
'cp-admin-flush-cache',
'cp-admin-update-limit',
'cp-admin-archive',
'cp-admin-unarchive',
// 'cp-admin-registration',
],
- 'quota': [
+ 'quota': [ // Msg.admin_cat_quota
'cp-admin-defaultlimit',
'cp-admin-setlimit',
'cp-admin-getquota',
'cp-admin-getlimits',
],
- 'stats': [
+ 'stats': [ // Msg.admin_cat_stats
'cp-admin-refresh-stats',
'cp-admin-active-sessions',
'cp-admin-active-pads',
@@ -61,11 +63,11 @@ define([
'cp-admin-registered',
'cp-admin-disk-usage',
],
- 'support': [
+ 'support': [ // Msg.admin_cat_support
'cp-admin-support-list',
'cp-admin-support-init'
],
- 'performance': [
+ 'performance': [ // Msg.admin_cat_performance
'cp-admin-refresh-performance',
'cp-admin-performance-profiling',
]
@@ -73,7 +75,7 @@ define([
var create = {};
- var makeBlock = function (key, addButton) {
+ var makeBlock = function (key, addButton) { // Title, Hint, maybeButton
// Convert to camlCase for translation keys
var safeKey = key.replace(/-([a-z])/g, function (g) { return g[1].toUpperCase(); });
@@ -90,7 +92,7 @@ define([
};
create['update-limit'] = function () {
var key = 'update-limit';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_updateLimitHint, .admin_updateLimitTitle, .admin_updateLimitButton
$div.find('button').click(function () {
sFrameChan.query('Q_UPDATE_LIMIT', null, function (e, res) {
if (e || (res && res.error)) { return void console.error(e || res.error); }
@@ -101,7 +103,7 @@ define([
};
create['flush-cache'] = function () {
var key = 'flush-cache';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_flushCacheHint, .admin_flushCacheTitle, .admin_flushCacheButton
var called = false;
$div.find('button').click(function () {
if (called) { return; }
@@ -225,14 +227,14 @@ define([
create['archive'] = function () {
var key = 'archive';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_archiveHint, .admin_archiveTitle, .admin_archiveButton
var $button = $div.find('button');
archiveForm(true, $div, $button);
return $div;
};
create['unarchive'] = function () {
var key = 'unarchive';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_unarchiveHint, .admin_unarchiveTitle, .admin_unarchiveButton
var $button = $div.find('button');
archiveForm(false, $div, $button);
return $div;
@@ -240,7 +242,7 @@ define([
create['registration'] = function () {
var key = 'registration';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_registrationHint, .admin_registrationTitle, .admin_registrationButton
var $button = $div.find('button');
var state = APP.instanceStatus.restrictRegistration;
if (state) {
@@ -273,16 +275,11 @@ define([
return $div;
};
- var getPrettySize = function (bytes) { // XXX duplicate of UIElements.prettySize ?
- var unit = Util.magnitudeOfBytes(bytes);
- var value = unit === 'GB' ? Util.bytesToGigabytes(bytes) : Util.bytesToMegabytes(bytes);
- return unit === 'GB' ? Messages._getKey('formattedGB', [value])
- : Messages._getKey('formattedMB', [value]);
- };
+ var getPrettySize = UIElements.prettySize;
create['defaultlimit'] = function () {
var key = 'defaultlimit';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_defaultlimitHint, .admin_defaultlimitTitle
var _limit = APP.instanceStatus.defaultStorageLimit;
var _limitMB = Util.bytesToMegabytes(_limit);
var limit = getPrettySize(_limit);
@@ -322,7 +319,7 @@ define([
};
create['getlimits'] = function () {
var key = 'getlimits';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_getlimitsHint, .admin_getlimitsTitle
APP.refreshLimits = function () {
sFrameChan.query('Q_ADMIN_RPC', {
cmd: 'GET_LIMITS',
@@ -385,7 +382,7 @@ define([
create['setlimit'] = function () {
var key = 'setlimit';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_setlimitHint, .admin_setlimitTitle
var user = h('input.cp-setlimit-key');
var $key = $(user);
@@ -471,7 +468,7 @@ define([
create['getquota'] = function () {
var key = 'getquota';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_getquotaHint, .admin_getquotaTitle, .admin_getquotaButton
var input = h('input#cp-admin-getquota', {
type: 'text'
@@ -521,7 +518,7 @@ define([
create['active-sessions'] = function () {
var key = 'active-sessions';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_activeSessionsHint, .admin_activeSessionsTitle
var onRefresh = function () {
$div.find('pre').remove();
sFrameChan.query('Q_ADMIN_RPC', {
@@ -539,7 +536,7 @@ define([
};
create['active-pads'] = function () {
var key = 'active-pads';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_activePadsHint, .admin_activePadsTitle
var onRefresh = function () {
$div.find('pre').remove();
sFrameChan.query('Q_ADMIN_RPC', {
@@ -556,7 +553,7 @@ define([
};
create['open-files'] = function () {
var key = 'open-files';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_openFilesHint, .admin_openFilesTitle
var onRefresh = function () {
$div.find('pre').remove();
sFrameChan.query('Q_ADMIN_RPC', {
@@ -573,7 +570,7 @@ define([
};
create['registered'] = function () {
var key = 'registered';
- var $div = makeBlock(key);
+ var $div = makeBlock(key); // Msg.admin_registeredHint, .admin_registeredTitle
var onRefresh = function () {
$div.find('pre').remove();
sFrameChan.query('Q_ADMIN_RPC', {
@@ -590,7 +587,7 @@ define([
};
create['disk-usage'] = function () {
var key = 'disk-usage';
- var $div = makeBlock(key, true);
+ var $div = makeBlock(key, true); // Msg.admin_diskUsageHint, .admin_diskUsageTitle, .admin_diskUsageButton
var called = false;
$div.find('button').click(function () {
$div.find('button').hide();
@@ -628,7 +625,7 @@ define([
var supportKey = ApiConfig.supportMailbox;
create['support-list'] = function () {
if (!supportKey || !APP.privateKey) { return; }
- var $container = makeBlock('support-list');
+ var $container = makeBlock('support-list'); // Msg.admin_supportListHint, .admin_supportListTitle
var $div = $(h('div.cp-support-container')).appendTo($container);
var catContainer = h('div.cp-dropdown-container');
@@ -893,7 +890,7 @@ define([
};
create['support-init'] = function () {
- var $div = makeBlock('support-init');
+ var $div = makeBlock('support-init'); // Msg.admin_supportInitHint, .admin_supportInitTitle
if (!supportKey) {
$div.append(h('p', Messages.admin_supportInitHelp));
return $div;
@@ -945,7 +942,7 @@ define([
};
create['performance-profiling'] = function () {
- var $div = makeBlock('performance-profiling');
+ var $div = makeBlock('performance-profiling'); // Msg.admin_performanceProfilingHint, .admin_performanceProfilingTitle
var onRefresh = function () {
var body = h('tbody');
diff --git a/www/checkup/main.js b/www/checkup/main.js
index 0ad87d223..171699a22 100644
--- a/www/checkup/main.js
+++ b/www/checkup/main.js
@@ -55,7 +55,7 @@ define([
assert(function (cb) {
console.log(trimmedSafe);
checkAvailability(trimmedSafe, cb);
- }, _alert("Sandbox domain is not available")); // XXX Blocked by CSP. try loading it via sframe ?
+ }, _alert("Sandbox domain is not available")); // FIXME Blocked by CSP. try loading it via sframe ?
var row = function (cells) {
return h('tr', cells.map(function (cell) {
diff --git a/www/common/common-ui-elements.js b/www/common/common-ui-elements.js
index 975810a88..8b5101fb7 100644
--- a/www/common/common-ui-elements.js
+++ b/www/common/common-ui-elements.js
@@ -34,10 +34,14 @@ define([
};
UIElements.prettySize = function (bytes) {
- var kB = Util.bytesToKilobytes(bytes);
- if (kB < 1024) { return kB + Messages.KB; } // XXX replace with Msg.formattedKB ?
- var mB = Util.bytesToMegabytes(bytes);
- return mB + Messages.MB; // XXX replace with Msg.formattedMB
+ var unit = Util.magnitudeOfBytes(bytes);
+ if (unit === 'GB') {
+ return Messages._getKey('formattedGB', [ Util.bytesToGigabytes(bytes)]);
+ } else if (unit === 'MB') {
+ return Messages._getKey('formattedMB', [ Util.bytesToMegabytes(bytes)]);
+ } else {
+ return Messages._getKey('formattedKB', [ Util.bytesToKilobytes(bytes)]);
+ }
};
UIElements.updateTags = function (common, hrefs) {
diff --git a/www/common/common-util.js b/www/common/common-util.js
index 1c2bc0222..e98b37009 100644
--- a/www/common/common-util.js
+++ b/www/common/common-util.js
@@ -269,18 +269,11 @@
Util.magnitudeOfBytes = function (bytes) {
if (bytes >= oneGigabyte) { return 'GB'; }
- else if (bytes >= oneMegabyte) { return 'MB'; }
+ // smallest supported format is MB to preserve existing behaviour
+ else /* if (bytes >= oneMegabyte) */ { return 'MB'; }
+ //else { return 'KB'; }
};
- Util.getPrettySize = function (bytes, Messages) { // XXX not used anywhere?
- var unit = Util.magnitudeOfBytes(bytes);
- if (unit === 'GB') {
- return Messages._getKey('formattedGB', [Util.bytesToGigabytes(bytes)]);
- }
- return Messages._getKey('formattedMB', [Util.bytesToMegabytes(bytes)]);
- };
-
-
// given a path, asynchronously return an arraybuffer
var getCacheKey = function (src) {
var _src = src.replace(/(\/)*$/, ''); // Remove trailing slashes
diff --git a/www/common/translations/messages.de.json b/www/common/translations/messages.de.json
index 891443d94..b6fc659e7 100644
--- a/www/common/translations/messages.de.json
+++ b/www/common/translations/messages.de.json
@@ -1233,5 +1233,8 @@
"pad_settings_info": "Standardeinstellungen für dieses Dokument. Sie werden angewendet, wenn neue Benutzer dieses Dokument aufrufen.",
"admin_getquotaHint": "Überprüfe anhand des öffentlichen Schlüssels die Gesamtgröße aller Elemente, die der Quota eines Benutzers oder Teams angerechnet werden.",
"admin_getquotaTitle": "Speicherbelegung von Accounts überprüfen",
- "addOptionalPassword": "Passwort hinzufügen (optional)"
+ "addOptionalPassword": "Passwort hinzufügen (optional)",
+ "oo_lostEdits": "Leider konnten deine letzten ungespeicherten Bearbeitungen nach dem Synchronisieren neuer Inhalte nicht wiederhergestellt werden.",
+ "fm_cantUploadHere": "Hochladen hier nicht möglich",
+ "importError": "Import fehlgeschlagen (falsches Format)"
}
diff --git a/www/common/translations/messages.fi.json b/www/common/translations/messages.fi.json
index 37b57978c..b77b85666 100644
--- a/www/common/translations/messages.fi.json
+++ b/www/common/translations/messages.fi.json
@@ -917,7 +917,7 @@
"support_formContentError": "Virhe: sisältö on tyhjä",
"support_formTitleError": "Virhe: otsikko on tyhjä",
"support_formButton": "Lähetä",
- "support_formHint": "Tällä lomakkeella voit luoda uuden palvelupyynnön. Käytä sitä ottaaksesi ylläpitäjiin yhteyttä ongelmatilanteissa tai kysyäksesi kysymyksiä turvallisella tavalla. Älä luo uutta palvelupyyntöä, jos olet jo luonut palvelupyynnön samasta ongelmasta, vaan käytä vastauspainiketta antaaksesi lisätietoja.",
+ "support_formHint": "Käytä tätä lomaketta ottaaksesi ylläpitäjiin yhteyttä ongelmatilanteissa tai kysyäksesi kysymyksiä turvallisella tavalla.
Joihinkin ongelmiin ja kysymyksiin voi löytyä vastaus CryptPad-käyttäjäoppaasta (englanniksi). Ethän luo uusia tukipyyntöjä, jos sinulla on jo samaan ongelmaan liittyvä avoin tukipyyntö. Kommentoi sen sijaan alkuperäistä tukipyyntöäsi.",
"support_formTitle": "Uusi palvelupyyntö",
"support_cat_new": "Uusi palvelupyyntö",
"support_disabledHint": "Tätä CryptPad-instanssia ei ole konfiguroitu tukilomaketta varten.",
diff --git a/www/common/translations/messages.nb.json b/www/common/translations/messages.nb.json
index 21860c57d..391be52ad 100644
--- a/www/common/translations/messages.nb.json
+++ b/www/common/translations/messages.nb.json
@@ -9,7 +9,10 @@
"file": "Fil",
"todo": "Oppgaver",
"contacts": "Kontakter",
- "sheet": "Regneark (beta)"
+ "sheet": "Regneark",
+ "teams": "Grupper",
+ "media": "Media",
+ "drive": "CryptDrive"
},
"button_newpad": "Nytt tekstdokument",
"button_newcode": "Ny kode-pad",
@@ -34,8 +37,8 @@
"loading": "Laster…",
"error": "Feil",
"saved": "Lagret",
- "deleted": "Pad-en er sletta fra din CryptDrive",
- "deletedFromServer": "Pad-en er sletta fra serveren",
+ "deleted": "Sletta",
+ "deletedFromServer": "Dokumentet er sletta",
"mustLogin": "Du må være innlogga for å få tilgang til denne sida",
"disabledApp": "Vi beklager, denne applikasjon er slått av. Kontakt eieren av denne pad-en om du vil vite mer.",
"realtime_unrecoverableError": "Vi beklager, noe har gått skikkelig galt. Klikk OK for å laste innholdet på nytt.",
@@ -86,7 +89,7 @@
"newButton": "Ny",
"newButtonTitle": "Lag en ny pad",
"uploadButton": "Last opp filer",
- "uploadButtonTitle": "Last opp en ny fil til denne mappa",
+ "uploadButtonTitle": "Last opp en ny fil til CryptoDriven din",
"saveTemplateButton": "Lagre som mal",
"saveTemplatePrompt": "Velg et navn på malen",
"templateSaved": "Malen er lagra!",
@@ -121,7 +124,7 @@
"filePicker_description": "Legg til en fil fra din CryptDrive eller last opp en ny fil",
"filePicker_filter": "Filtrer filer basert på filnavn",
"tags_title": "Tags (kun for ditt bruk)",
- "tags_add": "Oppdater tags for denne sida",
+ "tags_add": "Oppdater tags for valgte pads",
"tags_notShared": "Dine tags deles ikke med andre brukerer",
"tags_duplicate": "Dupliser tag:{0}",
"tags_noentry": "Du kan ikke tagge en sletta pad!",
@@ -257,5 +260,32 @@
"settings_exportDescription": "Vennligst vent mens vi laster ned og dekrypterer dokumentene dine. Lukker du fanen vil du avbryte nedlastingen.",
"settings_exportFailed": "Hvis paden trenger mer enn 1 minutt på nedlastingen så vil den desverre ikke inkluderes i eksporteringen. I stedet vil en linke til paden vises.",
"settings_exportWarning": "NB: denne funksjonen er beta og muligens ustabil. Vi anbefaler at du holder denne fanen i fokus.",
- "settings_exportCancel": "Er du sikker på at du vil avbryte eksporteringen? I så fall må du starte på nytt neste gang."
+ "settings_exportCancel": "Er du sikker på at du vil avbryte eksporteringen? I så fall må du starte på nytt neste gang.",
+ "uploadFolderButton": "Last opp mappe",
+ "chatButton": "Chat",
+ "formattedKB": "{0} KB",
+ "formattedGB": "{0} GB",
+ "formattedMB": "{0} MB",
+ "storageStatus": "Lagringsplass:
{0} brukt, av {1}",
+ "padNotPinnedVariable": "Denne pad-en utløper etter {4] dager med inaktivitet, {0}logg inn{1} eller {2}registrer deg{3} for å bevare regnearket.",
+ "history_restoreTitle": "Gjenopprett den valgte dokumentversjonen",
+ "history_closeTitle": "Lukk historikk",
+ "history_loadMore": "Vis mer historikk",
+ "history_prev": "Forrige versjon",
+ "history_next": "Neste versjon",
+ "historyButton": "Vis dokumenthistorikken",
+ "historyText": "Historikk",
+ "help_button": "Hjelp",
+ "hide_help_button": "Skjul Hjelp",
+ "show_help_button": "Vis Hjelp",
+ "cancelButton": "Avslutt (esc)",
+ "cancel": "Avslutt",
+ "okButton": "Ok (enter)",
+ "ok": "Ok",
+ "notifyLeft": "{0} har forlatt gruppeøkta",
+ "notifyRenamed": "{0} er nå bedre kjent som {1}",
+ "notifyJoined": "{0} har blitt med i gruppeøkta",
+ "fileEmbedTag": "Deretter plasserer du Media-taggen der du vil inkludere den:",
+ "fileEmbedScript": "For å inkludere denne fila, inkluder dette skriptet på nettsida di:",
+ "viewEmbedTag": "For å ta med denne pad-en, inkluder denne ifram på en nettside hvor du vil. Legg til stiler med CSS eller HTML."
}
diff --git a/www/notifications/inner.js b/www/notifications/inner.js
index a861dc803..8594d6bff 100644
--- a/www/notifications/inner.js
+++ b/www/notifications/inner.js
@@ -32,16 +32,16 @@ define([
var sFrameChan;
var categories = {
- 'all': [
+ 'all': [ // Msg.notifications_cat_all
'cp-notifications-all',
],
- 'friends': [
+ 'friends': [ // Msg.notifications_cat_friends
'cp-notifications-friends',
],
- 'pads': [
+ 'pads': [ // Msg.notifications_cat_pads
'cp-notifications-pads',
],
- 'archived': [
+ 'archived': [ // Msg.notifications_cat_archived
'cp-notifications-archived',
],
};
diff --git a/www/settings/inner.js b/www/settings/inner.js
index 80c77e8b0..6ee8d4854 100644
--- a/www/settings/inner.js
+++ b/www/settings/inner.js
@@ -46,7 +46,7 @@ define([
var sframeChan;
var categories = {
- 'account': [
+ 'account': [ // Msg.settings_cat_account
'cp-settings-own-drive',
'cp-settings-info-block',
'cp-settings-displayname',
@@ -55,14 +55,14 @@ define([
'cp-settings-change-password',
'cp-settings-delete'
],
- 'security': [
+ 'security': [ // Msg.settings_cat_security
'cp-settings-logout-everywhere',
'cp-settings-autostore',
'cp-settings-safe-links',
'cp-settings-userfeedback',
'cp-settings-cache',
],
- 'style': [
+ 'style': [ // Msg.settings_cat_style
'cp-settings-colortheme',
'cp-settings-custom-theme',
],
@@ -75,24 +75,24 @@ define([
'cp-settings-trim-history'
//'cp-settings-drive-reset'
],
- 'cursor': [
+ 'cursor': [ // Msg.settings_cat_cursor
'cp-settings-cursor-color',
'cp-settings-cursor-share',
'cp-settings-cursor-show',
],
- 'pad': [
+ 'pad': [ // Msg.settings_cat_pad
'cp-settings-pad-width',
'cp-settings-pad-spellcheck',
'cp-settings-pad-notif',
],
- 'code': [
+ 'code': [ // Msg.settings_cat_code
'cp-settings-code-indent-unit',
'cp-settings-code-indent-type',
'cp-settings-code-brackets',
'cp-settings-code-font-size',
'cp-settings-code-spellcheck',
],
- 'kanban': [
+ 'kanban': [ // Msg.settings_cat_kanban
'cp-settings-kanban-tags',
],
'subscription': {
@@ -364,7 +364,7 @@ define([
return $div;
};
- makeBlock('cache', function (cb) {
+ makeBlock('cache', function (cb) { // Msg.settings_cacheHint, .settings_cacheTitle
var store = window.cryptpadStore;
var $cbox = $(UI.createCheckbox('cp-settings-cache',
@@ -412,10 +412,15 @@ define([
]);
}, true);
- makeBlock('colortheme', function (cb) {
+ makeBlock('colortheme', function (cb) { // Msg.settings_colorthemeHint .settings_colorthemeTitle
var theme = window.cryptpadStore.store['colortheme'] || 'default';
var os = window.cryptpadStore.store['colortheme_default'] || 'light';
- var values = ['default', 'light', 'dark'/*, 'custom'*/];
+ var values = [
+ 'default', // Msg.settings_colortheme_default
+ 'light', // Msg.settings_colortheme_light
+ 'dark', // Msg.settings_colortheme_dark
+ /* 'custom'*/ // Msg.settings_colortheme_custom
+ ];
var defaultTheme = Messages['settings_colortheme_'+os];
var opts = h('div.cp-settings-radio-container', [
@@ -626,7 +631,7 @@ define([
return $div;
};
- makeBlock('own-drive', function(cb, $div) {
+ makeBlock('own-drive', function(cb, $div) { // Msg.settings_ownDriveHint, .settings_ownDriveTitle
if (privateData.isDriveOwned || !common.isLoggedIn()) {
return void cb(false);
}
@@ -681,7 +686,7 @@ define([
cb(form);
}, true);
- makeBlock('mediatag-size', function(cb) {
+ makeBlock('mediatag-size', function(cb) { // Msg.settings_mediatagSizeHint, .settings_mediatagSizeTitle
var $inputBlock = $('