]>
git.proxmox.com Git - pmg-gui.git/blob - js/SpamDetectorStatus.js
2 Ext
.define('pmg-spamassassin-database', {
3 extend
: 'Ext.data.Model',
5 'channel', 'version', 'update_version',
6 { name
: 'update_avail', type
: 'boolean' },
7 { name
: 'last_updated', type
: 'date', dateFormat
: 'timestamp' }
12 Ext
.define('PMG.SpamDetectorStatusGrid', {
13 extend
: 'Ext.grid.GridPanel',
14 xtype
: 'pmgSpamDetectorStatus',
16 title
: gettext('Status'),
23 header
: gettext('Channel'),
29 header
: gettext('Last Update'),
32 dataIndex
: 'last_updated'
35 header
: gettext('Version'),
41 header
: gettext('Update Available'),
44 dataIndex
: 'update_avail',
45 renderer: function(value
, metaData
, record
) {
47 return Proxmox
.Utils
.noText
;
49 return Proxmox
.Utils
.yesText
+ ' (' + record
.data
.update_version
+ ')';
56 activate: function() {
64 text
: gettext('Update Now'),
66 var me
= this.up('grid');
67 Proxmox
.Utils
.API2Request({
68 url
: '/nodes/' + Proxmox
.NodeName
+ '/spamassassin/rules',
70 failure: function(response
) {
71 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
73 success: function(response
) {
74 var upid
= response
.result
.data
;
76 var win
= Ext
.create('Proxmox.window.TaskViewer', {
80 me
.mon(win
, 'close', function() { me
.store
.load(); });
87 initComponent : function() {
90 me
.store
= Ext
.create('Ext.data.Store', {
91 model
: 'pmg-spamassassin-database',
94 url
: "/api2/json/nodes/" + Proxmox
.NodeName
+ "/spamassassin/rules"
104 Proxmox
.Utils
.monStoreErrors(me
.getView(), me
.store
, true);