diff options
| author | Adam Soltys <[email protected]> | 2022-08-19 23:13:01 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2022-08-19 23:13:01 -0700 |
| commit | 7a0d6188e5a58ec80d621a8356a7c272094060bb (patch) | |
| tree | e6ce04a605c07353622e41db0a0028f08f442c0d /src/routes/+layout.server.js | |
| parent | c7e21a93c4e8fd64a6fd511641a5f22076248aaa (diff) | |
| download | coinos-ui-7a0d6188e5a58ec80d621a8356a7c272094060bb.tar.gz coinos-ui-7a0d6188e5a58ec80d621a8356a7c272094060bb.zip | |
get login and register working again
Diffstat (limited to 'src/routes/+layout.server.js')
| -rw-r--r-- | src/routes/+layout.server.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/routes/+layout.server.js b/src/routes/+layout.server.js new file mode 100644 index 00000000..e05380a7 --- /dev/null +++ b/src/routes/+layout.server.js @@ -0,0 +1,17 @@ +import cookie from 'cookie'; +import { protectedRoutes } from '$lib/utils'; +import { get } from '$lib/utils'; + +export async function load({ request, setHeaders, url, params }) { + let { token } = cookie.parse(request.headers.get('cookie') || ''); + let user; + + if (token) { + user = await get('/me', { accept: 'application/json', authorization: `Bearer ${token}` }); + if (protectedRoutes.find((p) => url.pathname.match(p))) { + if (user.username !== params.username) throw new Error('user not found'); + } + } + + return { user, token }; +} |
