From 1535df627bb2a74bc3ff8617bb2b0a8169979c6c Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Tue, 13 Sep 2016 15:12:26 +0200 Subject: [PATCH] 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 --- www/manager6/qemu/HardwareView.js | 34 ++++++++++++++++--------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/www/manager6/qemu/HardwareView.js b/www/manager6/qemu/HardwareView.js index f4b12d4e..42dcb27b 100644 --- a/www/manager6/qemu/HardwareView.js +++ b/www/manager6/qemu/HardwareView.js @@ -436,12 +436,20 @@ Ext.define('PVE.qemu.HardwareView', { iconCls: 'pve-itype-icon-storage', disabled: !caps.vms['VM.Config.Disk'], handler: function() { - var win = Ext.create('PVE.qemu.EFIDiskEdit', { - url: '/api2/extjs/' + baseurl, - pveSelNode: me.pveSelNode - }); - win.on('destroy', reload); - win.show(); + + 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();