just testing the environment
Some checks failed
Tests / test (push) Has been cancelled

This commit is contained in:
tom.hempel
2026-05-20 07:10:08 +02:00
parent 2a11dfd0d1
commit 06fc134299
56 changed files with 1890 additions and 361 deletions

31
website/js/auth-state.js Normal file
View File

@ -0,0 +1,31 @@
export function isLoggedIn() {
return !!localStorage.getItem('qdb_token');
}
export function getRole() {
return localStorage.getItem('qdb_role') || '';
}
export function getUser() {
return localStorage.getItem('qdb_user') || '';
}
export function canEdit() {
const r = getRole();
return r === 'admin' || r === 'supervisor';
}
export function authGuard(navigate, handler) {
return (params) => {
if (!isLoggedIn()) { navigate('#/login'); return; }
return handler(params);
};
}
export function roleGuard(navigate, roles, handler) {
return (params) => {
if (!isLoggedIn()) { navigate('#/login'); return; }
if (!roles.includes(getRole())) { navigate('#/'); return; }
return handler(params);
};
}