diff options
author | SimonBrazell <simon@brazell.com.au> | 2021-01-12 20:29:26 +1100 |
---|---|---|
committer | SimonBrazell <simon@brazell.com.au> | 2021-01-12 20:29:26 +1100 |
commit | bd783485a8063f470ae2aeb61de7d95c8091e1aa (patch) | |
tree | 2f442682aa73a7288764e66186fa2022b4ac0a42 /src | |
parent | Merge pull request #157 from TotalCaesar659/patch-1 (diff) | |
download | libredirect-bd783485a8063f470ae2aeb61de7d95c8091e1aa.zip |
Translate "Random instance (none selected)" (#158)
Diffstat (limited to 'src')
-rw-r--r-- | src/_locales/en/messages.json | 4 | ||||
-rw-r--r-- | src/assets/javascripts/localise.js | 32 | ||||
-rw-r--r-- | src/manifest.json | 2 | ||||
-rw-r--r-- | src/pages/options/options.html | 4 |
4 files changed, 33 insertions, 9 deletions
diff --git a/src/_locales/en/messages.json b/src/_locales/en/messages.json index da518d36..1dce07bd 100644 --- a/src/_locales/en/messages.json +++ b/src/_locales/en/messages.json @@ -138,5 +138,9 @@ "bibliogramRandomPool": { "message": "Bibliogram random instance pool (comma-separated)", "description": "Label for 'Bibliogram random instance pool (comma-separated)' option (options)." + }, + "randomInstancePlaceholder": { + "message": "Random instance (none selected)", + "description": "Input placeholder for provider instance settings that select a random instance from a pool when none is selected" } } diff --git a/src/assets/javascripts/localise.js b/src/assets/javascripts/localise.js index cbe5c191..78e4c907 100644 --- a/src/assets/javascripts/localise.js +++ b/src/assets/javascripts/localise.js @@ -1,19 +1,35 @@ window.browser = window.browser || window.chrome; +function getMessage(tag) { + return tag.replace(/__MSG_(\w+)__/g, function (_match, v1) { + return v1 ? browser.i18n.getMessage(v1) : null; + }); +} + function localisePage() { - var data = document.querySelectorAll("[data-localise]"); + let elements = document.querySelectorAll("[data-localise]"); - for (var i in data) - if (data.hasOwnProperty(i)) { - var obj = data[i]; - var tag = obj.getAttribute("data-localise").toString(); + for (let i in elements) + if (elements.hasOwnProperty(i)) { + let obj = elements[i]; + let tag = obj.getAttribute("data-localise").toString(); - var msg = tag.replace(/__MSG_(\w+)__/g, function (_match, v1) { - return v1 ? browser.i18n.getMessage(v1) : null; - }); + let msg = getMessage(tag); if (msg && msg !== tag) obj.textContent = msg; } + + let placeholders = document.querySelectorAll("[data-localise-placeholder]"); + + for (let i in placeholders) + if (placeholders.hasOwnProperty(i)) { + let obj = placeholders[i]; + let tag = obj.getAttribute("data-localise-placeholder").toString(); + + let msg = getMessage(tag); + + if (msg && msg !== tag) obj.placeholder = msg; + } } localisePage(); diff --git a/src/manifest.json b/src/manifest.json index 5f9ff8c6..2e7d5a83 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -1,7 +1,7 @@ { "name": "__MSG_extensionName__", "description": "__MSG_extensionDescription__", - "version": "1.1.45", + "version": "1.1.46", "manifest_version": 2, "background": { "page": "pages/background/background.html", diff --git a/src/pages/options/options.html b/src/pages/options/options.html index dbb1406e..6473f2ff 100644 --- a/src/pages/options/options.html +++ b/src/pages/options/options.html @@ -171,6 +171,7 @@ id="nitter-instance" type="url" name="nitter-instance" + data-localise-placeholder="__MSG_randomInstancePlaceholder__" placeholder="Random instance (none selected)" /> </div> @@ -181,6 +182,7 @@ <input id="invidious-instance" type="url" + data-localise-placeholder="__MSG_randomInstancePlaceholder__" placeholder="Random instance (none selected)" /> </div> @@ -191,6 +193,7 @@ <input id="bibliogram-instance" type="url" + data-localise-placeholder="__MSG_randomInstancePlaceholder__" placeholder="Random instance (none selected)" /> </div> @@ -221,6 +224,7 @@ <input id="search-engine-instance" type="url" + data-localise-placeholder="__MSG_randomInstancePlaceholder__" placeholder="Random instance (none selected)" /> </div> |