From df66e524997ae74d2cfac8084d329a0c0293abb4 Mon Sep 17 00:00:00 2001 From: Goivnd Kumar Yadav Date: Wed, 11 Feb 2026 03:33:04 +0545 Subject: [PATCH] delete course button added in course section --- .../course/features/edit-course-dialog.tsx | 42 ++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/src/modules/course/features/edit-course-dialog.tsx b/src/modules/course/features/edit-course-dialog.tsx index f423e7c..0f08861 100644 --- a/src/modules/course/features/edit-course-dialog.tsx +++ b/src/modules/course/features/edit-course-dialog.tsx @@ -1,6 +1,7 @@ "use client"; import { useEffect, useState } from "react"; +import { useRouter } from "next/navigation"; import { api } from "~/trpc/react"; import { Button } from "~/components/ui/button"; @@ -17,6 +18,7 @@ import { Input } from "~/components/ui/input"; import { Label } from "~/components/ui/label"; import { Textarea } from "~/components/ui/textarea"; import { useToast } from "~/hooks/use-toast"; +import { ConfirmDeleteDialog } from "~/modules/course/features/confirm-delete-dialog"; interface EditCourseDialogProps { courseId: string; @@ -37,7 +39,9 @@ export function EditCourseDialog({ description ?? "" ); const [isSubmitting, setIsSubmitting] = useState(false); + const [confirmDeleteOpen, setConfirmDeleteOpen] = useState(false); const { toast } = useToast(); + const router = useRouter(); const utils = api.useUtils(); @@ -67,6 +71,26 @@ export function EditCourseDialog({ }, }); + const deleteCourse = api.course.delete.useMutation({ + onSuccess: () => { + toast({ + title: "Course deleted", + description: "The course has been removed.", + }); + setConfirmDeleteOpen(false); + setOpen(false); + void utils.course.list.invalidate(); + router.push("/course"); + }, + onError: (error) => { + toast({ + title: "Delete failed", + description: error.message || "Failed to delete course", + variant: "destructive", + }); + }, + }); + const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!courseTitle.trim()) return; @@ -118,7 +142,14 @@ export function EditCourseDialog({ /> - + +