make TRANSLATIONS_DIR a constant

This commit is contained in:
Girish Ramakrishnan
2024-08-23 10:08:55 +02:00
parent d310c5746e
commit b6becae396
2 changed files with 4 additions and 5 deletions
+1
View File
@@ -18,6 +18,7 @@ exports = module.exports = {
INFRA_VERSION_FILE: path.join(baseDir(), 'platformdata/INFRA_VERSION'),
CRON_SEED_FILE: path.join(baseDir(), 'platformdata/CRON_SEED'),
DASHBOARD_DIR: constants.TEST ? path.join(__dirname, '../dashboard/src') : path.join(baseDir(), 'box/dashboard/dist'),
TRANSLATIONS_DIR: constants.TEST ? path.join(__dirname, '../dashboard/src/translation') : path.join(baseDir(), 'box/dashboard/dist/translation'),
PROVIDER_FILE: '/etc/cloudron/PROVIDER',
SETUP_TOKEN_FILE: '/etc/cloudron/SETUP_TOKEN',
+3 -5
View File
@@ -14,8 +14,6 @@ const assert = require('assert'),
paths = require('./paths.js'),
safe = require('safetydance');
const TRANSLATION_FOLDER = path.join(paths.DASHBOARD_DIR, 'translation');
// to be used together with getTranslations() => { translations, fallback }
function translate(input, assets) {
assert.strictEqual(typeof input, 'string');
@@ -51,19 +49,19 @@ function translate(input, assets) {
}
async function getTranslations() {
const fallback = safe.JSON.parse(fs.readFileSync(path.join(TRANSLATION_FOLDER, 'en.json'), 'utf8'));
const fallback = safe.JSON.parse(fs.readFileSync(path.join(paths.TRANSLATIONS_DIR, 'en.json'), 'utf8'));
if (!fallback) debug(`getTranslations: Fallback language en not found. ${safe.error.message}`);
const lang = await cloudron.getLanguage();
const translations = safe.JSON.parse(fs.readFileSync(path.join(TRANSLATION_FOLDER, lang + '.json'), 'utf8'));
const translations = safe.JSON.parse(fs.readFileSync(path.join(paths.TRANSLATIONS_DIR, lang + '.json'), 'utf8'));
if (!translations) debug(`getTranslations: Requested language ${lang} not found. ${safe.error.message}`);
return { translations: translations || {}, fallback: fallback || {} };
}
async function listLanguages() {
const [error, result] = await safe(fs.promises.readdir(TRANSLATION_FOLDER));
const [error, result] = await safe(fs.promises.readdir(paths.TRANSLATIONS_DIR));
if (error) {
debug('listLanguages: Failed to list translations. %o', error);
return [ 'en' ]; // we always return english to avoid dashboard breakage