"use client"; import React, { useState, useEffect, Suspense } from "react"; import { useRouter, useSearchParams } from "next/navigation"; import Link from "next/link"; import { loginAdmin, getAdminSession } from "@/lib/admin-auth"; function AdminLoginForm() { const router = useRouter(); const searchParams = useSearchParams(); const callbackUrl = searchParams.get("callbackUrl") || "/admin"; const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [showPassword, setShowPassword] = useState(false); const [errorMsg, setErrorMsg] = useState(""); const [isLoading, setIsLoading] = useState(false); useEffect(() => { // If already logged in, redirect straight to admin dashboard const session = getAdminSession(); if (session) { router.replace(callbackUrl); } }, [router, callbackUrl]); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!email.trim() || !password.trim()) { setErrorMsg("Lütfen e-posta ve şifrenizi girin."); return; } setIsLoading(true); setErrorMsg(""); try { const res = await loginAdmin(email, password); if (res.success) { router.replace(callbackUrl); } else { setErrorMsg(res.error || "Giriş başarısız."); } } catch { setErrorMsg("Bir hata oluştu. Lütfen tekrar deneyin."); } finally { setIsLoading(false); } }; const handleQuickDemoLogin = () => { setEmail("admin@menul.io"); setPassword("menulio2026"); }; return (
{/* Arka Plan Işık Efektleri */}
{/* Kart Konteynırı */}
{/* Logo & Başlık */}
M

Menulio Admin Girişi

QR Şablon Stüdyosu ve Sistem Yönetim Paneli

{/* Hata Bildirimi */} {errorMsg && (
{errorMsg}
)} {/* Giriş Formu */}
{/* E-posta */}
setEmail(e.target.value)} placeholder="admin@menul.io" className="w-full bg-white/[0.04] border border-white/10 rounded-xl px-4 py-3 text-sm text-white placeholder-zinc-500 focus:outline-none focus:border-[#D4AF37] focus:ring-1 focus:ring-[#D4AF37] transition-all" required />
{/* Şifre */}
setPassword(e.target.value)} placeholder="••••••••" className="w-full bg-white/[0.04] border border-white/10 rounded-xl px-4 py-3 text-sm text-white placeholder-zinc-500 focus:outline-none focus:border-[#D4AF37] focus:ring-1 focus:ring-[#D4AF37] transition-all pr-10" required />
{/* Giriş Yap Butonu */}
{/* Hızlı Demo Girişi */}
Varsayılan Admin Girişi: admin@menul.io / menulio2026
{/* Alt Footer */}
Menulio QR & Masa Kartı Yönetim Ekosistemi © {new Date().getFullYear()}
); } export default function AdminLoginPage() { return (
}>
); }