7d21fd936a
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
118 lines
2.6 KiB
JavaScript
118 lines
2.6 KiB
JavaScript
Ext.define('PVE.qemu.EFIDiskInputPanel', {
|
|
extend: 'Proxmox.panel.InputPanel',
|
|
alias: 'widget.pveEFIDiskInputPanel',
|
|
|
|
insideWizard: false,
|
|
|
|
unused: false, // ADD usused disk imaged
|
|
|
|
vmconfig: {}, // used to select usused disks
|
|
|
|
onGetValues: function(values) {
|
|
var me = this;
|
|
|
|
if (me.disabled) {
|
|
return {};
|
|
}
|
|
|
|
var confid = 'efidisk0';
|
|
|
|
if (values.hdimage) {
|
|
me.drive.file = values.hdimage;
|
|
} else {
|
|
// we use 1 here, because for efi the size gets overridden from the backend
|
|
me.drive.file = values.hdstorage + ":1";
|
|
}
|
|
|
|
// always default to newer 4m type with secure boot support, if we're
|
|
// adding a new EFI disk there can't be any old state anyway
|
|
me.drive.efitype = '4m';
|
|
me.drive['pre-enrolled-keys'] = values.preEnrolledKeys;
|
|
delete values.preEnrolledKeys;
|
|
|
|
me.drive.format = values.diskformat;
|
|
let params = {};
|
|
params[confid] = PVE.Parser.printQemuDrive(me.drive);
|
|
return params;
|
|
},
|
|
|
|
setNodename: function(nodename) {
|
|
var me = this;
|
|
me.down('#hdstorage').setNodename(nodename);
|
|
me.down('#hdimage').setStorage(undefined, nodename);
|
|
},
|
|
|
|
setDisabled: function(disabled) {
|
|
let me = this;
|
|
me.down('pveDiskStorageSelector').setDisabled(disabled);
|
|
me.down('proxmoxcheckbox[name=preEnrolledKeys]').setDisabled(disabled);
|
|
me.callParent(arguments);
|
|
},
|
|
|
|
initComponent: function() {
|
|
var me = this;
|
|
|
|
me.drive = {};
|
|
|
|
me.items = [
|
|
{
|
|
xtype: 'pveDiskStorageSelector',
|
|
name: 'efidisk0',
|
|
storageLabel: gettext('EFI Storage'),
|
|
storageContent: 'images',
|
|
nodename: me.nodename,
|
|
disabled: me.disabled,
|
|
hideSize: true,
|
|
},
|
|
{
|
|
xtype: 'proxmoxcheckbox',
|
|
name: 'preEnrolledKeys',
|
|
checked: true,
|
|
fieldLabel: gettext("Pre-Enroll keys"),
|
|
disabled: me.disabled,
|
|
//boxLabel: '(e.g., Microsoft secure-boot keys')',
|
|
autoEl: {
|
|
tag: 'div',
|
|
'data-qtip': gettext('Use EFIvars image with standard distribution and Microsoft secure boot keys enrolled.'),
|
|
},
|
|
},
|
|
{
|
|
xtype: 'label',
|
|
text: gettext("Warning: The VM currently does not uses 'OVMF (UEFI)' as BIOS."),
|
|
userCls: 'pmx-hint',
|
|
hidden: me.usesEFI,
|
|
},
|
|
];
|
|
|
|
me.callParent();
|
|
},
|
|
});
|
|
|
|
Ext.define('PVE.qemu.EFIDiskEdit', {
|
|
extend: 'Proxmox.window.Edit',
|
|
|
|
isAdd: true,
|
|
subject: gettext('EFI Disk'),
|
|
|
|
width: 450,
|
|
initComponent: function() {
|
|
var me = this;
|
|
|
|
var nodename = me.pveSelNode.data.node;
|
|
if (!nodename) {
|
|
throw "no node name specified";
|
|
}
|
|
|
|
me.items = [{
|
|
xtype: 'pveEFIDiskInputPanel',
|
|
onlineHelp: 'qm_bios_and_uefi',
|
|
confid: me.confid,
|
|
nodename: nodename,
|
|
usesEFI: me.usesEFI,
|
|
isCreate: true,
|
|
}];
|
|
|
|
me.callParent();
|
|
},
|
|
});
|