]> git.proxmox.com Git - pmg-gui.git/blob - js/SpamQuarantineOptions.js
add virusfilter
[pmg-gui.git] / js / SpamQuarantineOptions.js
1 Ext.define('PMG.SpamQuarantineOptions', {
2 extend: 'Proxmox.grid.ObjectGrid',
3 alias: ['widget.pmgSpamQuarantineOptions'],
4
5 monStoreErrors: true,
6
7 authmodeTextHash: {
8 ticket: 'Ticket',
9 ldap: 'LDAP',
10 ldapticket: 'LDAP or Ticket'
11 },
12
13 reportstyleTextHash: {
14 none: gettext('No Reports'),
15 'short': gettext('Short'),
16 verbose: gettext('Verbose'),
17 outlook: gettext('Verbose') + ' (' + gettext('Outlook 2007') + ')',
18 custom: gettext('Custom')
19 },
20
21 initComponent : function() {
22 var me = this;
23
24 me.add_integer_row('lifetime', gettext('Lifetime (days)'),
25 { minValue: 1, defaultValue: 7,
26 deleteEmpty: true });
27
28 var render_authmode = function(value) {
29 return me.authmodeTextHash[value] || value;
30 };
31
32 me.add_combobox_row('authmode', gettext('Authentication mode'), {
33 defaultValue: 'ticket',
34 renderer: render_authmode,
35 comboItems: [
36 ['ticket', render_authmode('ticket') ],
37 ['ldap', render_authmode('ldap') ],
38 ['ldapticket', render_authmode('ldapticket') ]],
39 });
40
41 var render_reportstyle = function(value) {
42 return me.reportstyleTextHash[value] || value;
43 };
44
45 me.add_combobox_row('reportstyle', gettext('Report Style'), {
46 defaultValue: 'verbose',
47 renderer: render_reportstyle,
48 comboItems: [
49 ['none', render_reportstyle('none') ],
50 ['short', render_reportstyle('short') ],
51 ['verbose', render_reportstyle('verbose') ],
52 ['outlook', render_reportstyle('outlook') ],
53 ['custom', render_reportstyle('custom') ]],
54 });
55
56 me.add_text_row('hostname', gettext('Quarantine Host'),
57 { deleteEmpty: true, defaultValue: Proxmox.Utils.noneText });
58 me.add_text_row('mailfrom', gettext("EMail 'From:'"),
59 { deleteEmpty: true, defaultValue: Proxmox.Utils.noneText });
60
61 me.add_boolean_row('viewimages', gettext('View images'),
62 { defaultValue: 1});
63
64 me.add_boolean_row('allowhrefs', gettext('Allow HREFs'),
65 {defaultValue: 1 });
66
67 var baseurl = '/config/spamquar';
68
69 me.selModel = Ext.create('Ext.selection.RowModel', {});
70
71 Ext.apply(me, {
72 tbar: [{
73 text: gettext('Edit'),
74 xtype: 'proxmoxButton',
75 disabled: true,
76 handler: function() { me.run_editor() },
77 selModel: me.selModel
78 }],
79 url: '/api2/json' + baseurl,
80 editorConfig: {
81 url: '/api2/extjs' + baseurl,
82 },
83 interval: 5000,
84 cwidth1: 200,
85 listeners: {
86 itemdblclick: me.run_editor
87 }
88 });
89
90 me.callParent();
91
92 me.on('activate', me.rstore.startUpdate);
93 me.on('destroy', me.rstore.stopUpdate);
94 me.on('deactivate', me.rstore.stopUpdate);
95 }
96 });