mirror of
https://github.com/webrecorder/pywb.git
synced 2025-03-24 06:59:52 +01:00
vue ui i18n: added current locale as private member + public getter
This commit is contained in:
parent
ccfcb2bf52
commit
7d8fdd0989
@ -82,7 +82,7 @@ html, body
|
|||||||
{% if ui.vue_timeline_banner %}
|
{% if ui.vue_timeline_banner %}
|
||||||
<div id="app" style="width: 100%; height: 200px"></div>
|
<div id="app" style="width: 100%; height: 200px"></div>
|
||||||
<script>
|
<script>
|
||||||
VueUI.main("{{ static_prefix }}", "{{ url }}", "{{ wb_prefix }}", "{{ timestamp }}", "{{ ui.logo }}", i18nStrings);
|
VueUI.main("{{ static_prefix }}", "{{ url }}", "{{ wb_prefix }}", "{{ timestamp }}", "{{ ui.logo }}", "{{ env.pywb_lang | default('en') }}", i18nStrings);
|
||||||
</script>
|
</script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -128,7 +128,7 @@
|
|||||||
renderCal.init();
|
renderCal.init();
|
||||||
|
|
||||||
{% else %}
|
{% 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 %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
export class PywbI18N {
|
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) {
|
if (PywbI18N.instance) {
|
||||||
throw new Error('cannot instantiate PywbI18N twice');
|
throw new Error('cannot instantiate PywbI18N twice');
|
||||||
}
|
}
|
||||||
|
PywbI18N.#locale = locale;
|
||||||
PywbI18N.instance = new PywbI18N(config);
|
PywbI18N.instance = new PywbI18N(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,8 +7,8 @@ import Vue from "vue/dist/vue.esm.browser";
|
|||||||
|
|
||||||
|
|
||||||
// ===========================================================================
|
// ===========================================================================
|
||||||
export function main(staticPrefix, url, prefix, timestamp, logoUrl, i18nStrings) {
|
export function main(staticPrefix, url, prefix, timestamp, logoUrl, locale, i18nStrings) {
|
||||||
PywbI18N.init(i18nStrings);
|
PywbI18N.init(locale, i18nStrings);
|
||||||
const loadingSpinner = new LoadingSpinner({text: PywbI18N.instance?.getText('Loading...')}); // bootstrap loading-spinner EARLY ON
|
const loadingSpinner = new LoadingSpinner({text: PywbI18N.instance?.getText('Loading...')}); // bootstrap loading-spinner EARLY ON
|
||||||
new CDXLoader(staticPrefix, url, prefix, timestamp, logoUrl, loadingSpinner);
|
new CDXLoader(staticPrefix, url, prefix, timestamp, logoUrl, loadingSpinner);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user