]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/qemu/SystemEdit.js
ui: SystemEdit: promote advanced settings to normal
[pve-manager.git] / www / manager6 / qemu / SystemEdit.js
1 Ext.define('PVE.qemu.SystemInputPanel', {
2 extend: 'Proxmox.panel.InputPanel',
3 xtype: 'pveQemuSystemPanel',
4
5 onlineHelp: 'qm_system_settings',
6
7 viewModel: {
8 data: {
9 efi: false,
10 addefi: true,
11 },
12
13 formulas: {
14 efidisk: function(get) {
15 return get('efi') && get('addefi');
16 },
17 },
18 },
19
20 onGetValues: function(values) {
21 if (values.vga && values.vga.substr(0, 6) === 'serial') {
22 values['serial' + values.vga.substr(6, 1)] = 'socket';
23 }
24
25 delete values.hdimage;
26 delete values.hdstorage;
27 delete values.diskformat;
28
29 delete values.preEnrolledKeys; // efidisk
30 delete values.version; // tpmstate
31
32 return values;
33 },
34
35 controller: {
36 xclass: 'Ext.app.ViewController',
37
38 scsihwChange: function(field, value) {
39 var me = this;
40 if (me.getView().insideWizard) {
41 me.getViewModel().set('current.scsihw', value);
42 }
43 },
44
45 biosChange: function(field, value) {
46 var me = this;
47 if (me.getView().insideWizard) {
48 me.getViewModel().set('efi', value === 'ovmf');
49 }
50 },
51
52 control: {
53 'pveScsiHwSelector': {
54 change: 'scsihwChange',
55 },
56 'pveQemuBiosSelector': {
57 change: 'biosChange',
58 },
59 },
60 },
61
62 column1: [
63 {
64 xtype: 'proxmoxKVComboBox',
65 value: '__default__',
66 deleteEmpty: false,
67 fieldLabel: gettext('Graphic card'),
68 name: 'vga',
69 comboItems: PVE.Utils.kvm_vga_driver_array(),
70 },
71 {
72 xtype: 'proxmoxKVComboBox',
73 name: 'machine',
74 value: '__default__',
75 fieldLabel: gettext('Machine'),
76 comboItems: [
77 ['__default__', PVE.Utils.render_qemu_machine('')],
78 ['q35', 'q35'],
79 ],
80 },
81 {
82 xtype: 'pveQemuBiosSelector',
83 name: 'bios',
84 value: '__default__',
85 fieldLabel: 'BIOS',
86 },
87 {
88 xtype: 'proxmoxcheckbox',
89 bind: {
90 value: '{addefi}',
91 hidden: '{!efi}',
92 disabled: '{!efi}',
93 },
94 hidden: true,
95 submitValue: false,
96 disabled: true,
97 fieldLabel: gettext('Add EFI Disk'),
98 },
99 {
100 xtype: 'pveEFIDiskInputPanel',
101 name: 'efidisk0',
102 storageContent: 'images',
103 bind: {
104 nodename: '{nodename}',
105 hidden: '{!efi}',
106 disabled: '{!efidisk}',
107 },
108 autoSelect: false,
109 disabled: true,
110 hidden: true,
111 hideSize: true,
112 usesEFI: true,
113 },
114 ],
115
116 column2: [
117 {
118 xtype: 'pveScsiHwSelector',
119 name: 'scsihw',
120 value: '__default__',
121 bind: {
122 value: '{current.scsihw}',
123 },
124 fieldLabel: gettext('SCSI Controller'),
125 },
126 {
127 xtype: 'proxmoxcheckbox',
128 name: 'agent',
129 uncheckedValue: 0,
130 defaultValue: 0,
131 deleteDefaultValue: true,
132 fieldLabel: gettext('Qemu Agent'),
133 },
134 {
135 xtype: 'proxmoxcheckbox',
136 reference: 'addtpmbox',
137 bind: {
138 value: '{addtpm}',
139 },
140 submitValue: false,
141 fieldLabel: gettext('Add TPM'),
142 },
143 {
144 xtype: 'pveTPMDiskInputPanel',
145 name: 'tpmstate0',
146 storageContent: 'images',
147 bind: {
148 nodename: '{nodename}',
149 hidden: '{!addtpm}',
150 disabled: '{!addtpm}',
151 },
152 disabled: true,
153 hidden: true,
154 },
155 ],
156
157 });