]> git.proxmox.com Git - pve-manager.git/blame - www/manager/form/StorageSelector.js
disable animation of charts on load
[pve-manager.git] / www / manager / form / StorageSelector.js
CommitLineData
aff192e6
DM
1Ext.define('PVE.form.StorageSelector', {
2 extend: 'PVE.form.ComboGrid',
aff192e6
DM
3 alias: ['widget.PVE.form.StorageSelector'],
4
b05f2477 5 reloadStorageList: function() {
aff192e6 6 var me = this;
b05f2477 7 if (!me.nodename) {
aff192e6
DM
8 return;
9 }
10
b05f2477 11 var params = {};
aff192e6
DM
12 var url = '/api2/json/nodes/' + me.nodename + '/storage';
13 if (me.storageContent) {
b05f2477
DM
14 params.content = me.storageContent;
15 }
16 if (me.targetNode) {
17 params.target = me.targetNode;
18 params.enabled = 1; // skip disabled storages
aff192e6 19 }
aff192e6
DM
20 me.store.setProxy({
21 type: 'pve',
b05f2477
DM
22 url: url,
23 extraParams: params
aff192e6
DM
24 });
25
26 me.store.load();
b05f2477
DM
27
28 },
29
30 setTargetNode: function(targetNode) {
31 var me = this;
32
33 if (!targetNode || (me.targetNode === targetNode)) {
34 return;
35 }
36
37 me.targetNode = targetNode;
38
39 me.reloadStorageList();
40 },
41
42 setNodename: function(nodename) {
43 var me = this;
44
45 if (!nodename || (me.nodename === nodename)) {
46 return;
47 }
48
49 me.nodename = nodename;
50
51 me.reloadStorageList();
aff192e6
DM
52 },
53
54 initComponent: function() {
55 var me = this;
56
57 var nodename = me.nodename;
58 me.nodename = undefined;
59
60 var store = Ext.create('Ext.data.Store', {
cf3e36c2 61 model: 'pve-storage-status',
823e701d
DM
62 sorters: {
63 property: 'storage',
64 order: 'DESC'
65 }
aff192e6
DM
66 });
67
68 Ext.apply(me, {
69 store: store,
70 allowBlank: false,
71 valueField: 'storage',
72 displayField: 'storage',
73 listConfig: {
74 columns: [
75 {
0070ee37 76 header: gettext('Name'),
aff192e6
DM
77 dataIndex: 'storage',
78 hideable: false,
79 flex: 1
80 },
81 {
0070ee37 82 header: gettext('Type'),
aff192e6
DM
83 width: 60,
84 dataIndex: 'type'
85 },
86 {
0070ee37 87 header: gettext('Avail'),
aff192e6
DM
88 width: 80,
89 dataIndex: 'avail',
90 renderer: PVE.Utils.format_size
91 },
92 {
0070ee37 93 header: gettext('Capacity'),
aff192e6
DM
94 width: 80,
95 dataIndex: 'total',
96 renderer: PVE.Utils.format_size
97 }
98 ]
99 }
100 });
101
102 me.callParent();
103
104 if (nodename) {
105 me.setNodename(nodename);
106 }
107 }
cf3e36c2
DM
108}, function() {
109
110 Ext.define('pve-storage-status', {
111 extend: 'Ext.data.Model',
112 fields: [ 'storage', 'active', 'type', 'avail', 'total' ],
113 idProperty: 'storage'
114 });
115
116});