diff --git a/components/form/contest/contest-detail-form.tsx b/components/form/contest/contest-detail-form.tsx
index 496e8357..984c3d3e 100644
--- a/components/form/contest/contest-detail-form.tsx
+++ b/components/form/contest/contest-detail-form.tsx
@@ -310,8 +310,18 @@ export default function FormContestDetail() {
const handleCheckboxChange = (levelId: number) => {
setCheckedLevels((prev) => {
const updatedLevels = new Set(prev);
- if (updatedLevels.has(levelId)) {
+ const isCurrentlyChecked = updatedLevels.has(levelId);
+
+ if (isCurrentlyChecked) {
updatedLevels.delete(levelId);
+
+ // Jika ini adalah POLDA yang di-unchecklist, unchecklist juga semua polres di bawahnya
+ const poldaItem = listDest.find((item: any) => item.id === levelId);
+ if (poldaItem && poldaItem.subDestination) {
+ poldaItem.subDestination.forEach((polres: any) => {
+ updatedLevels.delete(polres.id);
+ });
+ }
} else {
updatedLevels.add(levelId);
}
@@ -840,7 +850,7 @@ export default function FormContestDetail() {
}}
/>
))}
@@ -897,7 +907,7 @@ export default function FormContestDetail() {
}}
/>
))}