diff --git a/src/app/admin/(auth)/login/page.tsx b/src/app/admin-login/page.tsx similarity index 100% rename from src/app/admin/(auth)/login/page.tsx rename to src/app/admin-login/page.tsx diff --git a/src/app/admin/layout.tsx b/src/app/admin/layout.tsx index 324e561..e41f1c9 100644 --- a/src/app/admin/layout.tsx +++ b/src/app/admin/layout.tsx @@ -27,7 +27,13 @@ export default function AdminLayout({ children }: { children: React.ReactNode }) const [sidebarOpen, setSidebarOpen] = useState(true); const [admin, setAdmin] = useState<{ username: string; role: string } | null>(null); + // Check if this is the login page - don't show sidebar + const isLoginPage = pathname === "/admin/login" || pathname === "/admin-login"; + useEffect(() => { + // Only check auth if not on login page + if (isLoginPage) return; + const token = localStorage.getItem("admin_token"); if (!token) { router.push("/admin/login"); @@ -37,7 +43,7 @@ export default function AdminLayout({ children }: { children: React.ReactNode }) if (stored) { setAdmin(JSON.parse(stored)); } - }, [router]); + }, [router, isLoginPage]); const handleLogout = () => { localStorage.removeItem("admin_token"); @@ -45,6 +51,16 @@ export default function AdminLayout({ children }: { children: React.ReactNode }) router.push("/admin/login"); }; + // Login page - render without sidebar + if (isLoginPage) { + return ( +