this.lookup('diskGrid').reconfigure();
},
+ toggleIsoSelector: function(_cb, value) {
+ let me = this;
+ me.lookup('isoSelector').setDisabled(!value);
+ me.lookup('isoSelector').setHidden(!value);
+ },
+
control: {
'grid field': {
// update records from widgetcolumns
'combobox[name=ostype]': {
change: 'refreshDiskGrid',
},
+ 'proxmoxcheckbox[reference=enableSecondCD]': {
+ change: 'toggleIsoSelector',
+ },
},
},
config['live-restore'] = 1;
}
+ if (grid.lookup('enableSecondCD')) {
+ let idsToTry = ['ide0', 'ide2'];
+ for (let i = 0; i <=PVE.Utils.diskControllerMaxIDs.sata; i++) {
+ idsToTry.push(`sata{$i}`);
+ }
+ let found = false;
+ for (const id of idsToTry) {
+ if (!config[id]) {
+ config[id] = PVE.Parser.printQemuDrive({
+ media: 'cdrom',
+ file: grid.lookup('isoSelector').getValue(),
+ });
+ found = true;
+ break;
+ }
+ }
+ if (!found) {
+ console.warn('could not insert cd drive for virtio');
+ }
+ }
+
// remove __default__ values
for (const [key, value] of Object.entries(config)) {
if (value === '__default__') {
submitValue: false,
fieldLabel: gettext('SCSI Controller'),
},
+ {
+ xtype: 'proxmoxcheckbox',
+ reference: 'enableSecondCD',
+ isFormField: false,
+ hidden: true,
+ checked: false,
+ boxLabel: gettext('Add additional drive for VirtIO drivers'),
+ bind: {
+ hidden: '{!isWindows}',
+ disabled: '{!isWindows}',
+ },
+ },
],
column2: [
'data-qtip': gettext('Useful when wanting to use VirtIO-SCSI'),
},
},
+ {
+ xtype: 'pveIsoSelector',
+ reference: 'isoSelector',
+ submitValue: false,
+ labelWidth: 120,
+ labelAlign: 'left',
+ insideWizard: true,
+ hidden: true,
+ disabled: true,
+ },
],
columnB: [
me.lookup('defaultStorage').setNodename(me.nodename);
me.lookup('defaultBridge').setNodename(me.nodename);
+ me.lookup('isoSelector').setNodename(me.nodename);
let renderWarning = w => {
const warningsCatalogue = {