Add action button to send test mail in global mail view

This commit is contained in:
Johannes Zellner
2020-02-12 14:51:06 +01:00
parent fa630a6cb5
commit e9d10d6f2f
4 changed files with 87 additions and 82 deletions

View File

@@ -8,6 +8,7 @@ angular.module('Application').controller('EmailsController', ['$scope', '$locati
$scope.ready = false;
$scope.config = Client.getConfig();
$scope.user = Client.getUserInfo();
$scope.domains = [];
$scope.activity = {
@@ -34,6 +35,48 @@ angular.module('Application').controller('EmailsController', ['$scope', '$locati
}
};
$scope.testEmail = {
busy: false,
error: {},
mailTo: '',
domain: null,
clearForm: function () {
$scope.testEmail.mailTo = '';
},
show: function (domain) {
$scope.testEmail.error = {};
$scope.testEmail.busy = false;
$scope.testEmail.domain = domain;
$scope.testEmail.mailTo = $scope.user.email;
$('#testEmailModal').modal('show');
},
submit: function () {
$scope.testEmail.error = {};
$scope.testEmail.busy = true;
Client.sendTestMail($scope.testEmail.domain.domain, $scope.testEmail.mailTo, function (error) {
$scope.testEmail.busy = false;
if (error) {
$scope.testEmail.error.generic = error.message;
console.error(error);
$('#inputTestMailTo').focus();
return;
}
$('#testEmailModal').modal('hide');
});
}
};
function refreshDomainStatuses() {
$scope.domains.forEach(function (domain) {
Client.getMailStatusForDomain(domain.domain, function (error, result) {
@@ -59,5 +102,12 @@ angular.module('Application').controller('EmailsController', ['$scope', '$locati
});
});
// setup all the dialog focus handling
['testEmailModal'].forEach(function (id) {
$('#' + id).on('shown.bs.modal', function () {
$(this).find('[autofocus]:first').focus();
});
});
$('.modal-backdrop').remove();
}]);