]> git.proxmox.com Git - pve-manager.git/blobdiff - www/manager6/form/ControllerSelector.js
ui: eslint: fix various spacing related issues
[pve-manager.git] / www / manager6 / form / ControllerSelector.js
index 15023a7a213e192e52cf850110ad8b187064cb69..23c611597512219aa6572d2904b4bf3cab1be5d6 100644 (file)
@@ -1,54 +1,34 @@
 Ext.define('PVE.form.ControllerSelector', {
     extend: 'Ext.form.FieldContainer',
     alias: 'widget.pveControllerSelector',
-   
-    statics: {
-       maxIds: {
-           ide: 3,
-           sata: 5,
-           virtio: 15,
-           scsi: 13
-       }
-    },
 
     noVirtIO: false,
 
     vmconfig: {}, // used to check for existing devices
 
     sortByPreviousUsage: function(vmconfig, controllerList) {
-
-       var usedControllers = Ext.clone(PVE.form.ControllerSelector.maxIds);
-
-       var type;
-       for (type in usedControllers) {
-           if(usedControllers.hasOwnProperty(type)) {
-               usedControllers[type] = 0;
-           }
+       let usedControllers = {};
+       for (const type of Object.keys(PVE.Utils.diskControllerMaxIDs)) {
+           usedControllers[type] = 0;
        }
 
-       var property;
-       for (property in vmconfig) {
-           if (vmconfig.hasOwnProperty(property)) {
-               if (property.match(PVE.Utils.bus_match) && !vmconfig[property].match(/media=cdrom/)) {
-                   var foundController = property.match(PVE.Utils.bus_match)[1];
-                   usedControllers[foundController]++;
-               }
+       for (const property of Object.keys(vmconfig)) {
+           if (property.match(PVE.Utils.bus_match) && !vmconfig[property].match(/media=cdrom/)) {
+               const foundController = property.match(PVE.Utils.bus_match)[1];
+               usedControllers[foundController]++;
            }
        }
 
-       var vmDefaults = PVE.qemu.OSDefaults[vmconfig.ostype];
-
-       var sortPriority = vmDefaults && vmDefaults.busPriority
-           ? vmDefaults.busPriority : PVE.qemu.OSDefaults.generic;
+       var sortPriority = PVE.qemu.OSDefaults.getDefaults(vmconfig.ostype).busPriority;
 
        var sortedList = Ext.clone(controllerList);
-       sortedList.sort(function(a,b) {
+       sortedList.sort(function(a, b) {
            if (usedControllers[b] == usedControllers[a]) {
                return sortPriority[b] - sortPriority[a];
            }
            return usedControllers[b] - usedControllers[a];
        });
-       
+
        return sortedList;
     },
 
@@ -62,32 +42,29 @@ Ext.define('PVE.form.ControllerSelector', {
        var deviceid = me.down('field[name=deviceid]');
 
        if (autoSelect === 'cdrom') {
-           clist = ['ide', 'scsi', 'sata'];
            if (!Ext.isDefined(me.vmconfig.ide2)) {
                bussel.setValue('ide');
                deviceid.setValue(2);
                return;
            }
-       } else  {
+           clist = ['ide', 'scsi', 'sata'];
+       } else {
            // in most cases we want to add a disk to the same controller
            // we previously used
            clist = me.sortByPreviousUsage(me.vmconfig, clist);
        }
 
-       Ext.Array.each(clist, function(controller) {
-           var confid, i;
-           if (controller === 'virtio' && me.noVirtIO) {
-               return; //continue
-           }
+clist_loop:
+       for (const controller of clist) {
            bussel.setValue(controller);
-           for (i = 0; i <= PVE.form.ControllerSelector.maxIds[controller]; i++) {
-               confid = controller + i.toString();
+           for (let i = 0; i < PVE.Utils.diskControllerMaxIDs[controller]; i++) {
+               let confid = controller + i.toString();
                if (!Ext.isDefined(me.vmconfig[confid])) {
                    deviceid.setValue(i);
-                   return false; // break
+                   break clist_loop; // we found the desired controller/id combo
                }
            }
-       });
+       }
        deviceid.validate();
     },
 
@@ -98,7 +75,7 @@ Ext.define('PVE.form.ControllerSelector', {
            fieldLabel: gettext('Bus/Device'),
            layout: 'hbox',
            defaults: {
-                hideLabel: true
+                hideLabel: true,
            },
            items: [
                {
@@ -110,24 +87,24 @@ Ext.define('PVE.form.ControllerSelector', {
                    flex: 2,
                    listeners: {
                        change: function(t, value) {
-                           if (!me.rendered || !value) {
+                           if (!value) {
                                return;
                            }
                            var field = me.down('field[name=deviceid]');
-                           field.setMaxValue(PVE.form.ControllerSelector.maxIds[value]);
+                           field.setMaxValue(PVE.Utils.diskControllerMaxIDs[value]);
                            field.validate();
-                       }
-                   }
+                       },
+                   },
                },
                {
-                   xtype: 'pveIntegerField',
+                   xtype: 'proxmoxintegerfield',
                    name: 'deviceid',
                    minValue: 0,
-                   maxValue: PVE.form.ControllerSelector.maxIds.ide,
+                   maxValue: PVE.Utils.diskControllerMaxIDs.ide,
                    value: '0',
                    flex: 1,
+                   allowBlank: false,
                    validator: function(value) {
-                       /*jslint confusion: true */
                        if (!me.rendered) {
                            return;
                        }
@@ -138,11 +115,11 @@ Ext.define('PVE.form.ControllerSelector', {
                            return "This device is already in use.";
                        }
                        return true;
-                   }
-               }
-           ]
+                   },
+               },
+           ],
        });
 
        me.callParent();
-    }
+    },
 });