diff --git a/ipi-survey-platform/src/components/admin/SubmissionTable.jsx b/ipi-survey-platform/src/components/admin/SubmissionTable.jsx index 5d4d5e3..9760e20 100644 --- a/ipi-survey-platform/src/components/admin/SubmissionTable.jsx +++ b/ipi-survey-platform/src/components/admin/SubmissionTable.jsx @@ -132,8 +132,9 @@ const SubmissionTable = ({ selectedQuarter, selectedYear }) => { if (type === 'approve') { setShowApproveModal(true); } else { + // Clear previous state setRejectionReason(''); - setShowRejectError(false); + setShowRejectError(false); // Don't show error immediately setShowRejectModal(true); } }; @@ -320,22 +321,42 @@ const SubmissionTable = ({ selectedQuarter, selectedYear }) => {
handleActionClick(item, 'approve') : undefined} + className={`${ + item.status?.toLowerCase() === 'approved' || item.status?.toLowerCase() === 'rejected' + ? 'text-gray-400 cursor-not-allowed' + : 'text-green-600 cursor-pointer hover:scale-110' + } transition-transform`} + onClick={['submitted', 'resubmitted'].includes(item.status?.toLowerCase()) + ? () => handleActionClick(item, 'approve') + : undefined} /> - {item.status?.toLowerCase() === 'approved' ? 'Already Approved' : 'Approve'} + {item.status?.toLowerCase() === 'approved' + ? 'Already Approved' + : item.status?.toLowerCase() === 'rejected' + ? 'Cannot approve rejected' + : 'Approve'}
handleActionClick(item, 'reject') : undefined} + className={`${ + ['approved', 'rejected'].includes(item.status?.toLowerCase()) + ? 'text-gray-400 cursor-not-allowed' + : 'text-red-600 cursor-pointer hover:scale-110' + } transition-transform`} + onClick={!['approved', 'rejected'].includes(item.status?.toLowerCase()) + ? () => handleActionClick(item, 'reject') + : undefined} /> - - {item.status?.toLowerCase() === 'rejected' ? 'Already Rejected' : 'Reject'} + + {item.status?.toLowerCase() === 'rejected' + ? 'Already Rejected' + : item.status?.toLowerCase() === 'approved' + ? 'Cannot reject approved' + : 'Reject'}
@@ -486,9 +507,15 @@ const SubmissionTable = ({ selectedQuarter, selectedYear }) => {