]>
git.proxmox.com Git - pmg-gui.git/blob - js/DomainStatistics.js
8e2e215412141d472fbdccc4662289dd0e37c6ce
1 Ext
.define('PMG.DomainStatistics', {
2 extend
: 'Ext.panel.Panel',
3 xtype
: 'pmgDomainStatistics',
5 title
: gettext('Statistics') + ': ' + gettext('Domain'),
7 tbar
: [ { xtype
: 'pmgStatTimeSelector' } ],
12 initComponent: function() {
17 { type
: 'integer', name
: 'count_in' },
18 { type
: 'integer', name
: 'count_out' },
19 { type
: 'integer', name
: 'spamcount_in' },
20 { type
: 'integer', name
: 'spamcount_out' },
21 { type
: 'integer', name
: 'viruscount_in' },
22 { type
: 'integer', name
: 'viruscount_out' },
23 { type
: 'number', name
: 'mbytes_in' },
24 { type
: 'number', name
: 'mbytes_out' }
27 var store
= Ext
.create('PMG.data.StatStore', {
28 staturl
: '/api2/json/statistics/domains',
32 var store_in
= Ext
.create('Ext.data.ArrayStore', {
34 filters
: [ function(item
) { return item
.data
.count_in
> 0; } ]
37 var store_out
= Ext
.create('Ext.data.ArrayStore', {
39 filters
: [ function(item
) { return item
.data
.count_out
> 0; } ]
42 store
.on('load', function(s
, records
, successful
) {
45 store_out
.setData([]);
47 store_in
.setData(records
);
48 store_out
.setData(records
);
52 var render_domain = function(v
) {
53 return v
=== '' ? '--- EMPTY ADDRESS ---' : v
;
62 title
: gettext('Incoming'),
64 disableSelection
: true,
66 emptyText
: gettext('No data in database.'),
72 text
: gettext('Domain')+ ' (' +
73 gettext('Receiver') + ')',
75 renderer
: render_domain
,
79 text
: gettext('Traffic') + ' (MB)',
80 dataIndex
: 'mbytes_in',
81 renderer: function(v
) {
82 return Ext
.Number
.toFixed(v
, 2);
86 text
: gettext('Count'),
89 text
: gettext('Mail'),
93 header
: gettext('Virus'),
94 dataIndex
: 'viruscount_in'
97 header
: gettext('Spam'),
98 dataIndex
: 'spamcount_in'
106 title
: gettext('Outgoing'),
108 disableSelection
: true,
110 emptyText
: gettext('No data in database.'),
112 deferEmptyText
: false
116 text
: gettext('Domain')+ ' (' +
117 gettext('Receiver') + ')',
119 renderer
: render_domain
,
123 text
: gettext('Traffic') + ' (MB)',
124 dataIndex
: 'mbytes_out',
125 renderer: function(v
) {
126 return Ext
.Number
.toFixed(v
, 2);
130 text
: gettext('Count'),
133 text
: gettext('Mail'),
134 dataIndex
: 'count_out'
137 header
: gettext('Virus'),
138 dataIndex
: 'viruscount_out'
149 Proxmox
.Utils
.monStoreErrors(me
, store
);
151 me
.on('destroy', store
.destroy
, store
);