diff --git a/UI/WebServerResources/js/Mailer/VirtualMailbox.service.js b/UI/WebServerResources/js/Mailer/VirtualMailbox.service.js index 84e187d47..96992e41c 100644 --- a/UI/WebServerResources/js/Mailer/VirtualMailbox.service.js +++ b/UI/WebServerResources/js/Mailer/VirtualMailbox.service.js @@ -233,9 +233,11 @@ * @desc Return an associative array of the selected messages for each mailbox. Keys are the mailboxes ids. * @returns an associative array */ - VirtualMailbox.prototype.selectedMessages = function() { + VirtualMailbox.prototype.selectedMessages = function(options) { var messagesMap = {}; return _.filter(_.transform(this.$mailboxes, function(messagesMap, mailbox) { + if (options && options.updateCache) + mailbox.$selectedMessages = _.filter(mailbox.$messages, function (message) { return message.selected; }); messagesMap[mailbox.id] = mailbox.$selectedMessages; }, {}), function(o) { return _.size(o) > 0; @@ -293,7 +295,8 @@ VirtualMailbox.prototype.$deleteMessages = function(messagesMap) { var _this = this, promises = []; - if (_.isArray(messagesMap) && messagesMap.length === 1) { + if (_.isArray(messagesMap) && messagesMap.length === 1 + && messagesMap[0] && messagesMap[0].mailbox && !_.isArray(messagesMap[0].mailbox)) { // Deleting one message var message = messagesMap[0]; var mailbox = message.$mailbox;