From ad806c6808c7feaa6585d22e19700a04fead87c8 Mon Sep 17 00:00:00 2001 From: Pixelcode <52963327+realpixelcode@users.noreply.github.com> Date: Sat, 2 Apr 2022 15:23:43 +0000 Subject: Add i18n * add i18n for translation * German translation * Arabic translation * RTL support --- src/assets/javascripts/helpers/common.js | 16 +++++++++++++++- src/assets/javascripts/localise.js | 4 ++++ 2 files changed, 19 insertions(+), 1 deletion(-) (limited to 'src/assets') diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js index f3982cd6..545fc9c4 100644 --- a/src/assets/javascripts/helpers/common.js +++ b/src/assets/javascripts/helpers/common.js @@ -7,6 +7,7 @@ import redditHelper from "./reddit.js"; import searchHelper from "./search.js"; import translateHelper from "./translate/translate.js"; import wikipediaHelper from "./wikipedia.js"; +import localise from '../localise.js' function getRandomInstance(instances) { return instances[~~(instances.length * Math.random())]; @@ -99,10 +100,12 @@ function processDefaultCustomInstances( nameCheckListElement.innerHTML = [ - `
Toggle All
`, + `
Toggle All
`, ...nameHelper.getRedirects()[name][protocol].map((x) => `
${x}
`), ].join('\n
\n'); + localise.localisePage(); + calcNameCheckBoxes(); document.getElementById(`${name}-${protocol}-toogle-all`).addEventListener("change", event => { if (event.target.checked) @@ -168,10 +171,21 @@ function processDefaultCustomInstances( }) } +function browserLang() { + var userLang = navigator.language || navigator.userLanguage; + return userLang; +} + +function isRtl() { + return ["ar", "iw", "ku", "fa", "ur"].includes(browserLang()) +} + export default { getRandomInstance, updateInstances, protocolHost, isFirefox, processDefaultCustomInstances, + browserLang, + isRtl, }; diff --git a/src/assets/javascripts/localise.js b/src/assets/javascripts/localise.js index 78e4c907..7c24d6c7 100644 --- a/src/assets/javascripts/localise.js +++ b/src/assets/javascripts/localise.js @@ -33,3 +33,7 @@ function localisePage() { } localisePage(); + +export default { + localisePage +} \ No newline at end of file -- cgit 1.4.1