33 lines
919 B
JavaScript
33 lines
919 B
JavaScript
|
var language = function() {
|
||
|
|
||
|
const jsonNode = document.querySelector("script[name='translations']");
|
||
|
const jsonText = jsonNode.textContent;
|
||
|
const tags = JSON.parse(jsonText);
|
||
|
|
||
|
return {
|
||
|
gettext: function(key, args) {
|
||
|
if (key === null) {
|
||
|
return "";
|
||
|
}
|
||
|
if (tags[key] === undefined) {
|
||
|
debug.error("LANGUAGE","Unknown key",key);
|
||
|
return "UNKNOWN TRANSLATION KEY";
|
||
|
} else {
|
||
|
var s = tags[key];
|
||
|
if (typeof(s) == 'string') {
|
||
|
while (s.match(/\%s/)) {
|
||
|
s = s.replace(/\%s/, args.shift());
|
||
|
}
|
||
|
return escapeHtml(s);
|
||
|
} else {
|
||
|
return s;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
|
||
|
getUCtext: function(key, args) {
|
||
|
return language.gettext(key, args).toUpperCase();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}();
|