]>
Commit | Line | Data |
---|---|---|
23b126b2 DC |
1 | Ext.define('PVE.dc.Guests', { |
2 | extend: 'Ext.panel.Panel', | |
3 | alias: 'widget.pveDcGuests', | |
4 | ||
5 | ||
6 | title: gettext('Guests'), | |
769d716b | 7 | height: 250, |
701acf20 DC |
8 | layout: { |
9 | type: 'table', | |
10 | columns: 2, | |
11 | tableAttrs: { | |
12 | style: { | |
f6710aac TL |
13 | width: '100%', |
14 | }, | |
15 | }, | |
701acf20 | 16 | }, |
23b126b2 DC |
17 | bodyPadding: '0 20 20 20', |
18 | ||
19 | defaults: { | |
23b126b2 DC |
20 | xtype: 'box', |
21 | padding: '0 50 0 50', | |
22 | style: { | |
8058410f TL |
23 | 'text-align': 'center', |
24 | 'line-height': '1.2', | |
f6710aac | 25 | }, |
23b126b2 DC |
26 | }, |
27 | items: [{ | |
28 | itemId: 'qemu', | |
29 | data: { | |
30 | running: 0, | |
31 | paused: 0, | |
32 | stopped: 0, | |
f6710aac | 33 | template: 0, |
23b126b2 DC |
34 | }, |
35 | tpl: [ | |
36 | '<h3>' + gettext("Virtual Machines") + '</h3>', | |
37 | '<div class="left-aligned">', | |
38 | '<i class="good fa fa-fw fa-play-circle"> </i>', | |
39 | gettext('Running'), | |
40 | '</div>', | |
41 | '<div class="right-aligned">{running}</div>' + '<br />', | |
42 | '<tpl if="paused > 0">', | |
43 | '<div class="left-aligned">', | |
44 | '<i class="warning fa fa-fw fa-pause-circle"> </i>', | |
45 | gettext('Paused'), | |
46 | '</div>', | |
47 | '<div class="right-aligned">{paused}</div>' + '<br />', | |
48 | '</tpl>', | |
49 | '<div class="left-aligned">', | |
50 | '<i class="faded fa fa-fw fa-stop-circle"> </i>', | |
51 | gettext('Stopped'), | |
52 | '</div>', | |
53 | '<div class="right-aligned">{stopped}</div>' + '<br />', | |
54 | '<tpl if="template > 0">', | |
55 | '<div class="left-aligned">', | |
56 | '<i class="fa fa-fw fa-circle-o"> </i>', | |
57 | gettext('Templates'), | |
58 | '</div>', | |
59 | '<div class="right-aligned">{template}</div>', | |
f6710aac TL |
60 | '</tpl>', |
61 | ], | |
62 | }, { | |
23b126b2 DC |
63 | itemId: 'lxc', |
64 | data: { | |
65 | running: 0, | |
66 | paused: 0, | |
67 | stopped: 0, | |
f6710aac | 68 | template: 0, |
23b126b2 DC |
69 | }, |
70 | tpl: [ | |
71 | '<h3>' + gettext("LXC Container") + '</h3>', | |
72 | '<div class="left-aligned">', | |
73 | '<i class="good fa fa-fw fa-play-circle"> </i>', | |
74 | gettext('Running'), | |
75 | '</div>', | |
76 | '<div class="right-aligned">{running}</div>' + '<br />', | |
77 | '<tpl if="paused > 0">', | |
78 | '<div class="left-aligned">', | |
79 | '<i class="warning fa fa-fw fa-pause-circle"> </i>', | |
80 | gettext('Paused'), | |
81 | '</div>', | |
82 | '<div class="right-aligned">{paused}</div>' + '<br />', | |
83 | '</tpl>', | |
84 | '<div class="left-aligned">', | |
85 | '<i class="faded fa fa-fw fa-stop-circle"> </i>', | |
86 | gettext('Stopped'), | |
87 | '</div>', | |
88 | '<div class="right-aligned">{stopped}</div>' + '<br />', | |
89 | '<tpl if="template > 0">', | |
90 | '<div class="left-aligned">', | |
91 | '<i class="fa fa-fw fa-circle-o"> </i>', | |
92 | gettext('Templates'), | |
93 | '</div>', | |
94 | '<div class="right-aligned">{template}</div>', | |
f6710aac TL |
95 | '</tpl>', |
96 | ], | |
97 | }, { | |
23b126b2 | 98 | itemId: 'error', |
701acf20 | 99 | colspan: 2, |
23b126b2 | 100 | data: { |
f6710aac | 101 | num: 0, |
23b126b2 DC |
102 | }, |
103 | columnWidth: 1, | |
104 | padding: '10 250 0 250', | |
105 | tpl: [ | |
106 | '<tpl if="num > 0">', | |
107 | '<div class="left-aligned">', | |
108 | '<i class="critical fa fa-fw fa-times-circle"> </i>', | |
109 | gettext('Error'), | |
110 | '</div>', | |
111 | '<div class="right-aligned">{num}</div>', | |
f6710aac TL |
112 | '</tpl>', |
113 | ], | |
23b126b2 DC |
114 | }], |
115 | ||
116 | updateValues: function(qemu, lxc, error) { | |
117 | var me = this; | |
118 | me.getComponent('qemu').update(qemu); | |
119 | me.getComponent('lxc').update(lxc); | |
8058410f | 120 | me.getComponent('error').update({ num: error }); |
f6710aac | 121 | }, |
23b126b2 | 122 | }); |