Save lang at proper time + Update Vuetify lang on the fly

This commit is contained in:
Florian Dupret 2021-04-21 09:57:53 +02:00
commit bde0f8caf7
3 changed files with 11 additions and 3 deletions

View file

@ -211,7 +211,6 @@ export default {
methods: { methods: {
writeLang(val) { writeLang(val) {
this.$store.commit("setLang", val);
this.settings.language = val; this.settings.language = val;
}, },
deleteCategoryfromDatabase(category) { deleteCategoryfromDatabase(category) {
@ -225,7 +224,9 @@ export default {
}, },
async saveSettings() { async saveSettings() {
await api.siteSettings.update(this.settings); await api.siteSettings.update(this.settings);
this.$store.commit("setLang", this.settings.language); this.$store.dispatch("setLang", {
currentVueComponent: this,
language: this.settings.language });
this.getOptions(); this.getOptions();
}, },
}, },

View file

@ -72,7 +72,9 @@ export default {
if (this.siteSettings) { if (this.siteSettings) {
this.$emit(SELECT_EVENT, selectedLanguage); this.$emit(SELECT_EVENT, selectedLanguage);
} else { } else {
this.$store.commit("setLang", selectedLanguage); this.$store.dispatch("setLang", {
currentVueComponent: this,
language: selectedLanguage });
} }
}, },
}, },

View file

@ -54,6 +54,11 @@ const actions = {
VueI18n.locale = getters.getActiveLang; VueI18n.locale = getters.getActiveLang;
currentVueComponent.$vuetify.lang.current = getters.getActiveLang; currentVueComponent.$vuetify.lang.current = getters.getActiveLang;
}, },
setLang({ commit }, { language, currentVueComponent }) {
VueI18n.locale = language;
currentVueComponent.$vuetify.lang.current = language;
commit('setLang', language);
},
}; };
const getters = { const getters = {