mail: fix catchall ui
This commit is contained in:
+8
-3
@@ -84,6 +84,7 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
refresh: function () {
|
||||
var allMailboxes = [];
|
||||
async.eachSeries($scope.incomingDomains, function (domain, iteratorDone) {
|
||||
|
||||
Client.listMailboxes(domain.domain, '', 1, 1000, function (error, result) {
|
||||
if (error) return console.error(error);
|
||||
|
||||
@@ -95,10 +96,13 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
}, function () {
|
||||
$scope.catchall.availableMailboxes = allMailboxes;
|
||||
|
||||
console.log($scope.domain.mailConfig.catchAll);
|
||||
|
||||
$scope.catchall.mailboxes = $scope.domain.mailConfig.catchAll.map(function (address) {
|
||||
const parts = address.split('@');
|
||||
return $scope.catchall.availableMailboxes.find(function (m) { return m.name === parts[0] && m.domain === parts[1]; });
|
||||
return allMailboxes.find(function (m) { return m.display === address; });
|
||||
}).filter(function (m) { return !!m; }); // remove not found addresses
|
||||
|
||||
console.log($scope.catchall.mailboxes);
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -1021,7 +1025,6 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
|
||||
$scope.domain = result.filter(function (d) { return d.domain === domainName; })[0];
|
||||
$scope.adminDomain = result.filter(function (d) { return d.domain === $scope.config.adminDomain; })[0];
|
||||
$scope.refreshDomain();
|
||||
|
||||
async.eachSeries(result, function (domain, iteratorDone) {
|
||||
Client.getMailConfigForDomain(domain.domain, function (error, mailConfig) {
|
||||
@@ -1033,6 +1036,8 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
}, function iteratorDone(error) {
|
||||
if (error) return console.error(error);
|
||||
|
||||
$scope.refreshDomain(); // this calls catchall.refresh() which in turn relies on incomingDomains
|
||||
|
||||
$scope.setView($routeParams.view || 'mailboxes', true /* always set */);
|
||||
$scope.ready = true;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user