Files
cultureat-bak/wp-content/themes/ccat/app/middleware/isAdmin.ts

14 lines
449 B
TypeScript

export default defineNuxtRouteMiddleware((to) => {
const { loggedIn, session } = useUserSession();
if (!loggedIn.value) {
return navigateTo(`/connexion?redirect=${encodeURIComponent(to.fullPath)}`);
}
const isAdmin = session.value?.user?.roles?.includes("administrator") || false;
if (!isAdmin) {
throw createError({
statusCode: 403,
statusMessage: "Accès refusé - Privilèges administrateur requis",
});
}
});