]> git.proxmox.com Git - pve-manager.git/blobdiff - www/manager6/window/PCIMapEdit.js
ui: guest import: network grid: allow selecting hardware type
[pve-manager.git] / www / manager6 / window / PCIMapEdit.js
index f243362b11564cdb94e36bafc906ab8e482f50d7..d43f04eb2f7e2468cbc08955904804ac98f5c996 100644 (file)
@@ -13,8 +13,12 @@ Ext.define('PVE.window.PCIMapEditWindow', {
 
     cbindData: function(initialConfig) {
        let me = this;
-       me.isCreate = !me.name || !me.nodename;
+       me.isCreate = (!me.name || !me.nodename) && !me.entryOnly;
        me.method = me.name ? 'PUT' : 'POST';
+       me.hideMapping = !!me.entryOnly;
+       me.hideComment = me.name && !me.entryOnly;
+       me.hideNodeSelector = me.nodename || me.entryOnly;
+       me.hideNode = !me.nodename || !me.hideNodeSelector;
        return {
            name: me.name,
            nodename: me.nodename,
@@ -163,8 +167,7 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    hidden: true,
                    columnWidth: 1,
                    padding: '0 0 10 0',
-                   value: 'No IOMMU detected, please activate it.' +
-                   'See Documentation for further information.',
+                   value: gettext('No IOMMU detected, please activate it. See Documentation for further information.'),
                    userCls: 'pmx-hint',
                },
                {
@@ -173,8 +176,7 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    hidden: true,
                    columnWidth: 1,
                    padding: '0 0 10 0',
-                   value: 'When multiple devices are selected, the first free one will be chosen' +
-                       ' on guest start.',
+                   value: gettext('When multiple devices are selected, the first free one will be chosen on guest start.'),
                    userCls: 'pmx-hint',
                },
                {
@@ -184,7 +186,7 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    columnWidth: 1,
                    padding: '0 0 10 0',
                    itemId: 'iommuwarning',
-                   value: 'The selected Device is not in a seperate IOMMU group, make sure this is intended.',
+                   value: gettext('A selected device is not in a separate IOMMU group, make sure this is intended.'),
                    userCls: 'pmx-hint',
                },
            ],
@@ -203,35 +205,41 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    allowBlank: false,
                },
                {
-                   xtype: 'pmxDisplayEditField',
+                   xtype: 'displayfield',
                    fieldLabel: gettext('Mapping on Node'),
                    labelWidth: 120,
                    name: 'node',
-                   editConfig: {
-                       xtype: 'pveNodeSelector',
-                       reference: 'nodeselector',
-                   },
                    cbind: {
-                       editable: '{!nodename}',
                        value: '{nodename}',
+                       disabled: '{hideNode}',
+                       hidden: '{hideNode}',
+                   },
+                   allowBlank: false,
+               },
+               {
+                   xtype: 'pveNodeSelector',
+                   reference: 'nodeselector',
+                   fieldLabel: gettext('Mapping on Node'),
+                   labelWidth: 120,
+                   name: 'node',
+                   cbind: {
+                       disabled: '{hideNodeSelector}',
+                       hidden: '{hideNodeSelector}',
                    },
                    allowBlank: false,
                },
            ],
 
            column2: [
-               {
-                   // as spacer
-                   xtype: 'displayfield',
-               },
                {
                    xtype: 'proxmoxcheckbox',
-                   fieldLabel: gettext('Mediated Devices'),
-                   labelWidth: 120,
+                   fieldLabel: gettext('Use with Mediated Devices'),
+                   labelWidth: 200,
                    reference: 'mdev',
                    name: 'mdev',
                    cbind: {
                        deleteEmpty: '{!isCreate}',
+                       disabled: '{hideComment}',
                    },
                },
            ],
@@ -246,6 +254,8 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    name: 'map',
                    cbind: {
                        nodename: '{nodename}',
+                       disabled: '{hideMapping}',
+                       hidden: '{hideMapping}',
                    },
                    allowBlank: false,
                    onLoadCallBack: 'checkIommu',
@@ -259,6 +269,8 @@ Ext.define('PVE.window.PCIMapEditWindow', {
                    name: 'description',
                    cbind: {
                        deleteEmpty: '{!isCreate}',
+                       disabled: '{hideComment}',
+                       hidden: '{hideComment}',
                    },
                },
            ],