aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Ng <chrng8@gmail.com>2025-03-25 14:31:44 -0700
committerChristopher Ng <chrng8@gmail.com>2025-03-28 14:12:52 -0700
commita5885d46b6def193758c65db0247f11b6478926b (patch)
tree748025f74f4de1d11b6ec867108185e313670f03
parentd32f2c761e541e4e18800e324a698cb552135467 (diff)
downloadnextcloud-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.vue7
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) {