diff --git a/UI/WebServerResources/js/Mailer/Account.service.js b/UI/WebServerResources/js/Mailer/Account.service.js index 1a4aba21e..8259fde75 100644 --- a/UI/WebServerResources/js/Mailer/Account.service.js +++ b/UI/WebServerResources/js/Mailer/Account.service.js @@ -96,21 +96,18 @@ * @returns a promise of the HTTP operation */ Account.prototype.$getMailboxes = function(options) { - var _this = this, - deferred = Account.$q.defer(); + var _this = this; if (this.$mailboxes && !(options && options.reload)) { - deferred.resolve(this.$mailboxes); + return Account.$q.when(this.$mailboxes); } else { - Account.$Mailbox.$find(this).then(function(data) { + return Account.$Mailbox.$find(this).then(function(data) { _this.$mailboxes = data; _this.$flattenMailboxes({reload: true}); - deferred.resolve(_this.$mailboxes); + return _this.$mailboxes; }); } - - return deferred.promise; }; /** diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js index 40d42f598..1be829cb5 100644 --- a/UI/WebServerResources/js/Mailer/Message.service.js +++ b/UI/WebServerResources/js/Mailer/Message.service.js @@ -561,22 +561,12 @@ * @param {promise} futureMessageData - a promise of some of the Message's data */ Message.prototype.$unwrap = function(futureMessageData) { - var _this = this, - deferred = Message.$q.defer(); + var _this = this; - // Expose the promise - this.$futureMessageData = futureMessageData; - - // Resolve the promise - this.$futureMessageData.then(function(data) { + // Resolve and expose the promise + this.$futureMessageData = futureMessageData.then(function(data) { // Calling $timeout will force Angular to refresh the view - Message.$timeout(function() { - angular.extend(_this, data); - _this.$formatFullAddresses(); - _this.$loadUnsafeContent = false; - deferred.resolve(_this); - }); - if (!_this.isread) { + if (_this.isread === 0) { Message.$$resource.fetch(_this.$absolutePath(), 'markMessageRead').then(function() { Message.$timeout(function() { _this.isread = true; @@ -584,14 +574,15 @@ }); }); } - }, function(data) { - angular.extend(_this, data); - _this.isError = true; - Message.$log.error(_this.error); - deferred.reject(); + return Message.$timeout(function() { + angular.extend(_this, data); + _this.$formatFullAddresses(); + _this.$loadUnsafeContent = false; + return _this; + }); }); - return deferred.promise; + return this.$futureMessageData; }; /**