diff --git a/NEWS b/NEWS index 578dbf1db..8b986da15 100644 --- a/NEWS +++ b/NEWS @@ -19,6 +19,7 @@ Bug fixes - [web] fixed CAS session timeout handling during XHR requests (#1456) - [web] exposed default value of SOGoMailAutoSave (#4053) - [web] fixed handling of contact organizations (#4028) + - [web] fixed handling of attachments in mail editor (#4058, #4063) 3.2.7 (2017-02-14) ------------------ diff --git a/UI/WebServerResources/js/Mailer/Mailbox.service.js b/UI/WebServerResources/js/Mailer/Mailbox.service.js index fca58f9d7..abba6073d 100644 --- a/UI/WebServerResources/js/Mailer/Mailbox.service.js +++ b/UI/WebServerResources/js/Mailer/Mailbox.service.js @@ -157,7 +157,7 @@ */ Mailbox.prototype.init = function(data) { var _this = this; - if (data.headers) { + if (angular.isUndefined(this.uidsMap) || data.headers) { this.$isLoading = true; this.$messages = []; this.uidsMap = {}; diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js index 9344784d1..2d6f101b8 100644 --- a/UI/WebServerResources/js/Mailer/Message.service.js +++ b/UI/WebServerResources/js/Mailer/Message.service.js @@ -474,9 +474,9 @@ * @param {string} filename - the filename of the attachment to delete */ Message.prototype.$deleteAttachment = function(filename) { - var action = 'deleteAttachment?filename=' + filename; + var data = { 'filename': filename }; var _this = this; - Message.$$resource.post(this.$absolutePath({asDraft: true}), action).then(function(data) { + Message.$$resource.fetch(this.$absolutePath({asDraft: true}), 'deleteAttachment', data).then(function(data) { Message.$timeout(function() { _this.editable.attachmentAttrs = _.filter(_this.editable.attachmentAttrs, function(attachment) { return attachment.filename != filename;