diff --git a/client/src/pages/SupervisorDashboard.js b/client/src/pages/SupervisorDashboard.js index 1871dbd4..8a704d34 100644 --- a/client/src/pages/SupervisorDashboard.js +++ b/client/src/pages/SupervisorDashboard.js @@ -8,7 +8,7 @@ const SupervisorDashboard = () => { const [selectedForm, setSelectedForm] = useState(null); const [loading, setLoading] = useState(true); const [message, setMessage] = useState(""); - + useEffect(() => { // Token used for authentication for future @@ -82,22 +82,24 @@ const SupervisorDashboard = () => { ); setMessage(res.data.message || `${action} successful`); - setRequests(prev => prev.filter(req => req._id !== id)); - setSelectedForm(null); + setRequests(prev => prev.filter(req => req._id !== id)); // remove from table + return true; } catch (err) { console.error(`Failed to ${action} request:`, err); setMessage(`Failed to ${action} request.`); + return false; } }; + const openFormView = (form) => setSelectedForm(form); const closeFormView = () => setSelectedForm(null); const formatDate = (date) => new Date(date).toLocaleDateString(); const sortedRequests = [...requests] - .filter((req) => req.status.toLowerCase() === "submitted") - .sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt)); - + .filter((req) => req.supervisor_status?.toLowerCase() === "pending") + .sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt)); + let content; if (loading) { @@ -147,16 +149,58 @@ const SupervisorDashboard = () => {
{message}
} - {content} + {loading ? ( +Loading...
+ ) : sortedRequests.length === 0 ? ( +| Student Name | +Sooner ID | +Form Type | +Submitted | +Status | +|
|---|---|---|---|---|---|
| {req.interneeName || req.studentName} | ++ + | +{req.interneeEmail || req.studentEmail} | +{req.form_type} | +{formatDate(req.createdAt)} | ++ + {req.supervisor_status || req.status} + + | +
| Field | @@ -60,52 +51,69 @@ const ViewFormModal = ({ formData, onClose, onAction }) => {
|---|
Name: {formData.interneeName}
+Email: {formData.interneeEmail}
+Sooner ID: {formData.interneeID}
- {error &&{error}
} +| Category | +Rating | +Comment | +
|---|---|---|
| {item.category} | +{item.rating} | +{item.comment || "-"} | +