mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
Merge pull request #31345 from nextcloud/fix/31164/delete-additional-email
Fix deletion of additional emails
This commit is contained in:
commit
4ecedffb5b
4 changed files with 11 additions and 7 deletions
|
|
@ -51,7 +51,6 @@
|
|||
|
||||
<Actions class="email__actions"
|
||||
:aria-label="t('settings', 'Email options')"
|
||||
:disabled="deleteDisabled"
|
||||
:force-menu="true">
|
||||
<ActionButton :aria-label="deleteEmailLabel"
|
||||
:close-after-click="true"
|
||||
|
|
|
|||
|
|
@ -46,8 +46,9 @@
|
|||
|
||||
<template v-if="additionalEmails.length">
|
||||
<em class="additional-emails-label">{{ t('settings', 'Additional emails') }}</em>
|
||||
<!-- TODO use unique key for additional email when uniqueness can be guaranteed, see https://github.com/nextcloud/server/issues/26866 -->
|
||||
<Email v-for="(additionalEmail, index) in additionalEmails"
|
||||
:key="index"
|
||||
:key="additionalEmail.key"
|
||||
:index="index"
|
||||
:scope.sync="additionalEmail.scope"
|
||||
:email.sync="additionalEmail.value"
|
||||
|
|
@ -85,7 +86,7 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
accountProperty: ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL,
|
||||
additionalEmails,
|
||||
additionalEmails: additionalEmails.map(properties => ({ ...properties, key: this.generateUniqueKey() })),
|
||||
displayNameChangeSupported,
|
||||
primaryEmail,
|
||||
savePrimaryEmailScope,
|
||||
|
|
@ -119,7 +120,7 @@ export default {
|
|||
methods: {
|
||||
onAddAdditionalEmail() {
|
||||
if (this.isValidSection) {
|
||||
this.additionalEmails.push({ value: '', scope: DEFAULT_ADDITIONAL_EMAIL_SCOPE })
|
||||
this.additionalEmails.push({ value: '', scope: DEFAULT_ADDITIONAL_EMAIL_SCOPE, key: this.generateUniqueKey() })
|
||||
}
|
||||
},
|
||||
|
||||
|
|
@ -184,6 +185,10 @@ export default {
|
|||
this.logger.error(errorMessage, error)
|
||||
}
|
||||
},
|
||||
|
||||
generateUniqueKey() {
|
||||
return Math.random().toString(36).substring(2)
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
|
|||
4
dist/settings-vue-settings-personal-info.js
vendored
4
dist/settings-vue-settings-personal-info.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue