Consider read permission in sharing tab

When updating a share we should make sure to use all the old permissions
(and only change what we actually changed). So the READ permission in
this case should also be fetched instead of always granted.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
Roeland Jago Douma 2021-04-19 15:10:51 +02:00
parent 9a69b88393
commit 68dadc01af
4 changed files with 28 additions and 5 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -326,6 +326,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)

View File

@ -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
*