import { useState } from "react"; import { useNavigate } from "react-router-dom"; import SidebarAdmin from "../Layout/SidebarAdmin"; import NavbarAdmin from "../Layout/NavbarAdmin"; import "froala-editor/js/plugins.pkgd.min.js"; import "froala-editor/css/froala_editor.pkgd.min.css"; import "froala-editor/css/froala_style.min.css"; import FroalaEditor from "react-froala-wysiwyg"; import axios from "axios"; const AddFeedback = () => { const [posisi, setPosisi] = useState(""); const [universitas, setUniversitas] = useState(""); const [nama, setNama] = useState(""); const [image, setImage] = useState(null); const [batch, setBatch] = useState(""); const [feedback, setFeedbacks] = useState(""); const [year, setYear] = useState(""); const navigate = useNavigate(); const handleSubmit = async () => { const token = document.cookie .split("; ") .find((row) => row.startsWith("token=")) ?.split("=")[1]; if (!token) { alert("Token tidak ditemukan."); return; } if (!nama || !universitas || !posisi || !batch || !year || !feedback) { alert("Semua field wajib diisi."); return; } try { const formData = new FormData(); formData.append("nama", nama); formData.append("universitas", universitas); formData.append("posisi", posisi); formData.append("batch", batch); formData.append("tahun", year); formData.append("pesan", feedback); if (image) formData.append("image", image); const response = await axios.post( `${import.meta.env.VITE_API_BASE_URL}/feedback-api/add`, formData, { headers: { Authorization: `Bearer ${token}`, "Content-Type": "multipart/form-data", }, } ); if (response.data.status) { alert("Feedback berhasil ditambahkan!"); navigate("/feedback-list"); } else { alert(response.data.message || "Gagal menambahkan feedback."); } } catch (error: any) { console.error("Error adding feedback:", error); alert("Terjadi kesalahan saat menambahkan feedback."); } }; return (

Tambah Feedback

setNama(e.target.value)} placeholder="John Doe" />
setUniversitas(e.target.value)} placeholder="Telkom University Bandung" />
setPosisi(e.target.value)} placeholder="UI/UX Designer" />
setBatch(e.target.value)} placeholder="5" />
setYear(e.target.value)} placeholder="2025" />
setImage(e.target.files ? e.target.files[0] : null) } className="border border-gray-300 rounded-lg p-3" />
{/* Isi Konten */}
setFeedbacks(model)} config={{ placeholderText: "Tulis feedback kamu...", charCounterCount: true, toolbarSticky: true, heightMin: 200, }} />
); }; export default AddFeedback;