]> git.proxmox.com Git - pve-manager.git/blob - www/manager/panel/StatusPanel.js
0c5beb450dfeb96cc2d6be051de8cd15b04000a6
[pve-manager.git] / www / manager / panel / StatusPanel.js
1 Ext.define('PVE.panel.StatusPanel', {
2 extend: 'Ext.tab.Panel',
3 alias: 'widget.pveStatusPanel',
4
5
6 //title: "Logs",
7 //tabPosition: 'bottom',
8
9 initComponent: function() {
10 var me = this;
11
12 var stateid = 'ltab';
13 var sp = Ext.state.Manager.getProvider();
14
15 var state = sp.get(stateid);
16 if (state && state.value) {
17 me.activeTab = state.value;
18 }
19
20 Ext.apply(me, {
21 listeners: {
22 tabchange: function() {
23 var atab = me.getActiveTab().itemId;
24 var state = { value: atab };
25 sp.set(stateid, state);
26 }
27 },
28 items: [
29 {
30 itemId: 'tasks',
31 title: gettext('Tasks'),
32 xtype: 'pveClusterTasks'
33 },
34 {
35 itemId: 'clog',
36 title: gettext('Cluster log'),
37 xtype: 'pveClusterLog'
38 }
39 ]
40 });
41
42 me.callParent();
43
44 me.items.get(0).fireEvent('show', me.items.get(0));
45
46 var statechange = function(sp, key, state) {
47 if (key === stateid) {
48 var atab = me.getActiveTab().itemId;
49 var ntab = state.value;
50 if (state && ntab && (atab != ntab)) {
51 me.setActiveTab(ntab);
52 }
53 }
54 };
55
56 sp.on('statechange', statechange);
57 me.on('destroy', function() {
58 sp.un('statechange', statechange);
59 });
60
61 }
62 });