Allow email to be enabled without dns setup
This helps in importing existing mail and also configuring mailboxes before going live
This commit is contained in:
@@ -189,6 +189,8 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
|
||||
$scope.incomingEmail = {
|
||||
busy: false,
|
||||
setupDns: true,
|
||||
setupDnsBusy: false,
|
||||
|
||||
toggleEmailEnabled: function () {
|
||||
if ($scope.selectedDomain.mailConfig.enabled) {
|
||||
@@ -198,6 +200,18 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
}
|
||||
},
|
||||
|
||||
setDnsRecords: function (callback) {
|
||||
$scope.incomingEmail.setupDnsBusy = true;
|
||||
|
||||
Client.setDnsRecords($scope.selectedDomain.domain, function (error) {
|
||||
if (error) console.error(error);
|
||||
|
||||
$timeout(function () { $scope.incomingEmail.setupDnsBusy = false; }, 2000); // otherwise, it's too fast
|
||||
|
||||
if (callback) callback();
|
||||
});
|
||||
},
|
||||
|
||||
enable: function () {
|
||||
$('#enableEmailModal').modal('hide');
|
||||
|
||||
@@ -208,7 +222,9 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
|
||||
|
||||
$scope.reconfigureEmailApps();
|
||||
|
||||
Client.setDnsRecords($scope.selectedDomain.domain, function (error) {
|
||||
let maybeSetupDns = $scope.incomingEmail.setupDns ? $scope.incomingEmail.setDnsRecords : function (next) { next(); };
|
||||
|
||||
maybeSetupDns(function (error) {
|
||||
if (error) return console.error(error);
|
||||
|
||||
$scope.refreshDomain();
|
||||
|
||||
Reference in New Issue
Block a user