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