From 3598a2dd25d42738dcc6c17c80231d2727752881 Mon Sep 17 00:00:00 2001 From: Falkan Date: Tue, 17 Mar 2026 20:49:38 -0400 Subject: [PATCH] fix: all admin client-side fetches and redirects use configured adminPath --- src/routes/admin/+layout.server.ts | 9 ++++--- src/routes/admin/+layout.svelte | 5 +++- src/routes/admin/+page.svelte | 40 ++++++++++++++++------------- src/routes/admin/login/+page.svelte | 7 +++-- 4 files changed, 36 insertions(+), 25 deletions(-) diff --git a/src/routes/admin/+layout.server.ts b/src/routes/admin/+layout.server.ts index c17568c..6f2da99 100644 --- a/src/routes/admin/+layout.server.ts +++ b/src/routes/admin/+layout.server.ts @@ -4,18 +4,19 @@ import { loadConfig } from '$lib/server/data'; import type { LayoutServerLoad } from './$types'; export const load: LayoutServerLoad = ({ request, url }) => { + const adminPath = (loadConfig().adminPath ?? 'admin').replace(/^\/|\/$/g, '') || 'admin'; + if (url.pathname.endsWith('/login') || url.pathname.endsWith('/login/')) { - return { authenticated: false }; + return { authenticated: false, adminPath }; } if (url.pathname.includes('/api/')) { - return {}; + return { adminPath }; } if (!authRequest(request)) { - const adminPath = (loadConfig().adminPath ?? 'admin').replace(/^\/|\/$/g, ''); throw redirect(302, `/${adminPath}/login`); } - return { authenticated: true }; + return { authenticated: true, adminPath }; }; diff --git a/src/routes/admin/+layout.svelte b/src/routes/admin/+layout.svelte index dd96795..7dc1d56 100644 --- a/src/routes/admin/+layout.svelte +++ b/src/routes/admin/+layout.svelte @@ -1,5 +1,8 @@
diff --git a/src/routes/admin/+page.svelte b/src/routes/admin/+page.svelte index ebfe9f8..246c5fa 100644 --- a/src/routes/admin/+page.svelte +++ b/src/routes/admin/+page.svelte @@ -1,6 +1,10 @@ diff --git a/src/routes/admin/login/+page.svelte b/src/routes/admin/login/+page.svelte index 919e1a7..eb19ba7 100644 --- a/src/routes/admin/login/+page.svelte +++ b/src/routes/admin/login/+page.svelte @@ -1,5 +1,8 @@