]>
git.proxmox.com Git - pmg-gui.git/blob - js/MailProxyOptions.js
2 Ext
.define('PMG.MailProxyOptions', {
3 extend
: 'Proxmox.grid.ObjectGrid',
4 alias
: ['widget.pmgMailProxyOptions'],
8 initComponent : function() {
11 me
.add_integer_row('maxsize', gettext('Message Size (bytes)'),
12 { defaultValue
: 1024*1024*10,
13 minValue
: 1024, deleteEmpty
: true });
15 me
.add_boolean_row('rejectunknown', gettext('Reject Unknown Clients'));
17 me
.add_boolean_row('rejectunknownsender', gettext('Reject Unknown Senders'));
19 me
.add_boolean_row('helotests', gettext('SMTP HELO checks'));
21 me
.add_text_row('dnsbl_sites', gettext('DNSBL Sites'),
22 { deleteEmpty
: true, defaultValue
: Proxmox
.Utils
.noneText
});
24 me
.add_integer_row('dnsbl_threshold', gettext('DNSBL Threshold'),
25 { deleteEmpty
: true, defaultValue
: 1, minValue
: 0 });
27 var render_verifyreceivers = function(value
) {
28 if (value
=== undefined || value
=== '__default__') {
29 return Proxmox
.Utils
.noText
;
31 return Proxmox
.Utils
.yesText
+ ' (' + value
+ ')';
34 /*jslint confusion: true*/
35 /*defaultValue is string and number*/
36 me
.add_combobox_row('verifyreceivers', gettext('Verify Receivers'), {
37 renderer
: render_verifyreceivers
,
38 defaultValue
: '__default__',
41 ['__default__', render_verifyreceivers('__default__') ],
42 ['450', render_verifyreceivers('450') ],
43 ['550', render_verifyreceivers('550') ]]
45 /*jslint confusion: false*/
47 me
.add_boolean_row('greylist', gettext('Use Greylisting for IPv4'),
50 me
.add_integer_row('greylistmask4', gettext('Netmask for Greylisting IPv4'),
51 { defaultValue
: 24, minValue
: 0 });
53 me
.add_boolean_row('greylist6', gettext('Use Greylisting for IPv6'),
56 me
.add_integer_row('greylistmask6', gettext('Netmask for Greylisting IPv6'),
57 { defaultValue
: 64, minValue
: 0 });
59 me
.add_boolean_row('spf', gettext('Use SPF'), { defaultValue
: 1 });
61 me
.add_boolean_row('hide_received', gettext('Hide Internal Hosts'));
63 me
.add_integer_row('dwarning', gettext('Delay Warning Time (hours)'),
64 { defaultValue
: 4, minValue
: 0 });
66 me
.add_integer_row('conn_count_limit', gettext('Client Connection Count Limit'),
67 { defaultValue
: 50, minValue
: 0, maxValue
: 65535 });
69 me
.add_integer_row('conn_rate_limit', gettext('Client Connection Rate Limit'),
70 { defaultValue
: 0, minValue
: 0 });
72 me
.add_integer_row('message_rate_limit', gettext('Client Message Rate Limit'),
73 { defaultValue
: 0, minValue
: 0 });
75 /*jslint confusion: true*/
76 /*defaultValue is string and number*/
77 me
.add_text_row('banner', gettext('SMTPD Banner'),
78 { deleteEmpty
: true, defaultValue
: 'ESMTP Proxmox' });
79 /*jslint confusion: false*/
81 me
.add_boolean_row('ndr_on_block', gettext('Send NDR on Blocked E-Mails'));
82 // FIXME allow to pass onlineHelp to ObjectGrid's add_xyz_row..
83 // onlineHelp: 'pmgconfig_mailproxy_before_after_queue',
84 me
.rows
.ndr_on_block
.editor
.onlineHelp
= 'pmgconfig_mailproxy_before_after_queue';
86 me
.add_boolean_row('before_queue_filtering', gettext('Before Queue Filtering'));
88 var baseurl
= '/config/mail';
90 me
.selModel
= Ext
.create('Ext.selection.RowModel', {});
94 text
: gettext('Edit'),
95 xtype
: 'proxmoxButton',
97 handler: function() { me
.run_editor(); },
100 url
: '/api2/json' + baseurl
,
102 url
: '/api2/extjs' + baseurl
,
103 onlineHelp
: 'pmgconfig_mailproxy_options'
108 itemdblclick
: me
.run_editor
114 me
.on('activate', me
.rstore
.startUpdate
);
115 me
.on('destroy', me
.rstore
.stopUpdate
);
116 me
.on('deactivate', me
.rstore
.stopUpdate
);