]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/storage/LvmThinEdit.js
ui: eslint: fix various spacing related issues
[pve-manager.git] / www / manager6 / storage / LvmThinEdit.js
1 Ext.define('PVE.storage.TPoolSelector', {
2 extend: 'Ext.form.field.ComboBox',
3 alias: 'widget.pveTPSelector',
4
5 queryParam: 'vg',
6 valueField: 'lv',
7 displayField: 'lv',
8 editable: false,
9
10 doRawQuery: function() {
11 },
12
13 onTriggerClick: function() {
14 var me = this;
15
16 if (!me.queryCaching || me.lastQuery !== me.vg) {
17 me.store.removeAll();
18 }
19
20 me.allQuery = me.vg;
21
22 me.callParent();
23 },
24
25 setVG: function(myvg) {
26 var me = this;
27
28 me.vg = myvg;
29 },
30
31 initComponent: function() {
32 var me = this;
33
34 if (!me.nodename) {
35 me.nodename = 'localhost';
36 }
37
38 var store = Ext.create('Ext.data.Store', {
39 fields: ['lv'],
40 proxy: {
41 type: 'proxmox',
42 url: '/api2/json/nodes/' + me.nodename + '/scan/lvmthin',
43 },
44 });
45
46 store.sort('lv', 'ASC');
47
48 Ext.apply(me, {
49 store: store,
50 listConfig: {
51 loadingText: gettext('Scanning...'),
52 },
53 });
54
55 me.callParent();
56 },
57 });
58
59 Ext.define('PVE.storage.BaseVGSelector', {
60 extend: 'Ext.form.field.ComboBox',
61 alias: 'widget.pveBaseVGSelector',
62
63 valueField: 'vg',
64 displayField: 'vg',
65 queryMode: 'local',
66 editable: false,
67 initComponent: function() {
68 var me = this;
69
70 if (!me.nodename) {
71 me.nodename = 'localhost';
72 }
73
74 var store = Ext.create('Ext.data.Store', {
75 autoLoad: {},
76 fields: ['vg', 'size', 'free'],
77 proxy: {
78 type: 'proxmox',
79 url: '/api2/json/nodes/' + me.nodename + '/scan/lvm',
80 },
81 });
82
83 Ext.apply(me, {
84 store: store,
85 listConfig: {
86 loadingText: gettext('Scanning...'),
87 },
88 });
89
90 me.callParent();
91 },
92 });
93
94 Ext.define('PVE.storage.LvmThinInputPanel', {
95 extend: 'PVE.panel.StorageBase',
96
97 onlineHelp: 'storage_lvmthin',
98
99 initComponent: function() {
100 var me = this;
101
102 me.column1 = [];
103
104 var vgnameField = Ext.createWidget(me.isCreate ? 'textfield' : 'displayfield', {
105 name: 'vgname',
106 hidden: !!me.isCreate,
107 disabled: !!me.isCreate,
108 value: '',
109 fieldLabel: gettext('Volume group'),
110 allowBlank: false,
111 });
112
113 var thinpoolField = Ext.createWidget(me.isCreate ? 'textfield' : 'displayfield', {
114 name: 'thinpool',
115 hidden: !!me.isCreate,
116 disabled: !!me.isCreate,
117 value: '',
118 fieldLabel: gettext('Thin Pool'),
119 allowBlank: false,
120 });
121
122 if (me.isCreate) {
123 var vgField = Ext.create('PVE.storage.TPoolSelector', {
124 name: 'thinpool',
125 fieldLabel: gettext('Thin Pool'),
126 allowBlank: false,
127 });
128
129 me.column1.push({
130 xtype: 'pveBaseVGSelector',
131 name: 'vgname',
132 fieldLabel: gettext('Volume group'),
133 listeners: {
134 change: function(f, value) {
135 if (me.isCreate) {
136 vgField.setVG(value);
137 vgField.setValue('');
138 }
139 },
140 },
141 });
142
143 me.column1.push(vgField);
144 }
145
146 me.column1.push(vgnameField);
147
148 me.column1.push(thinpoolField);
149
150 // here value is an array,
151 // while before it was a string
152 me.column1.push({
153 xtype: 'pveContentTypeSelector',
154 cts: ['images', 'rootdir'],
155 fieldLabel: gettext('Content'),
156 name: 'content',
157 value: ['images', 'rootdir'],
158 multiSelect: true,
159 allowBlank: false,
160 });
161
162 me.column2 = [];
163
164 me.callParent();
165 },
166 });