diff --git a/manager/components/Exams.tsx b/manager/components/Exams.tsx index e71a7a2..3ebd2fc 100644 --- a/manager/components/Exams.tsx +++ b/manager/components/Exams.tsx @@ -175,6 +175,23 @@ const Exams: React.FC = ({ data, updateData }) => { showAlert('Sucesso', 'Avaliação reativada.', 'success'); }; + const handlePermanentDelete = (examId: string) => { + showConfirm( + 'Excluir Permanentemente', + '⚠️ Atenção: Esta ação irá apagar esta avaliação e todas as suas questões PERMANENTEMENTE do banco de dados. As submissões dos alunos também serão removidas. Esta ação NÃO pode ser desfeita. Deseja continuar?', + async () => { + try { + const response = await fetch(`/api/provas/${examId}`, { method: 'DELETE' }); + if (!response.ok) throw new Error('Falha ao excluir'); + await loadExams(); + showAlert('Sucesso', 'Avaliação excluída permanentemente.', 'success'); + } catch (e) { + console.error('Erro ao excluir permanentemente:', e); + showAlert('Erro', 'Falha ao excluir a avaliação do servidor.', 'error'); + } + } + ); + }; const handleDuplicateExam = async () => { if (!duplicatingExam || !targetClassId) return; @@ -742,12 +759,21 @@ const Exams: React.FC = ({ data, updateData }) => {
{exam.isDeleted ? ( - +
+ + +
) : ( <>