diff --git a/customize.dist/messages.js b/customize.dist/messages.js
index bffb95654..e3db0f1de 100755
--- a/customize.dist/messages.js
+++ b/customize.dist/messages.js
@@ -25,6 +25,22 @@ var getLanguage = messages._getLanguage = function () {
};
var language = getLanguage();
+// Translations files were migrated from requirejs modules to json.
+// To avoid asking every administrator to update their customized translation files,
+// we use a requirejs map to redirect the old path to the new one and to use the
+// requirejs json plugin
+var reqPaths = {
+ "/common/translations/messages.js":"json!/common/translations/messages.json"
+};
+Object.keys(map).forEach(function (k) {
+ reqPaths["/common/translations/messages."+k+".js"] = "json!/common/translations/messages."+k+".json";
+});
+require.config({
+ map: {
+ "*": reqPaths
+ }
+});
+
var req = ['/common/common-util.js', '/customize/translations/messages.js'];
if (language && map[language]) { req.push('/customize/translations/messages.' + language + '.js'); }
diff --git a/www/assert/translations/main.js b/www/assert/translations/main.js
index db005ce0a..b1033f700 100644
--- a/www/assert/translations/main.js
+++ b/www/assert/translations/main.js
@@ -2,7 +2,7 @@ define([
'jquery',
'/common/common-util.js',
'/customize/messages.js',
- '/customize/translations/messages.js',
+ 'json!/common/translations/messages.json',
], function ($, Util, Messages, English) {
var $body = $('body');
diff --git a/www/common/requireconfig.js b/www/common/requireconfig.js
index 85258ea8b..303f8bef0 100644
--- a/www/common/requireconfig.js
+++ b/www/common/requireconfig.js
@@ -5,6 +5,9 @@ define([
// fix up locations so that relative urls work.
baseUrl: window.location.pathname,
paths: {
+ // json plugin
+ text: '/bower_components/requirejs-plugins/lib/text',
+ json: '/bower_components/requirejs-plugins/src/json',
// jquery declares itself as literally "jquery" so it cannot be pulled by path :(
"jquery": "/bower_components/jquery/dist/jquery.min",
// json.sortify same
diff --git a/www/common/translations/messages.fr.json b/www/common/translations/messages.fr.json
index 1cdd73f8d..462a6afd4 100644
--- a/www/common/translations/messages.fr.json
+++ b/www/common/translations/messages.fr.json
@@ -20,7 +20,6 @@
"button_newslide": "Nouvelle présentation",
"button_newwhiteboard": "Nouveau tableau blanc",
"button_newkanban": "Nouveau kanban",
- "updated_0_common_connectionLost": "Connexion au serveur perdue
Vous êtes désormais en mode lecture seule jusqu'au retour de la connexion.",
"common_connectionLost": "Connexion au serveur perdue
Vous êtes désormais en mode lecture seule jusqu'au retour de la connexion.",
"websocketError": "Impossible de se connecter au serveur WebSocket...",
"typeError": "Ce pad n'est pas compatible avec l'application sélectionnée",
@@ -81,7 +80,6 @@
"orangeLight": "Votre connexion est lente, ce qui réduit la qualité de l'éditeur",
"redLight": "Vous êtes déconnecté de la session",
"pinLimitReached": "Vous avez atteint votre limite de stockage",
- "updated_0_pinLimitReachedAlert": "Vous avez atteint votre limite de stockage. Les nouveaux pads ne seront pas enregistrés dans votre CryptDrive.
Vous pouvez soit supprimer des pads de votre CryptDrive, soit vous abonner à une offre premium pour augmenter la limite maximale.",
"pinLimitReachedAlert": "Vous avez atteint votre limite de stockage. Les nouveaux pads ne seront pas enregistrés dans votre CryptDrive.
Vous pouvez soit supprimer des pads de votre CryptDrive, soit vous abonner à une offre premium pour augmenter la limite maximale.",
"pinLimitReachedAlertNoAccounts": "Vous avez atteint votre limite de stockage",
"pinLimitNotPinned": "Vous avez atteint votre limite de stockage.
Ce pad n'est pas enregistré dans votre CryptDrive.",
@@ -352,7 +350,6 @@
"fm_info_unsorted": "Contient tous les pads que vous avez ouvert et qui ne sont pas triés dans \"Documents\" ou déplacés vers la \"Corbeille\".",
"fm_info_template": "Contient tous les fichiers que vous avez sauvés en tant que modèle afin de les réutiliser lors de la création d'un nouveau pad.",
"fm_info_recent": "Liste les derniers pads que vous avez modifiés ou ouverts.",
- "updated_0_fm_info_trash": "Vider la corbeille permet de libérer de l'espace dans votre CryptDrive",
"fm_info_trash": "Vider la corbeille permet de libérer de l'espace dans votre CryptDrive",
"fm_info_allFiles": "Contient tous les fichiers de \"Documents\", \"Fichiers non triés\" et \"Corbeille\". Vous ne pouvez pas supprimer ou déplacer des fichiers depuis cet endroit.",
"fm_info_anonymous": "Vous n'êtes pas connecté, ces pads seront donc supprimés après 3 mois d'inactivité (découvrez pourquoi). Ils sont stockés dans votre navigateur donc nettoyer votre historique peut les faire disparaître.
Inscrivez-vous ou connectez-vous pour les maintenir en vie.",
@@ -1026,4 +1023,4 @@
"crowdfunding_popup_yes": "Voir la page",
"crowdfunding_popup_no": "Pas maintenant",
"crowdfunding_popup_never": "Ne plus demander"
-}
\ No newline at end of file
+}
diff --git a/www/common/translations/messages.json b/www/common/translations/messages.json
index 524c00109..b4ec548d2 100644
--- a/www/common/translations/messages.json
+++ b/www/common/translations/messages.json
@@ -20,7 +20,6 @@
"button_newslide": "New Presentation",
"button_newwhiteboard": "New Whiteboard",
"button_newkanban": "New Kanban",
- "updated_0_common_connectionLost": "Server Connection Lost
You're now in read-only mode until the connection is back.",
"common_connectionLost": "Server Connection Lost
You're now in read-only mode until the connection is back.",
"websocketError": "Unable to connect to the websocket server...",
"typeError": "This pad is not compatible with the selected application",
@@ -81,7 +80,6 @@
"orangeLight": "Your slow connection may impact your experience",
"redLight": "You are disconnected from the session",
"pinLimitReached": "You've reached your storage limit",
- "updated_0_pinLimitReachedAlert": "You've reached your storage limit. New pads won't be stored in your CryptDrive.
You can either remove pads from your CryptDrive or subscribe to a premium offer to increase your limit.",
"pinLimitReachedAlert": "You've reached your storage limit. New pads won't be stored in your CryptDrive.
You can either remove pads from your CryptDrive or subscribe to a premium offer to increase your limit.",
"pinLimitReachedAlertNoAccounts": "You've reached your storage limit",
"pinLimitNotPinned": "You've reached your storage limit.
This pad is not stored in your CryptDrive.",
@@ -352,7 +350,6 @@
"fm_info_unsorted": "Contains all the files you've visited that are not yet sorted in \"Documents\" or moved to the \"Trash\".",
"fm_info_template": "Contains all the pads stored as templates and that you can re-use when you create a new pad.",
"fm_info_recent": "List the recently modified or opened pads.",
- "updated_0_fm_info_trash": "Empty your trash to free space in your CryptDrive.",
"fm_info_trash": "Empty your trash to free space in your CryptDrive.",
"fm_info_allFiles": "Contains all the files from \"Documents\", \"Unsorted\" and \"Trash\". You can't move or remove files from here.",
"fm_info_anonymous": "You are not logged in so your pads will expire after 3 months (find out more). They are stored in your browser so clearing history may make them disappear.
Sign up or Log in to keep them alive.
",
@@ -1026,4 +1023,4 @@
"crowdfunding_popup_yes": "Go to OpenCollective",
"crowdfunding_popup_no": "Not now",
"crowdfunding_popup_never": "Don't ask me again"
-}
\ No newline at end of file
+}