And on…

This commit is contained in:
Jan Bader 2022-02-09 23:14:46 +00:00
parent 08330ce33c
commit 9b8ae7a44d

View File

@ -1,6 +1,9 @@
<script lang="ts"> <script lang="ts">
import { defineComponent } from "vue"; import { defineComponent } from "vue";
import { LOGOUT } from "./store/mutation-types"; import { LOGOUT } from "./store/mutation-types";
import { useBudgetsStore } from "./stores/budgets";
import { useSessionStore } from "./stores/session";
import { useSettingsStore } from "./stores/settings";
export default defineComponent({ export default defineComponent({
computed: { computed: {
@ -9,18 +12,18 @@ export default defineComponent({
} }
}, },
methods: { methods: {
logout () { logout() {
this.$store.commit(LOGOUT); this.$store.commit(LOGOUT);
this.$router.push("/login") this.$router.push("/login")
}, },
toggleMenu () { toggleMenu() {
this.$store.commit("toggleMenu"); this.$store.commit("toggleMenu");
}, },
toggleMenuSize () { toggleMenuSize() {
this.$store.commit("toggleMenuSize"); this.$store.commit("toggleMenuSize");
} }
}, },
beforeCreate () { beforeCreate() {
const store = localStorage.getItem("store"); const store = localStorage.getItem("store");
if (!store) if (!store)
return; return;
@ -29,14 +32,19 @@ export default defineComponent({
if (!restoredState) if (!restoredState)
return; return;
state.Session = restoredState.Session; const sessionStore = useSessionStore();
state.CurrentBudgetID = restoredState.CurrentBudgetID; sessionStore.User = restoredState.Session.User;
state.ShowMenu = restoredState.ShowMenu; sessionStore.Token = restoredState.Session.Token;
state.ExpandMenu = restoredState.ExpandMenu;
for (const budget of restoredState.Budgets || []) { for (const budget of restoredState.Budgets || []) {
state.Budgets.set(budget[0], budget[1]); sessionStore.Budgets.set(budget[0], budget[1]);
} }
const budgetsStore = useBudgetsStore();
budgetsStore.CurrentBudgetID = restoredState.CurrentBudgetID;
const settingsStore = useSettingsStore();
settingsStore.ShowMenu = restoredState.ShowMenu;
settingsStore.ExpandMenu = restoredState.ExpandMenu;
} }
}) })
</script> </script>
@ -47,7 +55,7 @@ export default defineComponent({
<span class="flex-1 font-bold text-5xl -my-3 hidden md:inline" @click="toggleMenuSize"></span> <span class="flex-1 font-bold text-5xl -my-3 hidden md:inline" @click="toggleMenuSize"></span>
<span class="flex-1 font-bold text-5xl -my-3 md:hidden" @click="toggleMenu"></span> <span class="flex-1 font-bold text-5xl -my-3 md:hidden" @click="toggleMenu"></span>
<span class="flex-1">{{$store.getters.CurrentBudgetName}}</span> <span class="flex-1">{{ $store.getters.CurrentBudgetName }}</span>
<div class="flex flex-1 flex-row justify-end -mx-4"> <div class="flex flex-1 flex-row justify-end -mx-4">
<router-link class="mx-4" v-if="loggedIn" to="/dashboard">Dashboard</router-link> <router-link class="mx-4" v-if="loggedIn" to="/dashboard">Dashboard</router-link>
@ -57,7 +65,10 @@ export default defineComponent({
</div> </div>
<div class="flex flex-col md:flex-row flex-1"> <div class="flex flex-col md:flex-row flex-1">
<div :class="[$store.state.ExpandMenu ? 'md:w-72' : 'md:w-36', $store.state.ShowMenu ? '' : 'hidden']" class="md:block flex-shrink-0 w-full"> <div
:class="[$store.state.ExpandMenu ? 'md:w-72' : 'md:w-36', $store.state.ShowMenu ? '' : 'hidden']"
class="md:block flex-shrink-0 w-full"
>
<router-view name="sidebar"></router-view> <router-view name="sidebar"></router-view>
</div> </div>