fixed user update

This commit is contained in:
2026-03-15 23:41:58 -05:00
parent 89282896e8
commit daced2b7c9

View File

@@ -169,24 +169,34 @@ export function UserManagementPage() {
return; return;
} }
try {
await saveUser(); await saveUser();
} catch (error: unknown) {
setStatus(error instanceof Error ? error.message : "Unable to save user.");
}
} }
async function saveUser() { async function saveUser() {
const normalizedUserForm: AdminUserInput = {
...userForm,
password: userForm.password && userForm.password.trim().length > 0 ? userForm.password : null,
};
if (selectedUserId === "new") { if (selectedUserId === "new") {
const createdUser = await api.createAdminUser(authToken, userForm); const createdUser = await api.createAdminUser(authToken, normalizedUserForm);
await refreshData(`Created user ${createdUser.email}.`); await refreshData(`Created user ${createdUser.email}.`);
setSelectedUserId(createdUser.id); setSelectedUserId(createdUser.id);
return; return;
} }
const updatedUser = await api.updateAdminUser(authToken, selectedUserId, userForm); const updatedUser = await api.updateAdminUser(authToken, selectedUserId, normalizedUserForm);
await refreshData(`Updated user ${updatedUser.email}.`); await refreshData(`Updated user ${updatedUser.email}.`);
setSelectedUserId(updatedUser.id); setSelectedUserId(updatedUser.id);
} }
async function handleRoleSave(event: React.FormEvent<HTMLFormElement>) { async function handleRoleSave(event: React.FormEvent<HTMLFormElement>) {
event.preventDefault(); event.preventDefault();
try {
if (selectedRoleId === "new") { if (selectedRoleId === "new") {
const createdRole = await api.createAdminRole(authToken, roleForm); const createdRole = await api.createAdminRole(authToken, roleForm);
await refreshData(`Created role ${createdRole.name}.`); await refreshData(`Created role ${createdRole.name}.`);
@@ -197,6 +207,9 @@ export function UserManagementPage() {
const updatedRole = await api.updateAdminRole(authToken, selectedRoleId, roleForm); const updatedRole = await api.updateAdminRole(authToken, selectedRoleId, roleForm);
await refreshData(`Updated role ${updatedRole.name}.`); await refreshData(`Updated role ${updatedRole.name}.`);
setSelectedRoleId(updatedRole.id); setSelectedRoleId(updatedRole.id);
} catch (error: unknown) {
setStatus(error instanceof Error ? error.message : "Unable to save role.");
}
} }
function toggleUserRole(roleId: string) { function toggleUserRole(roleId: string) {