Fixed backward compatibility for localization

This commit is contained in:
squidfunk
2017-10-18 21:38:33 +02:00
committed by Martin Donath
parent c1e541b32b
commit 9c3134750e
21 changed files with 109 additions and 92 deletions

View File

@@ -37,8 +37,8 @@ import Material from "./components/Material"
*
* @return {string} Meta content value
*/
const i18n = (key, _) => { // eslint-disable-line no-unused-vars
const meta = document.querySelector(`[name=i18n-${key}]`)
const translate = (key, _) => { // eslint-disable-line no-unused-vars
const meta = document.getElementsByName(`lang:${key}`)[0]
if (!(meta instanceof HTMLMetaElement))
throw new ReferenceError
return meta.content
@@ -92,7 +92,7 @@ function initialize(config) { // eslint-disable-line func-style
/* Create button with message container */
const button = (
<button class="md-clipboard" title={i18n("clipboard-copy")}
<button class="md-clipboard" title={translate("clipboard.copy")}
data-clipboard-target={`#${id} pre, #${id} code`}>
<span class="md-clipboard__message"></span>
</button>
@@ -120,7 +120,7 @@ function initialize(config) { // eslint-disable-line func-style
/* Set message indicating success and show it */
message.classList.add("md-clipboard__message--active")
message.innerHTML = i18n("clipboard-copied")
message.innerHTML = translate("clipboard.copied")
/* Hide message after two seconds */
message.dataset.mdTimer = setTimeout(() => {

View File

@@ -55,8 +55,8 @@ const truncate = (string, n) => {
*
* @return {string} Meta content value
*/
const i18n = (key, _) => { // eslint-disable-line no-unused-vars
const meta = document.querySelector(`[name=i18n-${key}]`)
const translate = (key, _) => { // eslint-disable-line no-unused-vars
const meta = document.getElementsByName(`lang:${key}`)[0]
if (!(meta instanceof HTMLMetaElement))
throw new ReferenceError
return meta.content
@@ -106,18 +106,18 @@ export default class Result {
/* Load messages for metadata display */
this.message_ = {
placeholder: this.meta_.textContent,
none: i18n("search-result-none"),
one: i18n("search-result-one"),
other: i18n("search-result-other")
none: translate("search.result.none"),
one: translate("search.result.one"),
other: translate("search.result.other")
}
/* Override tokenizer separator, if given */
const tokenizer = i18n("search-tokenizer")
const tokenizer = translate("search.tokenizer")
if (tokenizer.length)
lunr.tokenizer.separator = tokenizer
/* Load search languages */
this.lang_ = i18n("search-languages").split(",")
this.lang_ = translate("search.languages").split(",")
.filter(Boolean)
.map(lang => lang.trim())
}