]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/form/MDevSelector.js
ui: eslint: fix trailing comma and comma related whitespaces errors
[pve-manager.git] / www / manager6 / form / MDevSelector.js
1 Ext.define('PVE.form.MDevSelector', {
2 extend: 'Proxmox.form.ComboGrid',
3 xtype: 'pveMDevSelector',
4
5 store: {
6 fields: [ 'type', 'available', 'description' ],
7 filterOnLoad: true,
8 sorters: [
9 {
10 property : 'type',
11 direction: 'ASC',
12 },
13 ],
14 },
15 autoSelect: false,
16 valueField: 'type',
17 displayField: 'type',
18 listConfig: {
19 columns: [
20 {
21 header: gettext('Type'),
22 dataIndex: 'type',
23 flex: 1,
24 },
25 {
26 header: gettext('Available'),
27 dataIndex: 'available',
28 width: 80,
29 },
30 {
31 header: gettext('Description'),
32 dataIndex: 'description',
33 flex: 1,
34 renderer: function(value) {
35 if (!value) {
36 return '';
37 }
38
39 return value.split('\n').join('<br>');
40 },
41 },
42 ],
43 },
44
45 setPciID: function(pciid, force) {
46 var me = this;
47
48 if (!force && (!pciid || (me.pciid === pciid))) {
49 return;
50 }
51
52 me.pciid = pciid;
53 me.updateProxy();
54 },
55
56
57 setNodename: function(nodename) {
58 var me = this;
59
60 if (!nodename || (me.nodename === nodename)) {
61 return;
62 }
63
64 me.nodename = nodename;
65 me.updateProxy();
66 },
67
68 updateProxy: function() {
69 var me = this;
70 me.store.setProxy({
71 type: 'proxmox',
72 url: '/api2/json/nodes/' + me.nodename + '/hardware/pci/' + me.pciid + '/mdev',
73 });
74 me.store.load();
75 },
76
77 initComponent: function() {
78 var me = this;
79
80 if (!me.nodename) {
81 throw 'no node name specified';
82 }
83
84 me.callParent();
85
86 if (me.pciid) {
87 me.setPciID(me.pciid, true);
88 }
89 },
90 });
91