From 3894f2784ebf630061243beab592dcad3a81d150 Mon Sep 17 00:00:00 2001 From: Beaudan Brown Date: Wed, 4 Sep 2019 15:32:02 +1000 Subject: [PATCH 1/2] Clean up redundant repetition --- js/views/conversation_view.js | 88 ++++++++++++++--------------------- 1 file changed, 36 insertions(+), 52 deletions(-) diff --git a/js/views/conversation_view.js b/js/views/conversation_view.js index d057bba7e..f2408024b 100644 --- a/js/views/conversation_view.js +++ b/js/views/conversation_view.js @@ -1292,11 +1292,12 @@ }, deleteMessage(message) { - if (this.model.isPublic()) { - const dialog = new Whisper.ConfirmationDialogView({ - message: i18n('deletePublicWarning'), - okText: i18n('delete'), - resolve: async () => { + const warningMessage = this.model.isPublic() + ? i18n('deletePublicWarning') + : i18n('deleteWarning'); + + const resolve = this.model.isPublic() + ? async () => { const success = await this.model.deletePublicMessage(message); if (!success) { // Message failed to delete from server, show error? @@ -1308,25 +1309,21 @@ message.trigger('unload'); this.resetPanel(); this.updateHeader(); - }, - }); + } + : () => { + window.Signal.Data.removeMessage(message.id, { + Message: Whisper.Message, + }); + message.trigger('unload'); + this.model.messageCollection.remove(message.id); + this.resetPanel(); + this.updateHeader(); + }; - this.$el.prepend(dialog.el); - dialog.focusCancel(); - return; - } const dialog = new Whisper.ConfirmationDialogView({ - message: i18n('deleteWarning'), + message: warningMessage, okText: i18n('delete'), - resolve: () => { - window.Signal.Data.removeMessage(message.id, { - Message: Whisper.Message, - }); - message.trigger('unload'); - this.model.messageCollection.remove(message.id); - this.resetPanel(); - this.updateHeader(); - }, + resolve, }); this.$el.prepend(dialog.el); @@ -1511,37 +1508,24 @@ }, destroyMessages() { - if (this.model.isPublic()) { - Whisper.events.trigger('showConfirmationDialog', { - message: i18n('deletePublicConversationConfirmation'), - onOk: async () => { - try { - await this.model.destroyMessages(); - this.unload('delete messages'); - } catch (error) { - window.log.error( - 'destroyMessages: Failed to successfully delete conversation', - error && error.stack ? error.stack : error - ); - } - }, - }); - } else { - Whisper.events.trigger('showConfirmationDialog', { - message: i18n('deleteConversationConfirmation'), - onOk: async () => { - try { - await this.model.destroyMessages(); - this.unload('delete messages'); - } catch (error) { - window.log.error( - 'destroyMessages: Failed to successfully delete conversation', - error && error.stack ? error.stack : error - ); - } - }, - }); - } + const message = this.model.isPublic() + ? i18n('deletePublicConversationConfirmation') + : i18n('deleteConversationConfirmation'); + + Whisper.events.trigger('showConfirmationDialog', { + message, + onOk: async () => { + try { + await this.model.destroyMessages(); + this.unload('delete messages'); + } catch (error) { + window.log.error( + 'destroyMessages: Failed to successfully delete conversation', + error && error.stack ? error.stack : error + ); + } + }, + }); }, showSendConfirmationDialog(e, contacts) { From c4a95218fac1be751d684ddc1520eb0381f285c4 Mon Sep 17 00:00:00 2001 From: Beaudan Brown Date: Wed, 4 Sep 2019 15:54:22 +1000 Subject: [PATCH 2/2] Make even smaller --- js/views/conversation_view.js | 36 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/js/views/conversation_view.js b/js/views/conversation_view.js index f2408024b..94299aab8 100644 --- a/js/views/conversation_view.js +++ b/js/views/conversation_view.js @@ -1296,34 +1296,26 @@ ? i18n('deletePublicWarning') : i18n('deleteWarning'); - const resolve = this.model.isPublic() - ? async () => { + const dialog = new Whisper.ConfirmationDialogView({ + message: warningMessage, + okText: i18n('delete'), + resolve: async () => { + if (this.model.isPublic()) { const success = await this.model.deletePublicMessage(message); if (!success) { // Message failed to delete from server, show error? return; } - await window.Signal.Data.removeMessage(message.id, { - Message: Whisper.Message, - }); - message.trigger('unload'); - this.resetPanel(); - this.updateHeader(); - } - : () => { - window.Signal.Data.removeMessage(message.id, { - Message: Whisper.Message, - }); - message.trigger('unload'); + } else { this.model.messageCollection.remove(message.id); - this.resetPanel(); - this.updateHeader(); - }; - - const dialog = new Whisper.ConfirmationDialogView({ - message: warningMessage, - okText: i18n('delete'), - resolve, + } + await window.Signal.Data.removeMessage(message.id, { + Message: Whisper.Message, + }); + message.trigger('unload'); + this.resetPanel(); + this.updateHeader(); + }, }); this.$el.prepend(dialog.el);