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