"use client"; import { useState } from "react"; import { Plus, X, Save, AlertCircle } from "lucide-react"; import { createPartnerAdmin } from "../../actions"; import { useRouter } from "next/navigation"; export default function AddPartnerModal() { const [isOpen, setIsOpen] = useState(false); const [isLoading, setIsLoading] = useState(false); const [errorMsg, setErrorMsg] = useState(""); const [name, setName] = useState(""); const [logo, setLogo] = useState(null); const [displayOrder, setDisplayOrder] = useState("0"); const router = useRouter(); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!logo) { setErrorMsg("Lütfen bir logo görseli seçin."); return; } setIsLoading(true); setErrorMsg(""); const formData = new FormData(); formData.append("name", name); formData.append("logo", logo); formData.append("display_order", displayOrder); const res = await createPartnerAdmin(formData); setIsLoading(false); if (res.error) { setErrorMsg(res.error); } else { // Success setIsOpen(false); setName(""); setLogo(null); setDisplayOrder("0"); router.refresh(); } }; return ( <> {isOpen && (
{/* Header */}

Yeni Partner Ekle

{/* Form */}
setName(e.target.value)} placeholder="Örn: ABC A.Ş." className="w-full bg-white/5 border border-white/10 rounded-xl px-4 py-3 text-white focus:border-primary outline-none" />
{ if (e.target.files && e.target.files[0]) { setLogo(e.target.files[0]); } }} className="absolute inset-0 opacity-0 cursor-pointer" /> {logo ? (

{logo.name}

{(logo.size / 1024).toFixed(1)} KB

) : (

Görsel seçmek için tıklayın

PNG, JPG veya SVG

)}
setDisplayOrder(e.target.value)} placeholder="0" className="w-full bg-white/5 border border-white/10 rounded-xl px-4 py-3 text-white focus:border-primary outline-none" />
{errorMsg && (
{errorMsg}
)}
)} ); }