From 69d9fc66cbd2a876b31e510ae3d58ab5eaec8ea8 Mon Sep 17 00:00:00 2001 From: Wikzyy Date: Thu, 20 Mar 2025 14:40:18 +0700 Subject: [PATCH] add form validation to prevent empty input --- .../settings/user/manage-position/blocks/AddDialog.tsx | 6 ++++++ .../settings/user/manage-position/blocks/EditDialog.tsx | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/pages/settings/user/manage-position/blocks/AddDialog.tsx b/src/pages/settings/user/manage-position/blocks/AddDialog.tsx index 1c0dd94..6c32480 100644 --- a/src/pages/settings/user/manage-position/blocks/AddDialog.tsx +++ b/src/pages/settings/user/manage-position/blocks/AddDialog.tsx @@ -83,6 +83,12 @@ const AddDialog = () => { const doCreatePosition = useCallback( async (e: React.FormEvent) => { e.preventDefault(); + + if (formField.name.trim() === '') { + setAlert({ show: true, message: 'Please fill in all required fields.' }); + return; + } + const response = await PostData(`${API_URL}/user_role/create`, { name: formField.name, roles: selectMenus, diff --git a/src/pages/settings/user/manage-position/blocks/EditDialog.tsx b/src/pages/settings/user/manage-position/blocks/EditDialog.tsx index 4209f2e..d000fac 100644 --- a/src/pages/settings/user/manage-position/blocks/EditDialog.tsx +++ b/src/pages/settings/user/manage-position/blocks/EditDialog.tsx @@ -91,6 +91,12 @@ const EditDialog = () => { const doEditPosition = useCallback( async (e: React.FormEvent) => { e.preventDefault(); + + if (formField.name.trim() === '') { + setAlert((prev) => ({ ...prev, show: true, message: 'Please fill name field.' })); + return; + } + if (!selectedPosition) { toast.success('Please Select Position'); return;