]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/panel/GuestStatusView.js
show guest-agent provided ip address in qemu summary
[pve-manager.git] / www / manager6 / panel / GuestStatusView.js
1 Ext.define('PVE.panel.GuestStatusView', {
2 extend: 'PVE.panel.StatusView',
3 alias: 'widget.pveGuestStatusView',
4 mixins: ['Proxmox.Mixin.CBind'],
5
6 height: 300,
7
8 layout: {
9 type: 'vbox',
10 align: 'stretch'
11 },
12
13 defaults: {
14 xtype: 'pveInfoWidget',
15 padding: '2 25'
16 },
17 items: [
18 {
19 xtype: 'box',
20 height: 20
21 },
22 {
23 itemId: 'status',
24 title: gettext('Status'),
25 iconCls: 'fa fa-info fa-fw',
26 printBar: false,
27 textField: 'status'
28 },
29 {
30 itemId: 'hamanaged',
31 iconCls: 'fa fa-heartbeat fa-fw',
32 title: gettext('HA State'),
33 printBar: false,
34 textField: 'ha',
35 renderer: PVE.Utils.format_ha
36 },
37 {
38 itemId: 'node',
39 iconCls: 'fa fa-building fa-fw',
40 title: gettext('Node'),
41 printBar: false
42 },
43 {
44 xtype: 'box',
45 height: 15
46 },
47 {
48 itemId: 'cpu',
49 iconCls: 'fa fa-fw pve-itype-icon-processor pve-icon',
50 title: gettext('CPU usage'),
51 valueField: 'cpu',
52 maxField: 'cpus',
53 renderer: PVE.Utils.render_cpu_usage,
54 // in this specific api call
55 // we already have the correct value for the usage
56 calculate: Ext.identityFn
57 },
58 {
59 itemId: 'memory',
60 iconCls: 'fa fa-fw pve-itype-icon-memory pve-icon',
61 title: gettext('Memory usage'),
62 valueField: 'mem',
63 maxField: 'maxmem'
64 },
65 {
66 itemId: 'swap',
67 iconCls: 'fa fa-refresh fa-fw',
68 title: gettext('SWAP usage'),
69 valueField: 'swap',
70 maxField: 'maxswap'
71 },
72 {
73 itemId: 'rootfs',
74 iconCls: 'fa fa-hdd-o fa-fw',
75 title: gettext('Bootdisk size'),
76 valueField: 'disk',
77 maxField: 'maxdisk',
78 printBar: false,
79 renderer: function(used, max) {
80 var me = this;
81 me.setPrintBar(used > 0);
82 if (used === 0) {
83 return PVE.Utils.render_size(max);
84 } else {
85 return PVE.Utils.render_size_usage(used,max);
86 }
87 }
88 },
89 {
90 xtype: 'box',
91 height: 15
92 },
93 {
94 itemId: 'ips',
95 xtype: 'pveAgentIPView',
96 cbind: {
97 rstore: '{rstore}',
98 pveSelNode: '{pveSelNode}'
99 }
100 }
101 ],
102
103 updateTitle: function() {
104 var me = this;
105 var uptime = me.getRecordValue('uptime');
106
107 var text = "";
108 if (Number(uptime) > 0) {
109 text = " (" + gettext('Uptime') + ': ' + Proxmox.Utils.format_duration_long(uptime)
110 + ')';
111 }
112
113 me.setTitle(me.getRecordValue('name') + text);
114 },
115
116 initComponent: function() {
117 var me = this;
118
119 me.callParent();
120 if (me.pveSelNode.data.type !== 'lxc') {
121 me.remove(me.getComponent('swap'));
122 } else {
123 me.remove(me.getComponent('ips'));
124 }
125 me.getComponent('node').updateValue(me.pveSelNode.data.node);
126 }
127 });