diff --git a/src/pages/settings/user/manage-user/blocks/AddDialog.tsx b/src/pages/settings/user/manage-user/blocks/AddDialog.tsx index 333f84c..afff2f6 100644 --- a/src/pages/settings/user/manage-user/blocks/AddDialog.tsx +++ b/src/pages/settings/user/manage-user/blocks/AddDialog.tsx @@ -134,23 +134,30 @@ const AddDialog = () => { async (e: React.FormEvent) => { e.preventDefault(); - const response = await PostData(`${API_URL}/user/create`, formField); + try { + const response = await PostData(`${API_URL}/user/create`, formField); - if (response?.status) { - handleAddDialog(false); - resetForm(); - reload(); - const createActivity = { - module: 'Manage User', - description: `Create New User => ${formField.username}`, - action: 'C' - }; + if (response?.status) { + handleAddDialog(false); + resetForm(); + reload(); + const createActivity = { + module: 'Manage User', + description: `Create New User => ${formField.username}`, + action: 'C' + }; - doSaveLogActivity(createActivity); - toast.success('Success Create User'); - } else { - toast.error('Failed to create user'); - setAlert({ show: true, message: 'Failed to create user. Please try again.' }); + doSaveLogActivity(createActivity); + toast.success('Success Create User'); + } else { + toast.error('Failed to create user'); + setAlert({ show: true, message: 'Failed to create user. Please try again.' }); + } + } catch (err) { + toast.error('Something went wrong'); + console.log(err); + } finally { + setIsSubmitting(false); } }, [formField] @@ -204,6 +211,8 @@ const AddDialog = () => { // console.log('Form data before submit:', formField); + if (isSubmitting) return; + if ( formField.email.trim() === '' || formField.username.trim() === '' || @@ -218,6 +227,7 @@ const AddDialog = () => { return; } + setIsSubmitting(true); doCreateUser(e); // console.log(formField); setAlert({ show: false, message: '' }); @@ -505,7 +515,7 @@ const AddDialog = () => {