diff --git a/web/src/routes/admin/+layout.svelte b/web/src/routes/admin/+layout.svelte index 4dec39b..8ab4ebc 100644 --- a/web/src/routes/admin/+layout.svelte +++ b/web/src/routes/admin/+layout.svelte @@ -1,3 +1,17 @@ + +

diff --git a/web/src/routes/login/+page.server.ts b/web/src/routes/login/+page.server.ts index cddaa12..3a6911c 100644 --- a/web/src/routes/login/+page.server.ts +++ b/web/src/routes/login/+page.server.ts @@ -4,13 +4,16 @@ import { attemptLogin } from '$lib/server/auth'; export const actions = { login: async ({ cookies, request }) => { const data = await request.formData(); - const username = data.get('username')?.toString(); - const password = data.get('password')?.toString(); - if (!username || !password) { - return { success: false }; + const formUsername = data.get('username'); + const formPassword = data.get('password'); + if (formUsername === null || formPassword === null) { + return { success: false, message: 'Incomplete form data' }; } - if ((await attemptLogin(cookies, username, password)) !== true) { - return { success: false }; + if ( + (await attemptLogin(cookies, formUsername.toString().trim(), formPassword.toString())) !== + true + ) { + return { success: false, message: 'Invalid login' }; } else { return { success: true }; } diff --git a/web/src/routes/login/+page.svelte b/web/src/routes/login/+page.svelte index 2279780..6aac31f 100644 --- a/web/src/routes/login/+page.svelte +++ b/web/src/routes/login/+page.svelte @@ -1,37 +1,73 @@ -
-
-

Login

-
- - - - - - -
- -
-
-
- {#if form?.success} - - {:else if form && !form.success} - - {/if} + + {/if} +
+
+ + +
+
+ + +
+
+ +
+
+ + diff --git a/web/src/routes/logout/+page.server.ts b/web/src/routes/logout/+page.server.ts deleted file mode 100644 index 5ace374..0000000 --- a/web/src/routes/logout/+page.server.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { redirect } from '@sveltejs/kit'; -import type { PageServerLoad } from './$types'; -import { logout } from '$lib/server/auth'; - -export const load = (async ({ cookies }) => { - await logout(cookies); - throw redirect(302, '/login'); -}) satisfies PageServerLoad; diff --git a/web/src/routes/logout/+page.svelte b/web/src/routes/logout/+page.svelte deleted file mode 100644 index 43d1e22..0000000 --- a/web/src/routes/logout/+page.svelte +++ /dev/null @@ -1 +0,0 @@ -

Logging Out

diff --git a/web/src/routes/logout/+server.ts b/web/src/routes/logout/+server.ts new file mode 100644 index 0000000..83f3b28 --- /dev/null +++ b/web/src/routes/logout/+server.ts @@ -0,0 +1,8 @@ +import { logout } from '$lib/server/auth'; +import { json } from '@sveltejs/kit'; +import type { RequestHandler } from './$types'; + +export const POST = (async ({ cookies }) => { + await logout(cookies); + return json({ success: true }); +}) satisfies RequestHandler;