]> git.proxmox.com Git - pve-manager.git/blob - www/manager/form/BridgeSelector.js
1628ef2848ee60c49aca5f8ca8442548b8d7e0f6
[pve-manager.git] / www / manager / form / BridgeSelector.js
1 Ext.define('PVE.form.BridgeSelector', {
2 extend: 'PVE.form.ComboGrid',
3 alias: ['widget.PVE.form.BridgeSelector'],
4
5 setNodename: function(nodename) {
6 var me = this;
7
8 if (!nodename || (me.nodename === nodename)) {
9 return;
10 }
11
12 me.nodename = nodename;
13
14 me.store.setProxy({
15 type: 'pve',
16 url: '/api2/json/nodes/' + me.nodename + '/network?type=bridge'
17 });
18
19 me.store.load();
20 },
21
22 initComponent: function() {
23 var me = this;
24
25 var nodename = me.nodename;
26 me.nodename = undefined;
27
28 var store = Ext.create('Ext.data.Store', {
29 fields: [ 'iface', 'active', 'type' ],
30 filterOnLoad: true,
31 sorters: [
32 {
33 property : 'iface',
34 direction: 'ASC'
35 }
36 ]
37 });
38
39 Ext.apply(me, {
40 store: store,
41 valueField: 'iface',
42 displayField: 'iface',
43 listConfig: {
44 columns: [
45 {
46 header: gettext('Bridge'),
47 dataIndex: 'iface',
48 hideable: false,
49 flex: 1
50 },
51 {
52 header: gettext('Active'),
53 width: 60,
54 dataIndex: 'active',
55 renderer: PVE.Utils.format_boolean
56 }
57 ]
58 }
59 });
60
61 me.callParent();
62
63 if (nodename) {
64 me.setNodename(nodename);
65 }
66 }
67 });
68