padding: template ? '5' : '0 5 0 0',
itemId: 'gueststatus',
pveSelNode: me.pveSelNode,
- rstore: rstore
+ rstore: rstore,
},
{
xtype: 'pveNotesView',
var rrdstore;
if (!template) {
-
// in non-template mode put the two panels always together
items = [
{
type: 'hbox',
align: 'stretch',
},
- items: items
- }
+ items: items,
+ },
];
rrdstore = Ext.create('Proxmox.data.RRDStore', {
rrdurl: `/api2/json/nodes/${nodename}/${type}/${vmid}/rrddata`,
- model: 'pve-rrd-guest'
+ model: 'pve-rrd-guest',
});
items.push(
pveSelNode: me.pveSelNode,
fields: ['cpu'],
fieldTitles: [gettext('CPU usage')],
- store: rrdstore
+ store: rrdstore,
},
{
xtype: 'proxmoxRRDChart',
pveSelNode: me.pveSelNode,
fields: ['maxmem', 'mem'],
fieldTitles: [gettext('Total'), gettext('RAM usage')],
- store: rrdstore
+ unit: 'bytes',
+ powerOfTwo: true,
+ store: rrdstore,
},
{
xtype: 'proxmoxRRDChart',
title: gettext('Network traffic'),
pveSelNode: me.pveSelNode,
- fields: ['netin','netout'],
- store: rrdstore
+ fields: ['netin', 'netout'],
+ store: rrdstore,
},
{
xtype: 'proxmoxRRDChart',
title: gettext('Disk IO'),
pveSelNode: me.pveSelNode,
- fields: ['diskread','diskwrite'],
- store: rrdstore
- }
+ fields: ['diskread', 'diskwrite'],
+ store: rrdstore,
+ },
);
-
}
Ext.apply(me, {
- tbar: [ '->', { xtype: 'proxmoxRRDTypeSelector' } ],
+ tbar: ['->', { xtype: 'proxmoxRRDTypeSelector' }],
items: [
{
xtype: 'container',
itemId: 'itemcontainer',
layout: {
- type: 'column'
+ type: 'column',
},
+ minWidth: 700,
defaults: {
minHeight: 330,
padding: 5,
listeners: {
resize: function(container) {
PVE.Utils.updateColumns(container);
- }
- }
- }
- ]
+ },
+ },
+ },
+ ],
});
me.callParent();
rrdstore.startUpdate();
me.on('destroy', rrdstore.stopUpdate);
}
- }
+ let sp = Ext.state.Manager.getProvider();
+ me.mon(sp, 'statechange', function(provider, key, value) {
+ if (key !== 'summarycolumns') {
+ return;
+ }
+ PVE.Utils.updateColumns(me.getComponent('itemcontainer'));
+ });
+ },
});