summaryrefslogtreecommitdiffstats
path: root/src/assets/javascripts
diff options
context:
space:
mode:
Diffstat (limited to 'src/assets/javascripts')
-rw-r--r--src/assets/javascripts/localise.js32
1 files changed, 24 insertions, 8 deletions
diff --git a/src/assets/javascripts/localise.js b/src/assets/javascripts/localise.js
index cbe5c19..78e4c90 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();