]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/qemu/HDEfi.js
update shipped appliance info index
[pve-manager.git] / www / manager6 / qemu / HDEfi.js
CommitLineData
1c67cee1 1Ext.define('PVE.qemu.EFIDiskInputPanel', {
ef4ef788 2 extend: 'Proxmox.panel.InputPanel',
1c67cee1
DC
3 alias: 'widget.pveEFIDiskInputPanel',
4
5 insideWizard: false,
6
7 unused: false, // ADD usused disk imaged
8
9 vmconfig: {}, // used to select usused disks
10
1c67cee1
DC
11 onGetValues: function(values) {
12 var me = this;
13
80ddbcdf
TL
14 if (me.disabled) {
15 return {};
16 }
17
1c67cee1
DC
18 var confid = 'efidisk0';
19
20 if (values.hdimage) {
21 me.drive.file = values.hdimage;
22 } else {
23 // we use 1 here, because for efi the size gets overridden from the backend
24 me.drive.file = values.hdstorage + ":1";
25 }
26
fd12adfb
TL
27 // always default to newer 4m type with secure boot support, if we're
28 // adding a new EFI disk there can't be any old state anyway
29 me.drive.efitype = '4m';
30 me.drive['pre-enrolled-keys'] = values.preEnrolledKeys;
31 delete values.preEnrolledKeys;
32
1c67cee1 33 me.drive.format = values.diskformat;
fd12adfb 34 let params = {};
1c67cee1
DC
35 params[confid] = PVE.Parser.printQemuDrive(me.drive);
36 return params;
37 },
38
39 setNodename: function(nodename) {
40 var me = this;
c56689d0
DC
41 me.down('#hdstorage').setNodename(nodename);
42 me.down('#hdimage').setStorage(undefined, nodename);
1c67cee1
DC
43 },
44
80ddbcdf
TL
45 setDisabled: function(disabled) {
46 let me = this;
47 me.down('pveDiskStorageSelector').setDisabled(disabled);
fd12adfb 48 me.down('proxmoxcheckbox[name=preEnrolledKeys]').setDisabled(disabled);
80ddbcdf
TL
49 me.callParent(arguments);
50 },
51
8058410f 52 initComponent: function() {
1c67cee1
DC
53 var me = this;
54
55 me.drive = {};
56
80ddbcdf 57 me.items = [
c570b6a9
TL
58 {
59 xtype: 'pveDiskStorageSelector',
60 name: 'efidisk0',
7d21fd93 61 storageLabel: gettext('EFI Storage'),
c570b6a9
TL
62 storageContent: 'images',
63 nodename: me.nodename,
80ddbcdf 64 disabled: me.disabled,
f6710aac 65 hideSize: true,
c570b6a9 66 },
fd12adfb
TL
67 {
68 xtype: 'proxmoxcheckbox',
69 name: 'preEnrolledKeys',
70 checked: true,
71 fieldLabel: gettext("Pre-Enroll keys"),
72 disabled: me.disabled,
73 //boxLabel: '(e.g., Microsoft secure-boot keys')',
74 autoEl: {
75 tag: 'div',
7d21fd93 76 'data-qtip': gettext('Use EFIvars image with standard distribution and Microsoft secure boot keys enrolled.'),
fd12adfb
TL
77 },
78 },
c570b6a9
TL
79 {
80 xtype: 'label',
81 text: gettext("Warning: The VM currently does not uses 'OVMF (UEFI)' as BIOS."),
f71b7c28 82 userCls: 'pmx-hint',
c570b6a9
TL
83 hidden: me.usesEFI,
84 },
85 ];
86
1c67cee1 87 me.callParent();
f6710aac 88 },
1c67cee1
DC
89});
90
91Ext.define('PVE.qemu.EFIDiskEdit', {
9fccc702 92 extend: 'Proxmox.window.Edit',
1c67cee1
DC
93
94 isAdd: true,
95 subject: gettext('EFI Disk'),
96
c570b6a9 97 width: 450,
8058410f 98 initComponent: function() {
1c67cee1
DC
99 var me = this;
100
101 var nodename = me.pveSelNode.data.node;
102 if (!nodename) {
103 throw "no node name specified";
104 }
105
1c67cee1
DC
106 me.items = [{
107 xtype: 'pveEFIDiskInputPanel',
c8802a60 108 onlineHelp: 'qm_bios_and_uefi',
1c67cee1
DC
109 confid: me.confid,
110 nodename: nodename,
c570b6a9
TL
111 usesEFI: me.usesEFI,
112 isCreate: true,
1c67cee1 113 }];
1c67cee1
DC
114
115 me.callParent();
f6710aac 116 },
1c67cee1 117});