From daced2b7c9e9ab0eded983f0e4f339787f7e1f68 Mon Sep 17 00:00:00 2001 From: jason Date: Sun, 15 Mar 2026 23:41:58 -0500 Subject: [PATCH] fixed user update --- .../modules/settings/UserManagementPage.tsx | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/client/src/modules/settings/UserManagementPage.tsx b/client/src/modules/settings/UserManagementPage.tsx index 62496f5..d2ae8d0 100644 --- a/client/src/modules/settings/UserManagementPage.tsx +++ b/client/src/modules/settings/UserManagementPage.tsx @@ -169,34 +169,47 @@ export function UserManagementPage() { return; } - await saveUser(); + try { + await saveUser(); + } catch (error: unknown) { + setStatus(error instanceof Error ? error.message : "Unable to save user."); + } } async function saveUser() { + const normalizedUserForm: AdminUserInput = { + ...userForm, + password: userForm.password && userForm.password.trim().length > 0 ? userForm.password : null, + }; + if (selectedUserId === "new") { - const createdUser = await api.createAdminUser(authToken, userForm); + const createdUser = await api.createAdminUser(authToken, normalizedUserForm); await refreshData(`Created user ${createdUser.email}.`); setSelectedUserId(createdUser.id); return; } - const updatedUser = await api.updateAdminUser(authToken, selectedUserId, userForm); + const updatedUser = await api.updateAdminUser(authToken, selectedUserId, normalizedUserForm); await refreshData(`Updated user ${updatedUser.email}.`); setSelectedUserId(updatedUser.id); } async function handleRoleSave(event: React.FormEvent) { event.preventDefault(); - if (selectedRoleId === "new") { - const createdRole = await api.createAdminRole(authToken, roleForm); - await refreshData(`Created role ${createdRole.name}.`); - setSelectedRoleId(createdRole.id); - return; - } + try { + if (selectedRoleId === "new") { + const createdRole = await api.createAdminRole(authToken, roleForm); + await refreshData(`Created role ${createdRole.name}.`); + setSelectedRoleId(createdRole.id); + return; + } - const updatedRole = await api.updateAdminRole(authToken, selectedRoleId, roleForm); - await refreshData(`Updated role ${updatedRole.name}.`); - setSelectedRoleId(updatedRole.id); + const updatedRole = await api.updateAdminRole(authToken, selectedRoleId, roleForm); + await refreshData(`Updated role ${updatedRole.name}.`); + setSelectedRoleId(updatedRole.id); + } catch (error: unknown) { + setStatus(error instanceof Error ? error.message : "Unable to save role."); + } } function toggleUserRole(roleId: string) {