mirror of
https://github.com/nextcloud/server.git
synced 2026-04-23 07:08:34 -04:00
Refine unsupported federation scope checks
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 74aa115125)
This commit is contained in:
parent
be1444576d
commit
0ff49820c8
3 changed files with 22 additions and 4 deletions
|
|
@ -149,6 +149,7 @@ class PersonalInfo implements ISettings {
|
|||
|
||||
$accountParameters = [
|
||||
'displayNameChangeSupported' => $user->canChangeDisplayName(),
|
||||
'lookupServerUploadEnabled' => $lookupServerUploadEnabled,
|
||||
];
|
||||
|
||||
$this->initialStateService->provideInitialState('emails', $emails);
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ import { savePrimaryEmail, removeAdditionalEmail } from '../../../service/Person
|
|||
import { DEFAULT_ADDITIONAL_EMAIL_SCOPE } from '../../../constants/AccountPropertyConstants'
|
||||
|
||||
const { additionalEmails, primaryEmail } = loadState('settings', 'emails', {})
|
||||
const accountParams = loadState('settings', 'accountParameters', {})
|
||||
const { displayNameChangeSupported } = loadState('settings', 'accountParameters', {})
|
||||
|
||||
export default {
|
||||
name: 'EmailSection',
|
||||
|
|
@ -74,7 +74,6 @@ export default {
|
|||
|
||||
data() {
|
||||
return {
|
||||
accountParams,
|
||||
additionalEmails,
|
||||
primaryEmail,
|
||||
isValidForm: true,
|
||||
|
|
@ -83,7 +82,7 @@ export default {
|
|||
|
||||
computed: {
|
||||
isDisplayNameChangeSupported() {
|
||||
return this.accountParams.displayNameChangeSupported
|
||||
return displayNameChangeSupported
|
||||
},
|
||||
|
||||
primaryEmailValue: {
|
||||
|
|
|
|||
|
|
@ -42,11 +42,14 @@
|
|||
<script>
|
||||
import Actions from '@nextcloud/vue/dist/Components/Actions'
|
||||
import ActionButton from '@nextcloud/vue/dist/Components/ActionButton'
|
||||
import { loadState } from '@nextcloud/initial-state'
|
||||
import { showError } from '@nextcloud/dialogs'
|
||||
|
||||
import { SCOPE_ENUM, SCOPE_PROPERTY_ENUM } from '../../../constants/AccountPropertyConstants'
|
||||
import { savePrimaryEmailScope, saveAdditionalEmailScope } from '../../../service/PersonalInfoService'
|
||||
|
||||
const { lookupServerUploadEnabled } = loadState('settings', 'accountParameters', {})
|
||||
|
||||
// TODO hardcoded for email, should abstract this for other sections
|
||||
const excludedScopes = [SCOPE_ENUM.PRIVATE]
|
||||
|
||||
|
|
@ -80,11 +83,26 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
initialScope: this.scope,
|
||||
federationScopes: Object.values(SCOPE_PROPERTY_ENUM).filter(({ name }) => !excludedScopes.includes(name)),
|
||||
}
|
||||
},
|
||||
|
||||
computed: {
|
||||
federationScopes() {
|
||||
return Object.values(SCOPE_PROPERTY_ENUM).filter(({ name }) => !this.unsupportedScopes.includes(name))
|
||||
},
|
||||
|
||||
unsupportedScopes() {
|
||||
if (!lookupServerUploadEnabled) {
|
||||
return [
|
||||
...excludedScopes,
|
||||
SCOPE_ENUM.FEDERATED,
|
||||
SCOPE_ENUM.PUBLISHED,
|
||||
]
|
||||
}
|
||||
|
||||
return excludedScopes
|
||||
},
|
||||
|
||||
scopeIcon() {
|
||||
return SCOPE_PROPERTY_ENUM[this.scope].iconClass
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue