Use a pinia store to manage session state
Replace the convoluted useAccountSession composable with a pinia store that in addition allows for the consolidation of all session related functions to grouped into one module.
This commit is contained in:
parent
c47452a8b4
commit
fae8b4e2e4
21 changed files with 181 additions and 118 deletions
|
@ -1,14 +1,14 @@
|
|||
export default defineNuxtRouteMiddleware(async (to, from) => {
|
||||
const { data: session } = await useAccountSession();
|
||||
const sessionStore = useSessionStore();
|
||||
|
||||
if (!session.value) {
|
||||
if (!sessionStore.account) {
|
||||
console.log("Not logged in, redirecting to /login");
|
||||
return navigateTo("/login");
|
||||
}
|
||||
|
||||
if (
|
||||
to.meta.allowedAccountTypes
|
||||
&& !to.meta.allowedAccountTypes.includes(session.value.account.type)
|
||||
&& !to.meta.allowedAccountTypes.includes(sessionStore.account.type)
|
||||
) {
|
||||
throw createError({
|
||||
status: 403,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue