diff options
author | Christopher Ng <chrng8@gmail.com> | 2025-03-25 14:31:44 -0700 |
---|---|---|
committer | Christopher Ng <chrng8@gmail.com> | 2025-03-28 14:12:52 -0700 |
commit | a5885d46b6def193758c65db0247f11b6478926b (patch) | |
tree | 748025f74f4de1d11b6ec867108185e313670f03 | |
parent | d32f2c761e541e4e18800e324a698cb552135467 (diff) | |
download | nextcloud-server-a5885d46b6def193758c65db0247f11b6478926b.tar.gz nextcloud-server-a5885d46b6def193758c65db0247f11b6478926b.zip |
fix(settings): Prevent selection of invalid groups that are not fully loaded
Signed-off-by: Christopher Ng <chrng8@gmail.com>
-rw-r--r-- | apps/settings/src/components/Users/UserRow.vue | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/settings/src/components/Users/UserRow.vue b/apps/settings/src/components/Users/UserRow.vue index 45e05642f11..7dc0204daa9 100644 --- a/apps/settings/src/components/Users/UserRow.vue +++ b/apps/settings/src/components/Users/UserRow.vue @@ -106,7 +106,7 @@ :data-loading="loading.groups || undefined" :input-id="'groups' + uniqueId" :close-on-select="false" - :disabled="isLoadingField" + :disabled="isLoadingField || loading.groupDetails" :loading="loading.groups" :multiple="true" :append-to-body="false" @@ -141,7 +141,7 @@ :data-loading="loading.subadmins || undefined" :input-id="'subadmins' + uniqueId" :close-on-select="false" - :disabled="isLoadingField" + :disabled="isLoadingField || loading.groupDetails" :loading="loading.subadmins" label="name" :append-to-body="false" @@ -368,6 +368,7 @@ export default { password: false, mailAddress: false, groups: false, + groupDetails: false, subadmins: false, quota: false, delete: false, @@ -556,6 +557,7 @@ export default { async loadGroupDetails() { this.loading.groups = true + this.loading.groupDetails = true try { const groups = await loadUserGroups({ userId: this.user.id }) this.availableGroups = this.availableGroups.map(availableGroup => groups.find(group => group.id === availableGroup.id) ?? availableGroup) @@ -563,6 +565,7 @@ export default { logger.error(t('settings', 'Failed to load groups with details'), { error }) } this.loading.groups = false + this.loading.groupDetails = false }, async searchGroups(query, toggleLoading) { |