From af2b51367776436d1b0f2dee36edb2d6b0eb06ff Mon Sep 17 00:00:00 2001 From: AlexBocken Date: Thu, 20 Jul 2023 14:48:50 +0200 Subject: [PATCH] less database requests --- src/lib/js/get_username.ts | 33 +++++++++++++++++++ src/routes/(main)/+layout.server.ts | 10 ++---- src/routes/(main)/flims/+page.svelte | 16 --------- .../(rezepte)/rezepte/+layout.server.ts | 7 ++-- src/routes/(rezepte)/rezepte/+layout.svelte | 8 +++-- 5 files changed, 43 insertions(+), 31 deletions(-) create mode 100644 src/lib/js/get_username.ts delete mode 100644 src/routes/(main)/flims/+page.svelte diff --git a/src/lib/js/get_username.ts b/src/lib/js/get_username.ts new file mode 100644 index 0000000..b1067ff --- /dev/null +++ b/src/lib/js/get_username.ts @@ -0,0 +1,33 @@ +import type { RequestEvent } from "@sveltejs/kit"; +import { COOKIE_SECRET } from "$env/static/private"; +import pkg from 'jsonwebtoken'; +const { verify } = pkg; +import { error } from "@sveltejs/kit"; +import { dbConnect, dbDisconnect } from "../../utils/db"; +import { User } from "../../models/User";; + +export async function get_username(cookies){ + // Set your master secret key (replace with your own secret) + const masterSecret = COOKIE_SECRET; + const secretKey = masterSecret + let decoded + try{ + const cookie : string = cookies.get("UserSession") + if(cookie){ + decoded = await verify(cookie, secretKey); + } + + } + catch(e){ + return null + } + + if(decoded){ + return { + username: decoded.username, + } + } + else{ + return null + } +} diff --git a/src/routes/(main)/+layout.server.ts b/src/routes/(main)/+layout.server.ts index 5e6f196..8c67955 100644 --- a/src/routes/(main)/+layout.server.ts +++ b/src/routes/(main)/+layout.server.ts @@ -1,9 +1,5 @@ -import type {LayoutServerLoad} from './$types'; -import { authenticateUser } from '$lib/js/authenticate';; +import { get_username } from '$lib/js/get_username';; export const load = (async ({cookies}) => { - const user = await authenticateUser(cookies) - return { - user - } -}) satisfies LayoutServerLoad; + return { user: await get_username(cookies) } +}); diff --git a/src/routes/(main)/flims/+page.svelte b/src/routes/(main)/flims/+page.svelte deleted file mode 100644 index f219795..0000000 --- a/src/routes/(main)/flims/+page.svelte +++ /dev/null @@ -1,16 +0,0 @@ - - -
- - - - - - - -
diff --git a/src/routes/(rezepte)/rezepte/+layout.server.ts b/src/routes/(rezepte)/rezepte/+layout.server.ts index 30af304..8c67955 100644 --- a/src/routes/(rezepte)/rezepte/+layout.server.ts +++ b/src/routes/(rezepte)/rezepte/+layout.server.ts @@ -1,8 +1,5 @@ -import { authenticateUser } from '$lib/js/authenticate';; +import { get_username } from '$lib/js/get_username';; export const load = (async ({cookies}) => { - const user = await authenticateUser(cookies) - return { - user - } + return { user: await get_username(cookies) } }); diff --git a/src/routes/(rezepte)/rezepte/+layout.svelte b/src/routes/(rezepte)/rezepte/+layout.svelte index da4ce17..939ed30 100644 --- a/src/routes/(rezepte)/rezepte/+layout.svelte +++ b/src/routes/(rezepte)/rezepte/+layout.svelte @@ -1,9 +1,11 @@
@@ -14,6 +16,6 @@ if(data.user) username = data.user.username
  • Icon
  • Stichwörter
  • - +