]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/qemu/HDEfi.js
update shipped appliance info index
[pve-manager.git] / www / manager6 / qemu / HDEfi.js
1 Ext.define('PVE.qemu.EFIDiskInputPanel', {
2 extend: 'Proxmox.panel.InputPanel',
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
11 onGetValues: function(values) {
12 var me = this;
13
14 if (me.disabled) {
15 return {};
16 }
17
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
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
33 me.drive.format = values.diskformat;
34 let params = {};
35 params[confid] = PVE.Parser.printQemuDrive(me.drive);
36 return params;
37 },
38
39 setNodename: function(nodename) {
40 var me = this;
41 me.down('#hdstorage').setNodename(nodename);
42 me.down('#hdimage').setStorage(undefined, nodename);
43 },
44
45 setDisabled: function(disabled) {
46 let me = this;
47 me.down('pveDiskStorageSelector').setDisabled(disabled);
48 me.down('proxmoxcheckbox[name=preEnrolledKeys]').setDisabled(disabled);
49 me.callParent(arguments);
50 },
51
52 initComponent: function() {
53 var me = this;
54
55 me.drive = {};
56
57 me.items = [
58 {
59 xtype: 'pveDiskStorageSelector',
60 name: 'efidisk0',
61 storageLabel: gettext('EFI Storage'),
62 storageContent: 'images',
63 nodename: me.nodename,
64 disabled: me.disabled,
65 hideSize: true,
66 },
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',
76 'data-qtip': gettext('Use EFIvars image with standard distribution and Microsoft secure boot keys enrolled.'),
77 },
78 },
79 {
80 xtype: 'label',
81 text: gettext("Warning: The VM currently does not uses 'OVMF (UEFI)' as BIOS."),
82 userCls: 'pmx-hint',
83 hidden: me.usesEFI,
84 },
85 ];
86
87 me.callParent();
88 },
89 });
90
91 Ext.define('PVE.qemu.EFIDiskEdit', {
92 extend: 'Proxmox.window.Edit',
93
94 isAdd: true,
95 subject: gettext('EFI Disk'),
96
97 width: 450,
98 initComponent: function() {
99 var me = this;
100
101 var nodename = me.pveSelNode.data.node;
102 if (!nodename) {
103 throw "no node name specified";
104 }
105
106 me.items = [{
107 xtype: 'pveEFIDiskInputPanel',
108 onlineHelp: 'qm_bios_and_uefi',
109 confid: me.confid,
110 nodename: nodename,
111 usesEFI: me.usesEFI,
112 isCreate: true,
113 }];
114
115 me.callParent();
116 },
117 });