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:
authorAnna <anna@nextcloud.com>2022-04-07 23:55:25 +0300
committerGitHub <noreply@github.com>2022-04-07 23:55:25 +0300
commit9d846bde2a64890275cf87bc6809cf9904eb23a2 (patch)
treef920060a270c6c3695b5c7ef3df64f9c886de30c /src
parent45bb14c63dde910350059adf4edd77597be396fc (diff)
parent851ee71f3c8a33af071d1fcf69ed72e5c6f88692 (diff)
Merge pull request #6204 from nextcloud/fix/outbox-resend-no-enqueue
Do not re-enqueue outbox messages when they are sent
Diffstat (limited to 'src')
-rw-r--r--src/components/NewMessageModal.vue4
-rw-r--r--src/store/mutations.js4
-rw-r--r--src/store/outbox/actions.js6
3 files changed, 12 insertions, 2 deletions
diff --git a/src/components/NewMessageModal.vue b/src/components/NewMessageModal.vue
index c3736f0b7..62e02d557 100644
--- a/src/components/NewMessageModal.vue
+++ b/src/components/NewMessageModal.vue
@@ -97,9 +97,9 @@ export default {
inReplyToMessageId: null,
sendAt: Math.floor(now / 1000), // JS timestamp is in milliseconds
}
- // TODO: update the message instead of enqueing another time
- const message = await this.$store.dispatch('outbox/enqueueMessage', {
+ const message = await this.$store.dispatch('outbox/updateMessage', {
message: dataForServer,
+ id: this.composerData.id,
})
await this.$store.dispatch('outbox/sendMessage', { id: message.id })
diff --git a/src/store/mutations.js b/src/store/mutations.js
index 9bb71337e..34fa44984 100644
--- a/src/store/mutations.js
+++ b/src/store/mutations.js
@@ -183,6 +183,10 @@ export default {
},
})
},
+ convertComposerMessageToOutbox(state, { message }) {
+ Vue.set(state.newMessage, 'type', 'outbox')
+ Vue.set(state.newMessage.data, 'id', message.id)
+ },
hideMessageComposer(state) {
Vue.delete(state, 'newMessage')
},
diff --git a/src/store/outbox/actions.js b/src/store/outbox/actions.js
index ce8417612..5a2bb2ef3 100644
--- a/src/store/outbox/actions.js
+++ b/src/store/outbox/actions.js
@@ -48,6 +48,12 @@ export default {
async enqueueMessage({ commit }, { message }) {
message = await OutboxService.enqueueMessage(message)
commit('addMessage', { message })
+
+ // Future drafts/sends after an error should go through outbox logic
+ commit('convertComposerMessageToOutbox', { message }, {
+ root: true,
+ })
+
return message
},