]>
git.proxmox.com Git - pmg-gui.git/blob - js/SenderStatistics.js
1 Ext
.define('PMG.SenderDetails', {
2 extend
: 'Ext.grid.GridPanel',
3 xtype
: 'pmgSenderDetails',
11 html
: gettext('Please select a sender.')
15 disableSelection
: true,
17 setUrl: function(url
, title
) {
22 var infopanel
= me
.getComponent('info');
24 infopanel
.update(title
);
26 infopanel
.update(gettext('Please select a sender.'));
34 'receiver', 'virusname',
35 { type
: 'integer', name
: 'bytes' },
36 { type
: 'boolean', name
: 'blocked' },
37 { type
: 'integer', name
: 'spamlevel' },
38 { type
: 'date', dateFormat
: 'timestamp', name
: 'time' }
54 text
: gettext('Receiver'),
55 renderer
: Ext
.htmlEncode
,
60 header
: gettext('Size') + ' (KB)',
61 renderer: function(v
) { return Ext
.Number
.toFixed(v
/1024, 0); },
66 header
: gettext('Date'),
72 header
: gettext('Time'),
79 Ext
.define('PMG.SenderList', {
80 extend
: 'Ext.grid.GridPanel',
81 alias
: 'widget.pmgSenderList',
83 title
: gettext('Statistics') + ': ' + gettext('Sender'),
85 multiColumnSort
: true,
86 plugins
: 'gridfilters',
88 emptyText
: gettext('No data in database.'),
93 tbar
: [ { xtype
: 'pmgStatTimeSelector' } ],
97 staturl
: '/api2/json/statistics/sender',
102 { type
: 'integer', name
: 'count' },
103 { type
: 'integer', name
: 'bytes' },
104 { type
: 'integer', name
: 'viruscount' }
107 type
: 'pmgfilterproxy',
108 sortParam
: 'orderby',
109 filterId
: 'x-gridfilter-sender'
129 text
: gettext('Sender'),
131 renderer
: Ext
.htmlEncode
,
136 // any Ext.form.field.Text configs accepted
141 text
: gettext('Count'),
145 text
: gettext('Size') + ' (KB)',
147 renderer: function(v
) {
148 return Ext
.Number
.toFixed(v
/1024, 0);
153 initComponent: function() {
157 Proxmox
.Utils
.monStoreErrors(me
, me
.store
);
161 Ext
.define('PMG.SenderStatistics', {
162 extend
: 'Ext.panel.Panel',
163 xtype
: 'pmgSenderStatistics',
172 xclass
: 'Ext.app.ViewController',
174 selectionChange: function(grid
, selected
, eOpts
) {
175 var details
= this.lookupReference('details');
176 if (selected
.length
> 0) {
177 var sender
= selected
[0].data
.sender
;
178 var url
= "/api2/json/statistics/sender/" +
179 encodeURIComponent(sender
);
180 details
.setUrl(url
, '<b>' + gettext('Sender') + ':</b> ' + Ext
.htmlEncode(sender
));
189 xtype
: 'pmgSenderList',
190 multiColumnSort
: true,
195 listeners
: { selectionchange
: 'selectionChange' },
198 xtype
: 'pmgSenderDetails',
200 reference
: 'details',