give error instead of disabling efidisk button

when seabios is selected, we do not want to simply
disable the add efi button, because it is not clear
why it is disabled

so we give a meaningful error message instead

the button is still 'just' disabled when there
is already an efidisk, because then it is clear
that you alread have one

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
Dominik Csapak 2016-09-13 15:12:26 +02:00 committed by Dietmar Maurer
parent f3777880e9
commit 1535df627b

View File

@ -436,12 +436,20 @@ Ext.define('PVE.qemu.HardwareView', {
iconCls: 'pve-itype-icon-storage',
disabled: !caps.vms['VM.Config.Disk'],
handler: function() {
var rstoredata = me.rstore.getData().map;
// check if ovmf is configured
if (rstoredata.bios && rstoredata.bios.data.value === 'ovmf') {
var win = Ext.create('PVE.qemu.EFIDiskEdit', {
url: '/api2/extjs/' + baseurl,
pveSelNode: me.pveSelNode
});
win.on('destroy', reload);
win.show();
} else {
Ext.Msg.alert('Error',gettext('Please select OVMF(UEFI) as BIOS first.'));
}
}
});
@ -449,16 +457,10 @@ Ext.define('PVE.qemu.HardwareView', {
var sm = me.getSelectionModel();
var rec = sm.getSelection()[0];
// check if there is already an efidisk
var rstoredata = me.rstore.getData().map;
if (rstoredata.bios &&
rstoredata.bios.data.value === 'ovmf' &&
!rstoredata.efidisk0) {
// we have ovmf configured and no efidisk
efidisk_menuitem.setDisabled(false);
} else {
efidisk_menuitem.setDisabled(true);
}
// disable button when we have an efidisk already
// disable is ok in this case, because you can instantly
// see that there is already one
efidisk_menuitem.setDisabled(me.rstore.getData().map.efidisk0 !== undefined);
if (!rec) {
remove_btn.disable();