@ -75,13 +75,14 @@
< NcAppSettingsSection id = "default-settings"
: name = "t('settings', 'Defaults')" >
< NcSelect v -model = " defaultQuota "
: clearable = "false"
: create - option = "validateQuota"
: filter - by = "filterQuotas"
: input - label = "t('settings', 'Default quota')"
placement = "top"
: taggable = "true"
: options = "quotaOptions"
: create - option = "validateQuota "
placement = "top"
: placeholder = "t('settings', 'Select default quota')"
: clearable = "false"
taggable
@ option : selected = "setDefaultQuota" / >
< / NcAppSettingsSection >
< / NcAppSettingsDialog >
@ -100,6 +101,7 @@ import NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'
import { GroupSorting } from '../../constants/GroupManagement.ts'
import { unlimitedQuota } from '../../utils/userUtils.ts'
import logger from '../../logger.ts'
export default {
name : 'UserSettingsDialog' ,
@ -243,8 +245,8 @@ export default {
newUserSendEmail : value ,
} )
await axios . post ( generateUrl ( '/settings/users/preferences/newUser.sendEmail' ) , { value : value ? 'yes' : 'no' } )
} catch ( e ) {
console. error ( 'could not update newUser.sendEmail preference: ' + e . message , e )
} catch ( e rror ) {
logger. error ( 'Could not update newUser.sendEmail preference' , { error } )
} finally {
this . loadingSendMail = false
}
@ -253,6 +255,22 @@ export default {
} ,
methods : {
/ * *
* Check if a quota matches the current search .
* This is a custom filter function to allow to map "1GB" to the label "1 GB" ( ignoring whitespaces ) .
*
* @ param option The quota to check
* @ param label The label of the quota
* @ param search The search string
* /
filterQuotas ( option , label , search ) {
const searchValue = search . toLocaleLowerCase ( ) . replaceAll ( /\s/g , '' )
return ( label || '' )
. toLocaleLowerCase ( )
. replaceAll ( /\s/g , '' )
. indexOf ( searchValue ) > - 1
} ,
setShowConfig ( key , status ) {
this . $store . commit ( 'setShowConfig' , { key , value : status } )
} ,
@ -268,14 +286,13 @@ export default {
quota = quota ? . id || quota . label
}
/ / o n l y u s e d f o r n e w p r e s e t s s e n t t h r o u g h @ T a g
const validQuota = parseFileSize ( quota )
const validQuota = parseFileSize ( quota , true )
if ( validQuota === null ) {
return unlimitedQuota
} else {
/ / u n i f y f o r m a t o u t p u t
quota = formatFileSize ( parseFileSize ( quota ) )
return { id : quota , label : quota }
}
/ / u n i f y f o r m a t o u t p u t
quota = formatFileSize ( validQuota )
return { id : quota , label : quota }
} ,
/ * *