]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/storage/ZFSEdit.js
drop jslint lines
[pve-manager.git] / www / manager6 / storage / ZFSEdit.js
CommitLineData
5bf28d89 1Ext.define('PVE.storage.ZFSInputPanel', {
f28ec3e4 2 extend: 'PVE.panel.StorageBase',
5bf28d89 3
b4659733
TL
4 viewModel: {
5 parent: null,
6 data: {
03bb5ce9
DC
7 isLIO: false,
8 isComstar: true,
9 hasWriteCacheOption: true
b4659733
TL
10 }
11 },
12
13 controller: {
14 xclass: 'Ext.app.ViewController',
15 control: {
16 'field[name=iscsiprovider]': {
17 change: 'changeISCSIProvider'
18 }
19 },
20 changeISCSIProvider: function(f, newVal, oldVal) {
21 var vm = this.getViewModel();
22 vm.set('isLIO', newVal === 'LIO');
03bb5ce9
DC
23 vm.set('isComstar', newVal === 'comstar');
24 vm.set('hasWriteCacheOption', newVal === 'comstar' || newVal === 'istgt');
b4659733
TL
25 }
26 },
27
5bf28d89
DM
28 onGetValues: function(values) {
29 var me = this;
30
d5e771ce 31 if (me.isCreate) {
5bf28d89 32 values.content = 'images';
5bf28d89
DM
33 }
34
f536f691
DM
35 values.nowritecache = values.writecache ? 0 : 1;
36 delete values.writecache;
37
f28ec3e4
TL
38 return me.callParent([values]);
39 },
40
41 setValues: function diff(values) {
42 values.writecache = values.nowritecache ? 0 : 1;
43 this.callParent([values]);
5bf28d89
DM
44 },
45
46 initComponent : function() {
47 var me = this;
48
49 me.column1 = [
5bf28d89 50 {
d5e771ce 51 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 52 name: 'portal',
5bf28d89
DM
53 value: '',
54 fieldLabel: gettext('Portal'),
55 allowBlank: false
56 },
57 {
d5e771ce 58 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 59 name: 'pool',
5bf28d89
DM
60 value: '',
61 fieldLabel: gettext('Pool'),
62 allowBlank: false
63 },
64 {
d5e771ce 65 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 66 name: 'blocksize',
5bf28d89
DM
67 value: '4k',
68 fieldLabel: gettext('Block Size'),
69 allowBlank: false
70 },
71 {
d5e771ce 72 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 73 name: 'target',
5bf28d89
DM
74 value: '',
75 fieldLabel: gettext('Target'),
76 allowBlank: false
77 },
78 {
d5e771ce 79 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 80 name: 'comstar_tg',
5bf28d89
DM
81 value: '',
82 fieldLabel: gettext('Target group'),
03bb5ce9 83 bind: me.isCreate ? { disabled: '{!isComstar}' } : { hidden: '{!isComstar}' },
5bf28d89
DM
84 allowBlank: true
85 }
86 ];
87
88 me.column2 = [
5bf28d89 89 {
d5e771ce 90 xtype: me.isCreate ? 'pveiScsiProviderSelector' : 'displayfield',
5bf28d89 91 name: 'iscsiprovider',
5bf28d89
DM
92 value: 'comstar',
93 fieldLabel: gettext('iSCSI Provider'),
94 allowBlank: false
95 },
96 {
896c0d50 97 xtype: 'proxmoxcheckbox',
5bf28d89
DM
98 name: 'sparse',
99 checked: false,
100 uncheckedValue: 0,
101 fieldLabel: gettext('Thin provision')
102 },
103 {
896c0d50 104 xtype: 'proxmoxcheckbox',
f536f691 105 name: 'writecache',
5bf28d89 106 checked: true,
03bb5ce9 107 bind: me.isCreate ? { disabled: '{!hasWriteCacheOption}' } : { hidden: '{!hasWriteCacheOption}' },
5bf28d89
DM
108 uncheckedValue: 0,
109 fieldLabel: gettext('Write cache')
110 },
111 {
d5e771ce 112 xtype: me.isCreate ? 'textfield' : 'displayfield',
5bf28d89 113 name: 'comstar_hg',
5bf28d89 114 value: '',
03bb5ce9 115 bind: me.isCreate ? { disabled: '{!isComstar}' } : { hidden: '{!isComstar}' },
5bf28d89
DM
116 fieldLabel: gettext('Host group'),
117 allowBlank: true
209923b3
UR
118 },
119 {
120 xtype: me.isCreate ? 'textfield' : 'displayfield',
121 name: 'lio_tpg',
122 value: '',
b4659733 123 bind: me.isCreate ? { disabled: '{!isLIO}' } : { hidden: '{!isLIO}' },
af0aca88 124 allowBlank: false,
03bb5ce9 125 fieldLabel: gettext('Target portal group')
5bf28d89
DM
126 }
127 ];
128
5bf28d89
DM
129 me.callParent();
130 }
131});