aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorFerdinand Thiessen <opensource@fthiessen.de>2024-03-29 15:30:39 +0100
committerbackportbot[bot] <backportbot[bot]@users.noreply.github.com>2024-03-29 14:39:43 +0000
commit5612d42bcc58044861ea00de840504c8a6d06097 (patch)
treedfab35a58f76181b098f6f27f863c2982f16506d /apps
parenta40838b61cfbad9fc3d969b82179f12308b8cd09 (diff)
downloadnextcloud-server-5612d42bcc58044861ea00de840504c8a6d06097.tar.gz
nextcloud-server-5612d42bcc58044861ea00de840504c8a6d06097.zip
fix(files_sharing): Create passwords when enforced for mail shares
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Diffstat (limited to 'apps')
-rw-r--r--apps/files_sharing/src/models/Share.js6
-rw-r--r--apps/files_sharing/src/views/SharingDetailsTab.vue11
2 files changed, 7 insertions, 10 deletions
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 92222a05c5a..b15ec472804 100644
--- a/apps/files_sharing/src/views/SharingDetailsTab.vue
+++ b/apps/files_sharing/src/views/SharingDetailsTab.vue
@@ -508,7 +508,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) {
@@ -787,13 +787,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() {
@@ -814,7 +811,7 @@ export default {
this.sharingPermission = 'custom'
this.advancedSectionAccordionExpanded = true
this.setCustomPermissions = true
- } else {
+ } else if (this.share.permissions) {
this.sharingPermission = this.share.permissions.toString()
}
},