From 9b71ecbef36b80b285655899b6695836ca56cb31 Mon Sep 17 00:00:00 2001 From: abiyasa05 Date: Thu, 17 Oct 2024 08:36:28 +0700 Subject: [PATCH] update: add confirmation for button finish --- .../_dashboardLayout/assessment/index.lazy.tsx | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/apps/frontend/src/routes/_dashboardLayout/assessment/index.lazy.tsx b/apps/frontend/src/routes/_dashboardLayout/assessment/index.lazy.tsx index a902f32..5ef8086 100644 --- a/apps/frontend/src/routes/_dashboardLayout/assessment/index.lazy.tsx +++ b/apps/frontend/src/routes/_dashboardLayout/assessment/index.lazy.tsx @@ -23,6 +23,7 @@ import { toggleFlagAnswer, } from "@/modules/assessmentManagement/queries/assessmentQueries"; import { TbFlagFilled, TbUpload, TbChevronRight, TbChevronUp } from "react-icons/tb"; +import FinishAssessmentModal from "@/modules/assessmentManagement/modals/ConfirmModal"; import { useState, useRef, useEffect } from "react"; const getQueryParam = (param: string) => { @@ -58,7 +59,7 @@ export default function AssessmentPage() { [key: string]: boolean; }>({}); const fileInputRef = useRef(null); - + const [modalOpen, setModalOpen] = useState(false); const [selectedSubAspectId, setSelectedSubAspectId] = useState(null); const [assessmentId, setAssessmentId] = useState(null); const [answers, setAnswers] = useState<{ [key: string]: string }>({}); @@ -74,6 +75,10 @@ export default function AssessmentPage() { getQuestionsAllQueryOptions(page, limit) ); + const handleFinishClick = () => { + setModalOpen(true); + }; + useEffect(() => { const id = getQueryParam("id"); @@ -99,7 +104,7 @@ export default function AssessmentPage() { } }, [aspectsQuery.data, selectedSubAspectId, data?.data]); - const handleFinishClick = () => { + const handleConfirmFinish = () => { if (assessmentId) { // Menggunakan history.pushState untuk mengubah URL tanpa reload const newUrl = `/assessmentResult?id=${assessmentId}`; @@ -558,6 +563,14 @@ export default function AssessmentPage() { Selesai + + {/* Modal untuk konfirmasi selesai asesmen */} + setModalOpen(false)} + onConfirm={handleConfirmFinish} + assessmentId={assessmentId} + />