diff --git a/app/login/page.tsx b/app/login/page.tsx index 6f3ddce..a176072 100644 --- a/app/login/page.tsx +++ b/app/login/page.tsx @@ -18,7 +18,6 @@ import api from "@/lib/axios"; import { GolfIcon } from "@/components/ui/GolfIcon"; import { RotateCcw } from "lucide-react"; -/** ログインページ */ export default function LoginPage() { const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); @@ -27,7 +26,6 @@ export default function LoginPage() { const [resetting, setResetting] = useState(false); const [resetMessage, setResetMessage] = useState(""); - // デモデータリセット(全データを初期状態に戻す) async function handleDemoReset() { if (resetting) return; @@ -55,7 +53,6 @@ export default function LoginPage() { } } - // ログイン処理(成功後、roleに応じて管理者/スタッフ画面に遷移) async function handleSubmit(e: React.FormEvent) { e.preventDefault(); setError(""); @@ -74,6 +71,22 @@ export default function LoginPage() { setError("メールアドレスまたはパスワードが正しくありません"); } } + + async function handleTestLogin(role: "admin" | "staff") { + setError(""); + try { + const credentials = + role === "admin" + ? { email: "admin@gmail.com", password: "admin" } + : { email: "staff@gmail.com", password: "staff" }; + + const response = await api.post("/api/login", credentials); + localStorage.setItem("token", response.data.token); + router.push(role === "admin" ? "/admin" : "/staff"); + } catch (err) { + setError("ログインに失敗しました。デモデータをリセットしてください。"); + } + } return (
@@ -124,6 +137,28 @@ export default function LoginPage() { ログイン + +
+

+ テストログイン +

+
+ + +
+