From fc320fdc462154917c92c1d6f4eab8e90dfc93e5 Mon Sep 17 00:00:00 2001 From: Theangel256 Date: Sat, 8 Nov 2025 17:01:16 -0700 Subject: [PATCH 1/2] fix fetch url from api/dashboard --- src/pages/dashboard/[id].astro | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/pages/dashboard/[id].astro b/src/pages/dashboard/[id].astro index 7e5ab8d..4ba5382 100644 --- a/src/pages/dashboard/[id].astro +++ b/src/pages/dashboard/[id].astro @@ -38,17 +38,20 @@ interface DiscordUser { const { id } = Astro.params; // Authentication and data fetching -const user = Astro.locals.user as DiscordUser | undefined; +const user = Astro.locals?.user as DiscordUser | undefined; if (!user) return Astro.redirect("/api/signin"); let data: GuildData | undefined; try { - const res = await fetch(`/api/dashboard/${id}`); - if (!res.ok) throw new Error(`HTTP error! status: ${res.status}`); + const apiUrl = new URL(`/api/dashboard/${id}`, Astro.url); + + const res = await fetch(apiUrl); + if (!res.ok) throw new Error(`HTTP ${res.status}`); + data = await res.json(); } catch (error) { - console.error('Fetch error:', error); - return Astro.redirect("/error404"); // Fallback if API fails + console.error("Fetch error:", error); + return Astro.redirect("/error404"); } const db = data?.db; From fcd0ea047c4ccc20f5d8e3e513e6c0172f86f6de Mon Sep 17 00:00:00 2001 From: Theangel256 Date: Sat, 8 Nov 2025 17:18:59 -0700 Subject: [PATCH 2/2] Dashboard under maintenance --- src/pages/api/dashboard/[id].ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/api/dashboard/[id].ts b/src/pages/api/dashboard/[id].ts index f76ae95..cad2e7e 100644 --- a/src/pages/api/dashboard/[id].ts +++ b/src/pages/api/dashboard/[id].ts @@ -1,5 +1,5 @@ import { APIContext } from 'astro'; -import { PermissionFlagsBits } from 'discord.js'; +import { ChannelType, PermissionFlagsBits } from 'discord.js'; import { createRequire } from 'module'; const require = createRequire(import.meta.url); const { getOrCreateDB } = require("../../../utils/functions.js"); @@ -30,7 +30,7 @@ interface GuildData { export async function GET(context: APIContext) { const { params } = context; const idserver = params.id; - const user = context.locals.user as DiscordUser | undefined; + const user = context.locals?.user as DiscordUser | undefined; if (!user) { return new Response('Unauthorized', { status: 401 });