From: Ferdinand Thiessen Date: Fri, 29 Mar 2024 14:30:39 +0000 (+0100) Subject: fix(files_sharing): Create passwords when enforced for mail shares X-Git-Tag: v29.0.0rc2~1^2~1 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2c2a269042c0dbc75658af9ec9f5a187992b36ad;p=nextcloud-server.git fix(files_sharing): Create passwords when enforced for mail shares Signed-off-by: Ferdinand Thiessen --- diff --git a/apps/files_sharing/src/models/Share.js b/apps/files_sharing/src/models/Share.js index 5504c63b345..b88d376a0ff 100644 --- a/apps/files_sharing/src/models/Share.js +++ b/apps/files_sharing/src/models/Share.js @@ -43,11 +43,11 @@ export default class Share { ocsData.hide_download = !!ocsData.hide_download ocsData.mail_send = !!ocsData.mail_send - if (ocsData.attributes) { + if (ocsData.attributes && typeof ocsData.attributes === 'string') { try { ocsData.attributes = JSON.parse(ocsData.attributes) } catch (e) { - console.warn('Could not parse share attributes returned by server: "' + ocsData.attributes + '"') + console.warn('Could not parse share attributes returned by server', ocsData.attributes) } } ocsData.attributes = ocsData.attributes ?? [] @@ -310,7 +310,7 @@ export default class Share { * @memberof Share */ get label() { - return this._share.label + return this._share.label ?? '' } /** diff --git a/apps/files_sharing/src/views/SharingDetailsTab.vue b/apps/files_sharing/src/views/SharingDetailsTab.vue index e852a0f8599..5e7f7c1b452 100644 --- a/apps/files_sharing/src/views/SharingDetailsTab.vue +++ b/apps/files_sharing/src/views/SharingDetailsTab.vue @@ -509,7 +509,7 @@ export default { return this.share.type === this.SHARE_TYPES.SHARE_TYPE_GROUP }, isNewShare() { - return this.share.id === null || this.share.id === undefined + return !this.share.id }, allowsFileDrop() { if (this.isFolder && this.config.isPublicUploadEnabled) { @@ -788,13 +788,10 @@ export default { }, handleShareType() { - if (this.share.share_type) { - this.share.type = this.share.share_type - } - // shareType 0 (USER_SHARE) would evaluate to zero - // Hence the use of hasOwnProperty if ('shareType' in this.share) { this.share.type = this.share.shareType + } else if (this.share.share_type) { + this.share.type = this.share.share_type } }, handleDefaultPermissions() { @@ -815,7 +812,7 @@ export default { this.sharingPermission = 'custom' this.advancedSectionAccordionExpanded = true this.setCustomPermissions = true - } else { + } else if (this.share.permissions) { this.sharingPermission = this.share.permissions.toString() } },