aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfenn-cs <fenn25.fn@gmail.com>2024-07-05 21:25:54 +0100
committerfenn-cs <fenn25.fn@gmail.com>2024-07-05 21:26:13 +0100
commit7e208977dcd0aa0ce2b6a51b4a12e6bb98cdc4d9 (patch)
treed2282d6ae0968177e749c8493c2cec5d73faa69c
parent656e109d2fe4aa8af3b68350cb1be342c4f4a5b8 (diff)
downloadnextcloud-server-fix/update-share-entry-quick-select.tar.gz
nextcloud-server-fix/update-share-entry-quick-select.zip
WIP: Update quick share select optionfix/update-share-entry-quick-select
`SharingEntryQuickSelect` should respond to changes and reflect the new state of shares when updates are done in the `SharingDetailsTab` Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
-rw-r--r--apps/files_sharing/src/components/SharingEntry.vue19
-rw-r--r--apps/files_sharing/src/views/SharingList.vue5
-rw-r--r--apps/files_sharing/src/views/SharingTab.vue22
3 files changed, 46 insertions, 0 deletions
diff --git a/apps/files_sharing/src/components/SharingEntry.vue b/apps/files_sharing/src/components/SharingEntry.vue
index 23127a6fe16..40cae7d1ca3 100644
--- a/apps/files_sharing/src/components/SharingEntry.vue
+++ b/apps/files_sharing/src/components/SharingEntry.vue
@@ -63,6 +63,20 @@ export default {
},
mixins: [SharesMixin, ShareDetails],
+ props: {
+ share: {
+ type: Object,
+ required: true,
+ },
+ fileInfo: {
+ type: Object,
+ required: true,
+ },
+ isUnique: {
+ type: Boolean,
+ required: true,
+ },
+ },
computed: {
title() {
@@ -119,6 +133,11 @@ export default {
this.onNoteSubmit()
},
},
+ watch: {
+ share(newShare) {
+ console.log('Shareeeeee prop changed:', newShare)
+ }
+ },
}
</script>
diff --git a/apps/files_sharing/src/views/SharingList.vue b/apps/files_sharing/src/views/SharingList.vue
index 7294294afa4..c3d8602382f 100644
--- a/apps/files_sharing/src/views/SharingList.vue
+++ b/apps/files_sharing/src/views/SharingList.vue
@@ -53,5 +53,10 @@ export default {
}
},
},
+ watch: {
+ shares(old, newShares) {
+ console.log('Shares prop changed:', old, newShares)
+ }
+ }
}
</script>
diff --git a/apps/files_sharing/src/views/SharingTab.vue b/apps/files_sharing/src/views/SharingTab.vue
index 7e58cb6401e..e9d0d4596a4 100644
--- a/apps/files_sharing/src/views/SharingTab.vue
+++ b/apps/files_sharing/src/views/SharingTab.vue
@@ -77,6 +77,7 @@
:share="shareDetailsData.share"
@close-sharing-details="toggleShareDetailsView"
@add:share="addShare"
+ @update:share="handleShareUpdated"
@remove:share="removeShare" />
</div>
</template>
@@ -400,6 +401,27 @@ export default {
})
}
},
+
+ handleShareUpdated(updatedShare) {
+ // Check if the updated share is in the `shares` list
+ let index = this.shares.findIndex(share => share.id === updatedShare.id)
+ if (index !== -1) {
+ console.log("Let us see", this.shares[index].permissions, updatedShare.permissions)
+ // Update the share in the `shares` list
+ this.$set(this.shares, index, updatedShare)
+ console.log('Updated???', updatedShare)
+ console.log("Let us see (AFTER)", this.shares[index].permissions, updatedShare.permissions)
+ } else {
+ // Check if the updated share is in the `linkShares` list
+ index = this.linkShares.findIndex(share => share.id === updatedShare.id)
+ if (index !== -1) {
+ // Update the share in the `linkShares` list
+ this.$set(this.linkShares, index, updatedShare)
+ this.linkShares[index] = updatedShare
+ console.log('Updated link???', updatedShare)
+ }
+ }
+ },
},
}
</script>