similar to the pciselector, make it accept a plain nodename,
or no node at all and provide a setNodename function
to keep backwards compatibility, also check pveSelNode for the nodename
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
return gettext("Invalid Value");
},
return gettext("Invalid Value");
},
- initComponent: function() {
+ setNodename: function(nodename) {
- var nodename = me.pveSelNode.data.node;
+ if (!nodename || me.nodename === nodename) {
+ return;
+ }
+
+ me.nodename = nodename;
+
+ me.store.setProxy({
+ type: 'proxmox',
+ url: `/api2/json/nodes/${me.nodename}/hardware/usb`,
+ });
+
+ me.store.load();
+ },
+
+ initComponent: function() {
+ var me = this;
- if (!nodename) {
- throw "no nodename specified";
+ if (me.pveSelNode) {
+ me.nodename = me.pveSelNode.data.node;
+ var nodename = me.nodename;
+ me.nodename = undefined;
+
if (me.type !== 'device' && me.type !== 'port') {
throw "no valid type specified";
}
let store = new Ext.data.Store({
model: `pve-usb-${me.type}`,
if (me.type !== 'device' && me.type !== 'port') {
throw "no valid type specified";
}
let store = new Ext.data.Store({
model: `pve-usb-${me.type}`,
- proxy: {
- type: 'proxmox',
- url: `/api2/json/nodes/${nodename}/hardware/usb`,
- },
filters: [
({ data }) => !!data.usbpath && !!data.prodid && String(data.class) !== "9",
],
filters: [
({ data }) => !!data.usbpath && !!data.prodid && String(data.class) !== "9",
],
+ me.setNodename(nodename);