summaryrefslogtreecommitdiff
path: root/site/i18n.js
diff options
context:
space:
mode:
Diffstat (limited to 'site/i18n.js')
-rw-r--r--site/i18n.js19
1 files changed, 18 insertions, 1 deletions
diff --git a/site/i18n.js b/site/i18n.js
index 38ffe7b..5f882c5 100644
--- a/site/i18n.js
+++ b/site/i18n.js
@@ -54,7 +54,6 @@ let locale = "en";
// is found, it returns the key as a fallback value
// (therefore, keys should themselves be understandable texts)
export function _(key) {
- console.log("getting translation for ", locale, key);
return !(locale in langs) ? key
: !(key in langs[locale]) ? key
: langs[locale][key]
@@ -64,4 +63,22 @@ export function setLang (loc) {
locale = loc;
}
+/// attempt to set the site's language to the browser's preference.
+/// in case it's not supported it tries any of the languages in
+/// navigator.languages, and then falls back to english.
+export function tryBrowserDefaultLang () {
+ let guess = navigator.language;
+ if (guess in langs) {
+ setLang(lang);
+ } else {
+ for (var lang of navigator.languages) {
+ if (lang in langs) {
+ setLang (lang);
+ return;
+ }
+ }
+ setLang("en");
+ }
+}
+
export default _;