created basic auth system

This commit is contained in:
2023-04-23 17:16:53 +02:00
parent 70f18f75df
commit fa0a9b8e58
10 changed files with 360 additions and 15 deletions

17
web/middleware/auth.js Normal file
View File

@@ -0,0 +1,17 @@
export default defineNuxtRouteMiddleware(async (to) => {
if (process.server) return;
try {
const user = await $fetch('/api/auth/user')
useState('user', () => user)
if (to.meta.admin && !user.admin) return navigateTo('/')
} catch (err) {
console.log(err)
useState('user', () => null)
return navigateTo('/login')
}
})