]> git.proxmox.com Git - pmg-gui.git/blob - js/SpamDetectorOptions.js
ui: node summary: use SI units for HD usage
[pmg-gui.git] / js / SpamDetectorOptions.js
1 Ext.define('PMG.SpamDetectorOptions', {
2 extend: 'Proxmox.grid.ObjectGrid',
3 alias: ['widget.pmgSpamDetectorOptions'],
4
5 monStoreErrors: true,
6
7 initComponent: function() {
8 var me = this;
9
10 me.add_boolean_row('use_awl', gettext('Use auto-whitelists'),
11 { defaultValue: 0 });
12
13 me.add_boolean_row('use_bayes', gettext('Use Bayesian filter'),
14 { defaultValue: 0 });
15
16 me.add_boolean_row('rbl_checks', gettext('Use RBL checks'),
17 { defaultValue: 1 });
18
19 me.add_boolean_row('use_razor', gettext('Use Razor2 checks'),
20 { defaultValue: 1 });
21
22 me.add_boolean_row('extract_text', gettext('Extract Text from Attachments'));
23
24 me.add_integer_row('maxspamsize', gettext('Max Spam Size (bytes)'),
25 {
26 defaultValue: 256*1024,
27 minValue: 64, deleteEmpty: true,
28 });
29
30 me.rows.languages = {
31 required: true,
32 header: gettext('Languages'),
33 editor: 'PMG.SpamDetectorLanguages',
34 renderer: function(value) {
35 return value || 'all';
36 },
37 };
38
39 me.add_integer_row('bounce_score', gettext('Backscatter Score'),
40 {
41 defaultValue: 0,
42 minValue: 0, maxValue: 1000,
43 deleteEmpty: true,
44 });
45
46 me.add_integer_row('clamav_heuristic_score', gettext('Heuristic Score'),
47 {
48 defaultValue: 3,
49 minValue: 0, maxValue: 1000,
50 deleteEmpty: true,
51 });
52
53 var baseurl = '/config/spam';
54
55 me.selModel = Ext.create('Ext.selection.RowModel', {});
56
57 Ext.apply(me, {
58 tbar: [{
59 text: gettext('Edit'),
60 xtype: 'proxmoxButton',
61 disabled: true,
62 handler: function() { me.run_editor(); },
63 selModel: me.selModel,
64 }],
65 url: '/api2/json' + baseurl,
66 editorConfig: {
67 url: '/api2/extjs' + baseurl,
68 onlineHelp: 'pmgconfig_spamdetector',
69 },
70 interval: 5000,
71 cwidth1: 200,
72 listeners: {
73 itemdblclick: me.run_editor,
74 },
75 });
76
77 me.callParent();
78
79 me.on('activate', me.rstore.startUpdate);
80 me.on('destroy', me.rstore.stopUpdate);
81 me.on('deactivate', me.rstore.stopUpdate);
82 },
83 });