use DiskStorageSelector in qemu/HDEdit.js

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
Dominik Csapak 2017-11-10 14:49:22 +01:00 committed by Fabian Grünbichler
parent 342225bfda
commit 771aec961f

View File

@ -37,44 +37,6 @@ Ext.define('PVE.qemu.HDInputPanel', {
change: 'onControllerChange', change: 'onControllerChange',
afterrender: 'onControllerChange' afterrender: 'onControllerChange'
}, },
'field[name=hdstorage]': {
change: function(f, value) {
if (!value) { // initial store loading fires an unwanted 'change'
return;
}
var me = this.getView();
var rec = f.store.getById(value);
if (rec.data.type === 'iscsi') {
me.hdfilesel.setStorage(value);
me.hdfilesel.setDisabled(false);
me.formatsel.setValue('raw');
me.formatsel.setDisabled(true);
me.hdfilesel.setVisible(true);
me.hdsizesel.setDisabled(true);
me.hdsizesel.setVisible(false);
} else if (rec.data.type === 'lvm' ||
rec.data.type === 'lvmthin' ||
rec.data.type === 'drbd' ||
rec.data.type === 'rbd' ||
rec.data.type === 'sheepdog' ||
rec.data.type === 'zfs' ||
rec.data.type === 'zfspool') {
me.hdfilesel.setDisabled(true);
me.hdfilesel.setVisible(false);
me.formatsel.setValue('raw');
me.formatsel.setDisabled(true);
me.hdsizesel.setDisabled(false);
me.hdsizesel.setVisible(true);
} else {
me.hdfilesel.setDisabled(true);
me.hdfilesel.setVisible(false);
me.formatsel.setValue('qcow2');
me.formatsel.setDisabled(false);
me.hdsizesel.setDisabled(false);
me.hdsizesel.setVisible(true);
}
}
},
'field[name=iothread]' : { 'field[name=iothread]' : {
change: function(f, value) { change: function(f, value) {
if (!this.getView().insideWizard) { if (!this.getView().insideWizard) {
@ -189,8 +151,8 @@ Ext.define('PVE.qemu.HDInputPanel', {
setNodename: function(nodename) { setNodename: function(nodename) {
var me = this; var me = this;
me.hdstoragesel.setNodename(nodename); me.down('#hdstorage').setNodename(nodename);
me.hdfilesel.setStorage(undefined, nodename); me.down('#hdimage').setStorage(undefined, nodename);
}, },
initComponent : function() { initComponent : function() {
@ -232,46 +194,13 @@ Ext.define('PVE.qemu.HDInputPanel', {
}); });
me.column1.push(me.unusedDisks); me.column1.push(me.unusedDisks);
} else if (me.isCreate) { } else if (me.isCreate) {
me.formatsel = Ext.create('PVE.form.DiskFormatSelector', { me.column1.push({
name: 'diskformat', xtype: 'pveDiskStorageSelector',
fieldLabel: gettext('Format'),
value: 'qcow2',
allowBlank: false
});
me.hdfilesel = Ext.create('PVE.form.FileSelector', {
name: 'hdimage',
nodename: me.nodename,
storageContent: 'images', storageContent: 'images',
fieldLabel: gettext('Disk image'), name: 'disk',
disabled: true,
hidden: true,
allowBlank: false
});
me.hdsizesel = Ext.createWidget('numberfield', {
name: 'disksize',
minValue: 0.001,
maxValue: 128*1024,
decimalPrecision: 3,
value: '32',
fieldLabel: gettext('Disk size') + ' (GB)',
allowBlank: false
});
me.hdstoragesel = Ext.create('PVE.form.StorageSelector', {
name: 'hdstorage',
nodename: me.nodename, nodename: me.nodename,
fieldLabel: gettext('Storage'), autoSelect: me.insideWizard
storageContent: 'images',
autoSelect: me.insideWizard,
allowBlank: false
}); });
me.column1.push(me.hdstoragesel);
me.column1.push(me.hdfilesel);
me.column1.push(me.hdsizesel);
me.column1.push(me.formatsel);
} else { } else {
me.column1.push({ me.column1.push({
xtype: 'textfield', xtype: 'textfield',