]> git.proxmox.com Git - pmg-gui.git/blobdiff - js/MailProxyOptions.js
tfa: avoid trailing space on WebAuthn
[pmg-gui.git] / js / MailProxyOptions.js
index 873bd852b49624ad1b08ef00c5543bf38467fcb4..b151350323c49a13226d5bf916560884974c8334 100644 (file)
@@ -1,16 +1,17 @@
-/*global Proxmox*/
 Ext.define('PMG.MailProxyOptions', {
     extend: 'Proxmox.grid.ObjectGrid',
     alias: ['widget.pmgMailProxyOptions'],
 
     monStoreErrors: true,
 
-    initComponent : function() {
+    initComponent: function() {
        var me = this;
 
        me.add_integer_row('maxsize', gettext('Message Size (bytes)'),
-                          { defaultValue: 1024*1024*10,
-                            minValue: 1024, deleteEmpty: true });
+                          {
+ defaultValue: 1024*1024*10,
+                            minValue: 1024, deleteEmpty: true,
+});
 
        me.add_boolean_row('rejectunknown', gettext('Reject Unknown Clients'));
 
@@ -18,8 +19,11 @@ Ext.define('PMG.MailProxyOptions', {
 
        me.add_boolean_row('helotests', gettext('SMTP HELO checks'));
 
-       me.add_boolean_row('use_rbl', gettext('Use RBL checks'),
-                          { defaultValue: 1 });
+       me.add_text_row('dnsbl_sites', gettext('DNSBL Sites'),
+                       { deleteEmpty: true, defaultValue: Proxmox.Utils.noneText });
+
+       me.add_integer_row('dnsbl_threshold', gettext('DNSBL Threshold'),
+                       { deleteEmpty: true, defaultValue: 1, minValue: 0 });
 
        var render_verifyreceivers = function(value) {
            if (value === undefined || value === '__default__') {
@@ -33,14 +37,23 @@ Ext.define('PMG.MailProxyOptions', {
            defaultValue: '__default__',
            deleteEmpty: true,
            comboItems: [
-               ['__default__', render_verifyreceivers('__default__') ],
-               ['450', render_verifyreceivers('450') ],
-               ['550', render_verifyreceivers('550') ]]
+               ['__default__', render_verifyreceivers('__default__')],
+               ['450', render_verifyreceivers('450')],
+               ['550', render_verifyreceivers('550')]],
        });
 
-       me.add_boolean_row('greylist', gettext('Use Greylisting'),
+       me.add_boolean_row('greylist', gettext('Use Greylisting for IPv4'),
                           { defaultValue: 1 });
 
+       me.add_integer_row('greylistmask4', gettext('Netmask for Greylisting IPv4'),
+                          { defaultValue: 24, minValue: 0, maxValue: 32 });
+
+       me.add_boolean_row('greylist6', gettext('Use Greylisting for IPv6'),
+                          { defaultValue: 0 });
+
+       me.add_integer_row('greylistmask6', gettext('Netmask for Greylisting IPv6'),
+                          { defaultValue: 64, minValue: 0, maxValue: 128 });
+
        me.add_boolean_row('spf', gettext('Use SPF'), { defaultValue: 1 });
 
        me.add_boolean_row('hide_received', gettext('Hide Internal Hosts'));
@@ -60,6 +73,13 @@ Ext.define('PMG.MailProxyOptions', {
        me.add_text_row('banner', gettext('SMTPD Banner'),
                        { deleteEmpty: true, defaultValue: 'ESMTP Proxmox' });
 
+       me.add_boolean_row('ndr_on_block', gettext('Send NDR on Blocked E-Mails'));
+       // FIXME allow to pass onlineHelp to ObjectGrid's add_xyz_row..
+       // onlineHelp: 'pmgconfig_mailproxy_before_after_queue',
+       me.rows.ndr_on_block.editor.onlineHelp = 'pmgconfig_mailproxy_before_after_queue';
+
+       me.add_boolean_row('before_queue_filtering', gettext('Before Queue Filtering'));
+
        var baseurl = '/config/mail';
 
        me.selModel = Ext.create('Ext.selection.RowModel', {});
@@ -69,18 +89,19 @@ Ext.define('PMG.MailProxyOptions', {
                text: gettext('Edit'),
                xtype: 'proxmoxButton',
                disabled: true,
-               handler: function() { me.run_editor() },
-               selModel: me.selModel
+               handler: function() { me.run_editor(); },
+               selModel: me.selModel,
            }],
            url: '/api2/json' + baseurl,
            editorConfig: {
                url: '/api2/extjs' + baseurl,
+               onlineHelp: 'pmgconfig_mailproxy_options',
            },
            interval: 5000,
            cwidth1: 200,
            listeners: {
-               itemdblclick: me.run_editor
-           }
+               itemdblclick: me.run_editor,
+           },
        });
 
        me.callParent();
@@ -88,5 +109,5 @@ Ext.define('PMG.MailProxyOptions', {
        me.on('activate', me.rstore.startUpdate);
        me.on('destroy', me.rstore.stopUpdate);
        me.on('deactivate', me.rstore.stopUpdate);
-    }
+    },
 });