From 8957185062a7044cbd8be2db4b722270a5f13a57 Mon Sep 17 00:00:00 2001
From: "2569718930@qq.com" <2569718930@qq.com>
Date: Mon, 25 May 2026 00:57:55 +0800
Subject: [PATCH] =?UTF-8?q?=E7=99=BB=E5=BD=95=E9=A1=B5=E4=B8=8E=E8=90=BD?=
=?UTF-8?q?=E5=9C=B0=E9=A1=B5=E7=BB=86=E8=8A=82=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
frontend/components/auth/LoginClient.tsx | 12 ++++++++++++
.../components/landing/InstitutionalLandingPage.tsx | 6 ++++++
2 files changed, 18 insertions(+)
diff --git a/frontend/components/auth/LoginClient.tsx b/frontend/components/auth/LoginClient.tsx
index edd004af..4f2d69e5 100644
--- a/frontend/components/auth/LoginClient.tsx
+++ b/frontend/components/auth/LoginClient.tsx
@@ -40,6 +40,18 @@ export function LoginClient({ nextPath }: LoginClientProps) {
const [resetSent, setResetSent] = useState(false);
const [showPassword, setShowPassword] = useState(false);
+ useEffect(() => {
+ if (typeof window !== "undefined") {
+ const params = new URLSearchParams(window.location.search);
+ const m = params.get("mode");
+ if (m === "signup") {
+ setMode("signup");
+ } else if (m === "login") {
+ setMode("login");
+ }
+ }
+ }, []);
+
const supabaseReady = hasSupabasePublicEnv();
const isLogin = mode === "login";
const siteOrigin =
diff --git a/frontend/components/landing/InstitutionalLandingPage.tsx b/frontend/components/landing/InstitutionalLandingPage.tsx
index f0a17414..cc578ccd 100644
--- a/frontend/components/landing/InstitutionalLandingPage.tsx
+++ b/frontend/components/landing/InstitutionalLandingPage.tsx
@@ -153,6 +153,12 @@ function InstitutionalLandingScreen() {
>
{isEn ? "Log in" : "登录"}
+
+ {isEn ? "Sign Up" : "注册"}
+