From effbb61707d7f53907696fdf57ca3a75a3c21c84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Z=C3=BCrcher?= Date: Tue, 4 Nov 2025 15:30:58 +0100 Subject: [PATCH] fix reference problem so value changes only after saving --- src/components/EventEditAllDialog.vue | 2 +- src/components/MemberEditAllDialog.vue | 2 +- src/components/RoleEditAllDialog.vue | 4 ++-- src/components/UserEditAllDialog.vue | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/components/EventEditAllDialog.vue b/src/components/EventEditAllDialog.vue index bfd2fd9..fa10496 100644 --- a/src/components/EventEditAllDialog.vue +++ b/src/components/EventEditAllDialog.vue @@ -49,7 +49,7 @@ function open(Event: Event | null) { } if (Event !== null) { - localEvent.value = Event; + localEvent.value = { ...Event }; newEvent.value = false; } else { localEvent.value = { diff --git a/src/components/MemberEditAllDialog.vue b/src/components/MemberEditAllDialog.vue index bd06dab..dac5564 100644 --- a/src/components/MemberEditAllDialog.vue +++ b/src/components/MemberEditAllDialog.vue @@ -132,7 +132,7 @@ function open(member: Member | null) { } if (member !== null) { - localMember.value = member; + localMember.value = { ...member }; newMember.value = false; } else { localMember.value = { diff --git a/src/components/RoleEditAllDialog.vue b/src/components/RoleEditAllDialog.vue index 8d49ef8..8ffd5cc 100644 --- a/src/components/RoleEditAllDialog.vue +++ b/src/components/RoleEditAllDialog.vue @@ -60,7 +60,7 @@ function open(role: Role | null, typ?: 'permissions') { showRoleField.value = typ !== 'permissions'; if (role !== null) { - localRole.value = role; + localRole.value = { ...role }; localRole.value.permissions = role.permissions || defaultPermissions; newRole.value = false; } else { @@ -80,7 +80,7 @@ function save() { if (newRole.value) { query = 'roles/add'; update = false; - localRole.value.permissions = defaultPermissions; + localRole.value.permissions = localRole.value.permissions ?? defaultPermissions; } appApi diff --git a/src/components/UserEditAllDialog.vue b/src/components/UserEditAllDialog.vue index e9f16ff..828725d 100644 --- a/src/components/UserEditAllDialog.vue +++ b/src/components/UserEditAllDialog.vue @@ -149,7 +149,7 @@ async function open(user: User | null) { } if (user !== null) { - localUser.value = user; + localUser.value = { ...user }; newUser.value = false; } else { localUser.value = {