extend: 'Proxmox.grid.ObjectGrid',
alias: ['widget.pmgMailProxyOptions'],
- initComponent : function() {
+ monStoreErrors: true,
+
+ 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'));
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.rows.verifyreceivers = {
- required: true,
- header: gettext('Verify Receivers'),
- renderer: function(value) {
- if (value === undefined) {
- return Proxmox.Utils.noText;
- }
- return Proxmox.Utils.yesText + ' (' + value + ')';
- },
- editor: {
- xtype: 'proxmoxWindowEdit',
- subject: gettext('Verify Receivers'),
- items: {
- xtype: 'proxmoxKVComboBox',
- name: 'verifyreceivers',
- value: '__default__',
- comboItems: [
- ['__default__', Proxmox.Utils.noText],
- ['450', Proxmox.Utils.yesText + ' (450)'],
- ['550', Proxmox.Utils.yesText + ' (550)']],
- deleteEmpty: true,
- fieldLabel: gettext('Verify Receivers')
- }
+ 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__') {
+ return Proxmox.Utils.noText;
}
+ return Proxmox.Utils.yesText + ' (' + value + ')';
};
- me.add_boolean_row('greylist', gettext('Use Greylisting'),
+ me.add_combobox_row('verifyreceivers', gettext('Verify Receivers'), {
+ renderer: render_verifyreceivers,
+ defaultValue: '__default__',
+ deleteEmpty: true,
+ comboItems: [
+ ['__default__', render_verifyreceivers('__default__')],
+ ['450', render_verifyreceivers('450')],
+ ['550', render_verifyreceivers('550')]],
+ });
+
+ 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'));
{ defaultValue: 0, minValue: 0 });
me.add_text_row('banner', gettext('SMTPD Banner'),
- { defaultValue: 'ESMTP Proxmox' });
+ { 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';
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();
me.on('activate', me.rstore.startUpdate);
me.on('destroy', me.rstore.stopUpdate);
- }
+ me.on('deactivate', me.rstore.stopUpdate);
+ },
});