Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/mail.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgreta <gretadoci@gmail.com>2022-05-01 18:53:00 +0300
committergreta <gretadoci@gmail.com>2022-05-02 14:08:25 +0300
commit368a36959857b567e280dd190a45187d9db6a179 (patch)
treed5fa6b54cb18ab196c981ef898cc245731bdd3c1 /src
parent696560b38125363f9ba0a419425c712dab6c9efa (diff)
Fix discard message on outbox and improve the discard new message
Signed-off-by: greta <gretadoci@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/components/Composer.vue16
-rw-r--r--src/components/NewMessageModal.vue21
2 files changed, 22 insertions, 15 deletions
diff --git a/src/components/Composer.vue b/src/components/Composer.vue
index ed245d82b..233666504 100644
--- a/src/components/Composer.vue
+++ b/src/components/Composer.vue
@@ -317,10 +317,6 @@
:hint="t('mail', 'Sending …')"
role="alert"
class="sending-hint" />
- <Loading v-else-if="state === STATES.DISCARDING" :hint="t('mail', 'Discarding …')" class="emptycontent" />
- <EmptyContent v-else-if="state === STATES.DISCARDED" icon="icon-mail">
- <h2>{{ t('mail', 'Draft was discarded!') }}</h2>
- </EmptyContent>
<div v-else-if="state === STATES.ERROR" class="emptycontent" role="alert">
<h2>{{ t('mail', 'Error sending your message') }}</h2>
<p v-if="errorText">
@@ -1041,16 +1037,8 @@ export default {
return `${alias.name} <${alias.emailAddress}>`
},
async discardDraft() {
- this.state = STATES.DISCARDING
- let id
- try {
- id = await this.draftsPromise
- await this.$store.dispatch('deleteMessage', { id })
- } catch (err) {
- logger.error('Could not delete message with id ' + id)
- }
- this.state = STATES.DISCARDED
- this.$emit('close')
+ const id = await this.draftsPromise
+ this.$emit('discard-draft', id)
},
/**
* Whether the date is acceptable
diff --git a/src/components/NewMessageModal.vue b/src/components/NewMessageModal.vue
index b9aac64f9..9670af498 100644
--- a/src/components/NewMessageModal.vue
+++ b/src/components/NewMessageModal.vue
@@ -17,6 +17,7 @@
:draft="saveDraft"
:send="sendMessage"
:forwarded-messages="forwardedMessages"
+ @discard-draft="discardDraft"
@close="$emit('close')" />
</Modal>
</template>
@@ -26,7 +27,7 @@ import logger from '../logger'
import { toPlain } from '../util/text'
import { saveDraft } from '../service/MessageService'
import Composer from './Composer'
-import { showError, showUndo } from '@nextcloud/dialogs'
+import { showError, showSuccess, showUndo } from '@nextcloud/dialogs'
import { translate as t } from '@nextcloud/l10n'
import { UNDO_DELAY } from '../store/constants'
@@ -187,6 +188,24 @@ export default {
return `"${recipient.label}" <${recipient.email}>`
}
},
+ async discardDraft(id) {
+ const isOutbox = this.composerMessage.type === 'outbox'
+ if (isOutbox) {
+ id = this.composerMessage.data.id
+ }
+ this.$emit('close')
+ try {
+ if (isOutbox) {
+ await this.$store.dispatch('outbox/deleteMessage', { id })
+ } else {
+ await this.$store.dispatch('deleteMessage', { id })
+ }
+ showSuccess(t('mail', 'Message discarded'))
+ } catch (error) {
+ console.error(error)
+ showError(t('mail', 'Could not discard message'))
+ }
+ },
},
}