]>
Commit | Line | Data |
---|---|---|
ff735274 | 1 | /*global Proxmox*/ |
6ccd0a47 DM |
2 | Ext.define('PMG.SpamQuarantineOptions', { |
3 | extend: 'Proxmox.grid.ObjectGrid', | |
4 | alias: ['widget.pmgSpamQuarantineOptions'], | |
5 | ||
5e453db7 DM |
6 | monStoreErrors: true, |
7 | ||
6ccd0a47 DM |
8 | authmodeTextHash: { |
9 | ticket: 'Ticket', | |
10 | ldap: 'LDAP', | |
11 | ldapticket: 'LDAP or Ticket' | |
12 | }, | |
13 | ||
14 | reportstyleTextHash: { | |
15 | none: gettext('No Reports'), | |
16 | 'short': gettext('Short'), | |
17 | verbose: gettext('Verbose'), | |
6ccd0a47 DM |
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 | ||
de0ebd99 DC |
32 | /*jslint confusion: true*/ |
33 | /* defaultValue is a string and a number*/ | |
6ccd0a47 DM |
34 | me.add_combobox_row('authmode', gettext('Authentication mode'), { |
35 | defaultValue: 'ticket', | |
36 | renderer: render_authmode, | |
37 | comboItems: [ | |
38 | ['ticket', render_authmode('ticket') ], | |
39 | ['ldap', render_authmode('ldap') ], | |
771bd0b9 | 40 | ['ldapticket', render_authmode('ldapticket') ]] |
6ccd0a47 DM |
41 | }); |
42 | ||
43 | var render_reportstyle = function(value) { | |
44 | return me.reportstyleTextHash[value] || value; | |
45 | }; | |
46 | ||
47 | me.add_combobox_row('reportstyle', gettext('Report Style'), { | |
48 | defaultValue: 'verbose', | |
49 | renderer: render_reportstyle, | |
50 | comboItems: [ | |
51 | ['none', render_reportstyle('none') ], | |
52 | ['short', render_reportstyle('short') ], | |
53 | ['verbose', render_reportstyle('verbose') ], | |
771bd0b9 | 54 | ['custom', render_reportstyle('custom') ]] |
6ccd0a47 | 55 | }); |
de0ebd99 | 56 | /*jslint confusion: false*/ |
6ccd0a47 DM |
57 | |
58 | me.add_text_row('hostname', gettext('Quarantine Host'), | |
59 | { deleteEmpty: true, defaultValue: Proxmox.Utils.noneText }); | |
60 | me.add_text_row('mailfrom', gettext("EMail 'From:'"), | |
61 | { deleteEmpty: true, defaultValue: Proxmox.Utils.noneText }); | |
62 | ||
63 | me.add_boolean_row('viewimages', gettext('View images'), | |
64 | { defaultValue: 1}); | |
65 | ||
66 | me.add_boolean_row('allowhrefs', gettext('Allow HREFs'), | |
67 | {defaultValue: 1 }); | |
68 | ||
69 | var baseurl = '/config/spamquar'; | |
70 | ||
71 | me.selModel = Ext.create('Ext.selection.RowModel', {}); | |
72 | ||
73 | Ext.apply(me, { | |
74 | tbar: [{ | |
75 | text: gettext('Edit'), | |
76 | xtype: 'proxmoxButton', | |
77 | disabled: true, | |
131ba4f6 | 78 | handler: function() { me.run_editor(); }, |
6ccd0a47 DM |
79 | selModel: me.selModel |
80 | }], | |
81 | url: '/api2/json' + baseurl, | |
82 | editorConfig: { | |
771bd0b9 | 83 | url: '/api2/extjs' + baseurl |
6ccd0a47 DM |
84 | }, |
85 | interval: 5000, | |
86 | cwidth1: 200, | |
87 | listeners: { | |
88 | itemdblclick: me.run_editor | |
89 | } | |
90 | }); | |
91 | ||
92 | me.callParent(); | |
93 | ||
94 | me.on('activate', me.rstore.startUpdate); | |
95 | me.on('destroy', me.rstore.stopUpdate); | |
00564597 | 96 | me.on('deactivate', me.rstore.stopUpdate); |
6ccd0a47 DM |
97 | } |
98 | }); |