(js) Improve handling of IMAP timeout handling

For external accounts only.
pull/236/head
Francis Lachapelle 2017-04-21 11:56:28 -04:00
parent ab50a41a86
commit 2b4e357da6
2 changed files with 12 additions and 6 deletions

1
NEWS
View File

@ -6,6 +6,7 @@ New features
Enhancements
- [core] improved event initation for all day events (#4145)
- [web] improved interface refresh time with external IMAP accounts
Bug fixes
- [web] fixed attachment path when inside multiple body parts

View File

@ -146,16 +146,21 @@
/**
* @ngInject
*/
stateAccounts.$inject = ['$q', 'Account'];
function stateAccounts($q, Account) {
var accounts = Account.$findAll(window.mailAccounts),
stateAccounts.$inject = ['$window', '$q', 'Account'];
function stateAccounts($window, $q, Account) {
var accounts = Account.$findAll($window.mailAccounts),
promises = [];
// Fetch list of mailboxes for each account
angular.forEach(accounts, function(account, i) {
var mailboxes = account.$getMailboxes();
promises.push(mailboxes.then(function(objects) {
return account;
}));
if (i === 0)
// Make sure we have the list of mailboxes of the first account
promises.push(mailboxes.then(function(objects) {
return account;
}));
else
// Don't wait for external accounts
promises.push(account);
});
return $q.all(promises);
}