diff options
Diffstat (limited to 'src/hooks.server.js')
| -rw-r--r-- | src/hooks.server.js | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/src/hooks.server.js b/src/hooks.server.js deleted file mode 100644 index b97daa5a..00000000 --- a/src/hooks.server.js +++ /dev/null @@ -1,40 +0,0 @@ -import { auth, get, protectedRoutes } from '$lib/utils'; - -let users = {}; - -export async function handle({ event, resolve }) { - let token = event.cookies.get('token'); - let { - params, - request, - url: { pathname, origin } - } = event; - - let user; - if (token && pathname !== '/logout') { - try { - user = users[token] || (await get('/me', auth(event.cookies))); - users[token] = user; - - setTimeout(() => { - delete users[token]; - }, 60000); - - event.locals.user = user; - - if (['/', '/login', '/register'].includes(pathname) && request.method === 'GET') - return Response.redirect(origin + `/${user.username}/dashboard`, 307); - } catch (e) { - return Response.redirect(origin + '/logout', 307); - } - } - - if (protectedRoutes.find((p) => pathname.match(p))) { - if (!user || user.username !== params.username) - return Response.redirect(origin + '/login', 307); - } - - const response = await resolve(event); - - return response; -} |
