diff options
Diffstat (limited to 'apps/files_sharing/src')
-rw-r--r-- | apps/files_sharing/src/components/SharingEntry.vue | 13 | ||||
-rw-r--r-- | apps/files_sharing/src/models/Share.js | 12 |
2 files changed, 24 insertions, 1 deletions
diff --git a/apps/files_sharing/src/components/SharingEntry.vue b/apps/files_sharing/src/components/SharingEntry.vue index e07654a19c1..8167172ceea 100644 --- a/apps/files_sharing/src/components/SharingEntry.vue +++ b/apps/files_sharing/src/components/SharingEntry.vue @@ -327,6 +327,16 @@ export default { }, /** + * Is this share readable + * Needed for some federated shares that might have been added from file drop links + */ + hasRead: { + get() { + return this.share.hasReadPermission + }, + }, + + /** * Is the current share a folder ? * @returns {boolean} */ @@ -377,7 +387,8 @@ export default { methods: { updatePermissions({ isEditChecked = this.canEdit, isCreateChecked = this.canCreate, isDeleteChecked = this.canDelete, isReshareChecked = this.canReshare } = {}) { // calc permissions if checked - const permissions = this.permissionsRead + const permissions = 0 + | (this.hasRead ? this.permissionsRead : 0) | (isCreateChecked ? this.permissionsCreate : 0) | (isDeleteChecked ? this.permissionsDelete : 0) | (isEditChecked ? this.permissionsEdit : 0) diff --git a/apps/files_sharing/src/models/Share.js b/apps/files_sharing/src/models/Share.js index 085eab056df..7a4b96261c0 100644 --- a/apps/files_sharing/src/models/Share.js +++ b/apps/files_sharing/src/models/Share.js @@ -450,6 +450,18 @@ export default class Share { } // PERMISSIONS Shortcuts + + /** + * Does this share have READ permissions + * + * @returns {boolean} + * @readonly + * @memberof Share + */ + get hasReadPermission() { + return !!((this.permissions & OC.PERMISSION_READ)) + } + /** * Does this share have CREATE permissions * |