mirror of
https://github.com/nextcloud/server.git
synced 2026-04-23 15:21:00 -04:00
fix(files_sharing): Apply default password setting in SharingDetailsTab
Signed-off-by: nfebe <fenn25.fn@gmail.com> [skip ci]
This commit is contained in:
parent
1044a44aa8
commit
cc9ec2607a
3 changed files with 23 additions and 39 deletions
|
|
@ -222,7 +222,6 @@ import { showError, showSuccess } from '@nextcloud/dialogs'
|
|||
import { ShareType } from '@nextcloud/sharing'
|
||||
import VueQrcode from '@chenfengyuan/vue-qrcode'
|
||||
import moment from '@nextcloud/moment'
|
||||
import Vue from 'vue'
|
||||
|
||||
import NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'
|
||||
import NcActionCheckbox from '@nextcloud/vue/dist/Components/NcActionCheckbox.js'
|
||||
|
|
@ -383,23 +382,6 @@ export default {
|
|||
}
|
||||
return null
|
||||
},
|
||||
/**
|
||||
* Is the current share password protected ?
|
||||
*
|
||||
* @return {boolean}
|
||||
*/
|
||||
isPasswordProtected: {
|
||||
get() {
|
||||
return this.config.enforcePasswordForPublicLink
|
||||
|| !!this.share.password
|
||||
},
|
||||
async set(enabled) {
|
||||
// TODO: directly save after generation to make sure the share is always protected
|
||||
Vue.set(this.share, 'password', enabled ? await GeneratePassword(true) : '')
|
||||
Vue.set(this.share, 'newPassword', this.share.password)
|
||||
},
|
||||
},
|
||||
|
||||
passwordExpirationTime() {
|
||||
if (this.share.passwordExpirationTime === null) {
|
||||
return null
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import { emit } from '@nextcloud/event-bus'
|
|||
import PQueue from 'p-queue'
|
||||
import debounce from 'debounce'
|
||||
|
||||
import GeneratePassword from '../utils/GeneratePassword.ts'
|
||||
import Share from '../models/Share.ts'
|
||||
import SharesRequests from './ShareRequests.js'
|
||||
import Config from '../services/ConfigService.ts'
|
||||
|
|
@ -156,6 +157,26 @@ export default {
|
|||
}
|
||||
return null
|
||||
},
|
||||
/**
|
||||
* Is the current share password protected ?
|
||||
*
|
||||
* @return {boolean}
|
||||
*/
|
||||
isPasswordProtected: {
|
||||
get() {
|
||||
return this.config.enforcePasswordForPublicLink
|
||||
|| !!this.share.password
|
||||
},
|
||||
async set(enabled) {
|
||||
if (enabled) {
|
||||
this.share.password = await GeneratePassword(true)
|
||||
this.$set(this.share, 'newPassword', this.share.password)
|
||||
} else {
|
||||
this.share.password = ''
|
||||
this.$delete(this.share, 'newPassword')
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
|
|
|||
|
|
@ -496,26 +496,6 @@ export default {
|
|||
: ''
|
||||
},
|
||||
},
|
||||
/**
|
||||
* Is the current share password protected ?
|
||||
*
|
||||
* @return {boolean}
|
||||
*/
|
||||
isPasswordProtected: {
|
||||
get() {
|
||||
return this.config.enforcePasswordForPublicLink
|
||||
|| !!this.share.password
|
||||
},
|
||||
async set(enabled) {
|
||||
if (enabled) {
|
||||
this.share.password = await GeneratePassword(true)
|
||||
this.$set(this.share, 'newPassword', this.share.password)
|
||||
} else {
|
||||
this.share.password = ''
|
||||
this.$delete(this.share, 'newPassword')
|
||||
}
|
||||
},
|
||||
},
|
||||
/**
|
||||
* Is the current share a folder ?
|
||||
*
|
||||
|
|
@ -873,8 +853,9 @@ export default {
|
|||
async initializeAttributes() {
|
||||
|
||||
if (this.isNewShare) {
|
||||
if (this.isPasswordEnforced && this.isPublicShare) {
|
||||
if ((this.config.enableLinkPasswordByDefault || this.isPasswordEnforced) && this.isPublicShare) {
|
||||
this.$set(this.share, 'newPassword', await GeneratePassword(true))
|
||||
this.$set(this.share, 'password', this.share.newPassword)
|
||||
this.advancedSectionAccordionExpanded = true
|
||||
}
|
||||
/* Set default expiration dates if configured */
|
||||
|
|
|
|||
Loading…
Reference in a new issue