From d089872432d35687471c816670f88ca0423c8442 Mon Sep 17 00:00:00 2001 From: rhpidfyre <brandon@rhpidfyre.io> Date: Thu, 27 Mar 2025 12:17:04 -0400 Subject: [PATCH] web: use param `?redirect=` with auth redirection and switch to a boolean check for `/api/session/validate` --- web/src/app/_components/webpage.tsx | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/web/src/app/_components/webpage.tsx b/web/src/app/_components/webpage.tsx index 14c4ec9..2c64aba 100644 --- a/web/src/app/_components/webpage.tsx +++ b/web/src/app/_components/webpage.tsx @@ -6,25 +6,19 @@ 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") + const response = await fetch("/api/session/validate") + if (response.ok) { + const logged_in = await response.json() + if (!logged_in) { + redirect("https://auth.staging.strafes.net/oauth2/login?redirect=" + window.location.href) } - } catch (error) { - console.error("Error getting login status:", error) + } else { + console.error("No response from /api/session/validate") } } export default function Webpage({children}: Readonly<{children?: React.ReactNode}>) { - useEffect(() => { - login_check() - }, []) + useEffect(() => { login_check() }, []) return <> <Header/>