diff --git a/pywb/templates/frame_insert.html b/pywb/templates/frame_insert.html index 8d05b5d5..e9e0e53e 100644 --- a/pywb/templates/frame_insert.html +++ b/pywb/templates/frame_insert.html @@ -82,7 +82,7 @@ html, body {% if ui.vue_timeline_banner %}
{% endif %} diff --git a/pywb/templates/query.html b/pywb/templates/query.html index fccb4db9..fdcbe286 100644 --- a/pywb/templates/query.html +++ b/pywb/templates/query.html @@ -128,7 +128,7 @@ renderCal.init(); {% else %} - VueUI.main("{{ static_prefix }}", "{{ url }}", "{{ prefix }}", undefined, "{{ ui.logo }}", i18nStrings); + VueUI.main("{{ static_prefix }}", "{{ url }}", "{{ prefix }}", undefined, "{{ ui.logo }}", "{{ env.pywb_lang | default('en') }}", i18nStrings); {% endif %} diff --git a/pywb/vueui/src/i18n.js b/pywb/vueui/src/i18n.js index 3c584cfe..65abc26e 100644 --- a/pywb/vueui/src/i18n.js +++ b/pywb/vueui/src/i18n.js @@ -1,8 +1,13 @@ export class PywbI18N { - static init = config => { + static #locale = ''; // private (can only be set here) + static getLocale() { // get via public static method + return PywbI18N.#locale; + } + static init = (locale, config) => { if (PywbI18N.instance) { throw new Error('cannot instantiate PywbI18N twice'); } + PywbI18N.#locale = locale; PywbI18N.instance = new PywbI18N(config); } diff --git a/pywb/vueui/src/index.js b/pywb/vueui/src/index.js index 257c4d19..29ee1e6e 100644 --- a/pywb/vueui/src/index.js +++ b/pywb/vueui/src/index.js @@ -7,8 +7,8 @@ import Vue from "vue/dist/vue.esm.browser"; // =========================================================================== -export function main(staticPrefix, url, prefix, timestamp, logoUrl, i18nStrings) { - PywbI18N.init(i18nStrings); +export function main(staticPrefix, url, prefix, timestamp, logoUrl, locale, i18nStrings) { + PywbI18N.init(locale, i18nStrings); const loadingSpinner = new LoadingSpinner({text: PywbI18N.instance?.getText('Loading...')}); // bootstrap loading-spinner EARLY ON new CDXLoader(staticPrefix, url, prefix, timestamp, logoUrl, loadingSpinner); }