]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/storage/ZFSEdit.js
remove displayfield height hack
[pve-manager.git] / www / manager6 / storage / ZFSEdit.js
CommitLineData
5bf28d89
DM
1Ext.define('PVE.storage.ZFSInputPanel', {
2 extend: 'PVE.panel.InputPanel',
3
4 onGetValues: function(values) {
5 var me = this;
6
7 if (me.create) {
8 values.type = 'zfs';
9 values.content = 'images';
10 } else {
11 delete values.storage;
12 }
13
14 values.disable = values.enable ? 0 : 1;
15 delete values.enable;
16
17 return values;
18 },
19
20 initComponent : function() {
21 var me = this;
22
23 me.column1 = [
24 {
25 xtype: me.create ? 'textfield' : 'displayfield',
26 name: 'storage',
5bf28d89
DM
27 value: me.storageId || '',
28 fieldLabel: 'ID',
29 vtype: 'StorageId',
30 allowBlank: false
31 },
32 {
33 xtype: me.create ? 'textfield' : 'displayfield',
34 name: 'portal',
5bf28d89
DM
35 value: '',
36 fieldLabel: gettext('Portal'),
37 allowBlank: false
38 },
39 {
40 xtype: me.create ? 'textfield' : 'displayfield',
41 name: 'pool',
5bf28d89
DM
42 value: '',
43 fieldLabel: gettext('Pool'),
44 allowBlank: false
45 },
46 {
47 xtype: me.create ? 'textfield' : 'displayfield',
48 name: 'blocksize',
5bf28d89
DM
49 value: '4k',
50 fieldLabel: gettext('Block Size'),
51 allowBlank: false
52 },
53 {
54 xtype: me.create ? 'textfield' : 'displayfield',
55 name: 'target',
5bf28d89
DM
56 value: '',
57 fieldLabel: gettext('Target'),
58 allowBlank: false
59 },
60 {
61 xtype: me.create ? 'textfield' : 'displayfield',
62 name: 'comstar_tg',
5bf28d89
DM
63 value: '',
64 fieldLabel: gettext('Target group'),
65 allowBlank: true
66 }
67 ];
68
69 me.column2 = [
70 {
71 xtype: 'pvecheckbox',
72 name: 'enable',
73 checked: true,
74 uncheckedValue: 0,
75 fieldLabel: gettext('Enable')
76 },
77 {
78 xtype: me.create ? 'pveiScsiProviderSelector' : 'displayfield',
79 name: 'iscsiprovider',
5bf28d89
DM
80 value: 'comstar',
81 fieldLabel: gettext('iSCSI Provider'),
82 allowBlank: false
83 },
84 {
85 xtype: 'pvecheckbox',
86 name: 'sparse',
87 checked: false,
88 uncheckedValue: 0,
89 fieldLabel: gettext('Thin provision')
90 },
91 {
92 xtype: 'pvecheckbox',
93 name: 'nowritecache',
94 checked: true,
95 uncheckedValue: 0,
96 fieldLabel: gettext('Write cache')
97 },
98 {
99 xtype: me.create ? 'textfield' : 'displayfield',
100 name: 'comstar_hg',
5bf28d89
DM
101 value: '',
102 fieldLabel: gettext('Host group'),
103 allowBlank: true
104 }
105 ];
106
107 if (me.create || me.storageId !== 'local') {
108 me.column2.unshift({
5198365d 109 xtype: 'pveNodeSelector',
5bf28d89
DM
110 name: 'nodes',
111 fieldLabel: gettext('Nodes'),
112 emptyText: gettext('All') + ' (' +
113 gettext('No restrictions') +')',
114 multiSelect: true,
115 autoSelect: false
116 });
117 }
118
119 me.callParent();
120 }
121});
122
123Ext.define('PVE.storage.ZFSEdit', {
124 extend: 'PVE.window.Edit',
177de3de 125
5bf28d89
DM
126 initComponent : function() {
127 var me = this;
128
129 me.create = !me.storageId;
130
131 if (me.create) {
132 me.url = '/api2/extjs/storage';
133 me.method = 'POST';
134 } else {
135 me.url = '/api2/extjs/storage/' + me.storageId;
136 me.method = 'PUT';
137 }
138
139 var ipanel = Ext.create('PVE.storage.ZFSInputPanel', {
140 create: me.create,
141 storageId: me.storageId
142 });
143
144 Ext.apply(me, {
145 subject: 'ZFS Storage',
146 isAdd: true,
147 items: [ ipanel ]
148 });
149
150 me.callParent();
151
152 if (!me.create) {
153 me.load({
154 success: function(response, options) {
155 var values = response.result.data;
156 if (values.nodes) {
157 values.nodes = values.nodes.split(',');
158 }
159 values.enable = values.disable ? 0 : 1;
160 ipanel.setValues(values);
161 }
162 });
163 }
164 }
165});