fix langauge assignment 1st pass

This commit is contained in:
hay-kot 2021-04-21 11:32:53 -08:00
commit 1361ea41de
7 changed files with 48 additions and 56 deletions

View file

@ -0,0 +1,11 @@
git checkout dev
git merge --strategy=ours master # keep the content of this branch, but record a merge
git checkout master
git merge dev # fast-forward master up to the merge
## TODOs
# Create New Branch v0.x.x
# Push Branch Version to Github
# Create Pull Request

View file

@ -1,5 +1,6 @@
import { baseURL } from "./api-utils"; import { baseURL } from "./api-utils";
import { apiReq } from "./api-utils"; import { apiReq } from "./api-utils";
import { store } from "@/store";
const settingsBase = baseURL + "site-settings"; const settingsBase = baseURL + "site-settings";
@ -19,6 +20,7 @@ export const siteSettingsAPI = {
async update(body) { async update(body) {
let response = await apiReq.put(settingsURLs.updateSiteSettings, body); let response = await apiReq.put(settingsURLs.updateSiteSettings, body);
store.dispatch("requestSiteSettings");
return response.data; return response.data;
}, },

View file

@ -117,7 +117,7 @@
</v-row> </v-row>
</v-card-text> </v-card-text>
<v-card-text> <v-card-text>
<h2 class="mt-1 mb-4">{{$t('settings.locale-settings')}}</h2> <h2 class="mt-1 mb-4">{{ $t("settings.locale-settings") }}</h2>
<v-row> <v-row>
<v-col cols="1"> <v-col cols="1">
<LanguageMenu @select-lang="writeLang" :site-settings="true" /> <LanguageMenu @select-lang="writeLang" :site-settings="true" />
@ -178,33 +178,33 @@ export default {
allDays() { allDays() {
return [ return [
{ {
name: this.$t('general.sunday'), name: this.$t("general.sunday"),
value: 0, value: 0,
}, },
{ {
name: this.$t('general.monday'), name: this.$t("general.monday"),
value: 1, value: 1,
}, },
{ {
name: this.$t('general.tuesday'), name: this.$t("general.tuesday"),
value: 2, value: 2,
}, },
{ {
name: this.$t('general.wednesday'), name: this.$t("general.wednesday"),
value: 3, value: 3,
}, },
{ {
name: this.$t('general.thursday'), name: this.$t("general.thursday"),
value: 4, value: 4,
}, },
{ {
name: this.$t('general.friday'), name: this.$t("general.friday"),
value: 5, value: 5,
}, },
{ {
name: this.$t('general.saturday'), name: this.$t("general.saturday"),
value: 6, value: 6,
} },
]; ];
}, },
}, },
@ -223,10 +223,8 @@ export default {
this.settings.categories.splice(index, 1); this.settings.categories.splice(index, 1);
}, },
async saveSettings() { async saveSettings() {
await api.siteSettings.update(this.settings); const newSettings = await api.siteSettings.update(this.settings);
this.$store.dispatch("setLang", { console.log("New Settings", newSettings);
currentVueComponent: this,
language: this.settings.language });
this.getOptions(); this.getOptions();
}, },
}, },

View file

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

View file

@ -1,5 +1,3 @@
import VueI18n from "../../i18n";
const state = { const state = {
lang: "en-US", lang: "en-US",
allLangs: [ allLangs: [
@ -42,33 +40,11 @@ const state = {
], ],
}; };
const mutations = {
setLang(state, payload) {
VueI18n.locale = payload;
state.lang = payload;
},
};
const actions = {
initLang({ getters }, { currentVueComponent }) {
VueI18n.locale = 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 = {
getActiveLang: state => state.lang,
getAllLangs: state => state.allLangs, getAllLangs: state => state.allLangs,
}; };
export default { export default {
state, state,
mutations,
actions,
getters, getters,
}; };

View file

@ -1,4 +1,6 @@
import { api } from "@/api"; import { api } from "@/api";
import VueI18n from "@/i18n";
import Vuetify from "@/plugins/vuetify";
const state = { const state = {
siteSettings: { siteSettings: {
@ -13,17 +15,26 @@ const state = {
const mutations = { const mutations = {
setSettings(state, payload) { setSettings(state, payload) {
state.siteSettings = payload; state.siteSettings = payload;
VueI18n.locale = payload.language;
Vuetify.framework.lang.current = payload.language;
}, },
}; };
const actions = { const actions = {
async requestSiteSettings() { async requestSiteSettings({ commit }) {
let settings = await api.siteSettings.get(); let settings = await api.siteSettings.get();
this.commit("setSettings", settings); commit("setSettings", settings);
},
async initLang({ getters, commit }) {
// !Can Porbably Remove This?
await actions.requestSiteSettings({ commit });
VueI18n.locale = getters.getActiveLang;
Vuetify.framework.lang.current = getters.getActiveLang;
}, },
}; };
const getters = { const getters = {
getActiveLang: state => state.siteSettings.language,
getSiteSettings: state => state.siteSettings, getSiteSettings: state => state.siteSettings,
}; };

View file

@ -1,5 +1,5 @@
import { api } from "@/api"; import { api } from "@/api";
import Vuetify from "../../plugins/vuetify"; import Vuetify from "@/plugins/vuetify";
import axios from "axios"; import axios from "axios";
function inDarkMode(payload) { function inDarkMode(payload) {