]> git.proxmox.com Git - pmg-gui.git/blame - js/MailProxyOptions.js
Application.js: remove trailing slash from pathname
[pmg-gui.git] / js / MailProxyOptions.js
CommitLineData
7b27b6bc
DM
1Ext.define('PMG.MailProxyOptions', {
2 extend: 'Proxmox.grid.ObjectGrid',
3 alias: ['widget.pmgMailProxyOptions'],
4
5e453db7
DM
5 monStoreErrors: true,
6
7b27b6bc
DM
7 initComponent : function() {
8 var me = this;
9
dfe9fc4b
DM
10 me.add_integer_row('maxsize', gettext('Message Size (bytes)'),
11 { defaultValue: 1024*1024*10,
12 minValue: 1024, deleteEmpty: true });
e866b4e7 13
dfe9fc4b 14 me.add_boolean_row('rejectunknown', gettext('Reject Unknown Clients'));
e866b4e7 15
dfe9fc4b 16 me.add_boolean_row('rejectunknownsender', gettext('Reject Unknown Senders'));
e866b4e7 17
dfe9fc4b 18 me.add_boolean_row('helotests', gettext('SMTP HELO checks'));
e866b4e7 19
dfe9fc4b
DM
20 me.add_boolean_row('use_rbl', gettext('Use RBL checks'),
21 { defaultValue: 1 });
e866b4e7 22
527c093e
DM
23 var render_verifyreceivers = function(value) {
24 if (value === undefined || value === '__default__') {
25 return Proxmox.Utils.noText;
b8abd282 26 }
527c093e 27 return Proxmox.Utils.yesText + ' (' + value + ')';
b8abd282 28 };
e866b4e7 29
527c093e
DM
30 me.add_combobox_row('verifyreceivers', gettext('Verify Receivers'), {
31 renderer: render_verifyreceivers,
32 defaultValue: '__default__',
33 deleteEmpty: true,
34 comboItems: [
35 ['__default__', render_verifyreceivers('__default__') ],
36 ['450', render_verifyreceivers('450') ],
37 ['550', render_verifyreceivers('550') ]]
38 });
39
dfe9fc4b
DM
40 me.add_boolean_row('greylist', gettext('Use Greylisting'),
41 { defaultValue: 1 });
e866b4e7 42
dfe9fc4b 43 me.add_boolean_row('spf', gettext('Use SPF'), { defaultValue: 1 });
e866b4e7 44
dfe9fc4b 45 me.add_boolean_row('hide_received', gettext('Hide Internal Hosts'));
e866b4e7 46
dfe9fc4b
DM
47 me.add_integer_row('dwarning', gettext('Delay Warning Time (hours)'),
48 { defaultValue: 4, minValue: 0 });
e866b4e7 49
dfe9fc4b
DM
50 me.add_integer_row('conn_count_limit', gettext('Client Connection Count Limit'),
51 { defaultValue: 50, minValue: 0, maxValue: 65535 });
e866b4e7 52
dfe9fc4b
DM
53 me.add_integer_row('conn_rate_limit', gettext('Client Connection Rate Limit'),
54 { defaultValue: 0, minValue: 0 });
e866b4e7 55
dfe9fc4b
DM
56 me.add_integer_row('message_rate_limit', gettext('Client Message Rate Limit'),
57 { defaultValue: 0, minValue: 0 });
e866b4e7 58
3c2246f4 59 me.add_text_row('banner', gettext('SMTPD Banner'),
6ccd0a47 60 { deleteEmpty: true, defaultValue: 'ESMTP Proxmox' });
7b27b6bc
DM
61
62 var baseurl = '/config/mail';
63
d80ddaf7
DM
64 me.selModel = Ext.create('Ext.selection.RowModel', {});
65
7b27b6bc 66 Ext.apply(me, {
d80ddaf7
DM
67 tbar: [{
68 text: gettext('Edit'),
69 xtype: 'proxmoxButton',
70 disabled: true,
71 handler: function() { me.run_editor() },
72 selModel: me.selModel
73 }],
7b27b6bc
DM
74 url: '/api2/json' + baseurl,
75 editorConfig: {
76 url: '/api2/extjs' + baseurl,
77 },
78 interval: 5000,
79 cwidth1: 200,
7b27b6bc
DM
80 listeners: {
81 itemdblclick: me.run_editor
82 }
83 });
84
85 me.callParent();
86
87 me.on('activate', me.rstore.startUpdate);
88 me.on('destroy', me.rstore.stopUpdate);
00564597 89 me.on('deactivate', me.rstore.stopUpdate);
7b27b6bc
DM
90 }
91});