From 8b06a1414d147f942259ef26341c3c9a62b14745 Mon Sep 17 00:00:00 2001 From: rhpidfyre <brandon@rhpidfyre.io> Date: Wed, 26 Mar 2025 21:11:43 -0400 Subject: [PATCH] web: switch to using `/api/session/validate` for determining if the user is not logged in --- web/src/app/_components/webpage.tsx | 35 ++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/web/src/app/_components/webpage.tsx b/web/src/app/_components/webpage.tsx index 6119987..14c4ec9 100644 --- a/web/src/app/_components/webpage.tsx +++ b/web/src/app/_components/webpage.tsx @@ -1,8 +1,33 @@ +"use client" + +import { redirect } from "next/navigation"; +import { useEffect } from "react"; + import Header from "./header"; +async function login_check() { + try { + const response = await fetch("/api/session/validate") + if (response.ok) { + const logged_in = await response.json() + if (logged_in.code === 500) { + redirect("https://auth.staging.strafes.net/") + } + } else { + console.error("No response from /api/session/validate") + } + } catch (error) { + console.error("Error getting login status:", error) + } +} + export default function Webpage({children}: Readonly<{children?: React.ReactNode}>) { - return (<> - <Header/> - {children} - </>) -} \ No newline at end of file + useEffect(() => { + login_check() + }, []) + + return <> + <Header/> + {children} + </> +}