diff --git a/src/js/client.js b/src/js/client.js index 65eb6f5c6..706604e00 100644 --- a/src/js/client.js +++ b/src/js/client.js @@ -2398,6 +2398,25 @@ angular.module('Application').service('Client', ['$http', '$interval', '$timeout }); }; + Client.prototype.getDnsblConfig = function (callback) { + var config = {}; + + get('/api/v1/mailserver/dnsbl_config', config, function (error, data, status) { + if (error) return callback(error); + if (status !== 200) return callback(new ClientError(status, data)); + callback(null, data); + }); + }; + + Client.prototype.setDnsblConfig = function (zones, callback) { + post('/api/v1/mailserver/dnsbl_config', { zones: zones }, null, function (error, data, status) { + if (error) return callback(error); + if (status !== 200) return callback(new ClientError(status, data)); + + callback(null); + }); + }; + Client.prototype.getSolrConfig = function (callback) { var config = {}; diff --git a/src/translation/en.json b/src/translation/en.json index 4299008de..e86dbda66 100644 --- a/src/translation/en.json +++ b/src/translation/en.json @@ -568,7 +568,9 @@ "solrEnabled": "Enabled", "solrDisabled": "Disabled", "solrRunning": "Running", - "solrNotRunning": "Not Running" + "solrNotRunning": "Not Running", + "acl": "Mail ACL", + "aclOverview": "{{ dnsblZonesCount }} DNSBL zone(s)" }, "eventlog": { "title": "Email Event Log", @@ -631,7 +633,13 @@ "notEnoughMemory": "Please allocate at least 3GB to the mail service to enable solr." }, "typeFilterHeader": "All Events", - "eventlogActionTooltip": "Email Event Log" + "eventlogActionTooltip": "Email Event Log", + "aclDialog": { + "dnsblZones": "DNSBL Zones", + "dnsblZonesInfo": "Connecting IP address is looked up in these IP blocklists", + "dnsblZonesPlaceholder": "Line separated zone names", + "title": "Change Email ACL" + } }, "network": { "title": "Network", diff --git a/src/views/emails.html b/src/views/emails.html index 85e7418a5..eb73b9938 100644 --- a/src/views/emails.html +++ b/src/views/emails.html @@ -99,6 +99,32 @@ + + +