From 0d943d128431f166045de53bd64575dac142d320 Mon Sep 17 00:00:00 2001 From: Erik Michelson Date: Mon, 26 Apr 2021 00:18:08 +0200 Subject: Extract list of supported languages in separate file Signed-off-by: Erik Michelson --- public/js/locale.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'public/js') diff --git a/public/js/locale.js b/public/js/locale.js index 2470bd53..ccc1d0e4 100644 --- a/public/js/locale.js +++ b/public/js/locale.js @@ -1,8 +1,6 @@ /* eslint-env browser, jquery */ /* global Cookies */ - -const supported = ['en', 'zh-CN', 'zh-TW', 'fr', 'de', 'ja', 'es', 'ca', 'el', 'pt', 'it', 'tr', 'ru', 'nl', 'hr', 'pl', - 'uk', 'hi', 'sv', 'eo', 'da', 'ko', 'id', 'sr', 'vi', 'ar', 'cs', 'sk', 'ml', 'bg', 'fa', 'gl', 'he', 'hu', 'oc', 'pt-br'] +const supportedLanguages = require('../../locales/_supported.json') function detectLang () { if (Cookies.get('locale')) { @@ -14,9 +12,10 @@ function detectLang () { } const userLang = navigator.language || navigator.userLanguage const userLangCode = userLang.split('-')[0] - if (supported.includes(userLangCode)) { + const supportedLanguagesList = Object.keys(supportedLanguages) + if (supportedLanguagesList.includes(userLangCode)) { return userLangCode - } else if (supported.includes(userLang)) { + } else if (supportedLanguagesList.includes(userLang)) { return userLang } return 'en' @@ -24,6 +23,9 @@ function detectLang () { const lang = detectLang() const localeSelector = $('.ui-locale') +Object.entries(supportedLanguages).forEach(function ([isoCode, nativeName]) { + localeSelector.append(``) +}) // the following condition is needed as the selector is only available in the intro/history page if (localeSelector.length > 0) { -- cgit v1.2.3