]>
Commit | Line | Data |
---|---|---|
b9a87b84 | 1 | Ext.define('PVE.form.BridgeSelector', { |
0fc95a12 | 2 | extend: 'Proxmox.form.ComboGrid', |
b9a87b84 DM |
3 | alias: ['widget.PVE.form.BridgeSelector'], |
4 | ||
5 | bridgeType: 'any_bridge', // bridge, OVSBridge or any_bridge | |
6 | ||
4cd23745 EK |
7 | store: { |
8 | fields: [ 'iface', 'active', 'type' ], | |
9 | filterOnLoad: true, | |
10 | sorters: [ | |
11 | { | |
12 | property : 'iface', | |
13 | direction: 'ASC' | |
14 | } | |
15 | ] | |
16 | }, | |
17 | valueField: 'iface', | |
18 | displayField: 'iface', | |
19 | listConfig: { | |
20 | columns: [ | |
21 | { | |
22 | header: gettext('Bridge'), | |
23 | dataIndex: 'iface', | |
24 | hideable: false, | |
62631154 | 25 | width: 100 |
4cd23745 EK |
26 | }, |
27 | { | |
28 | header: gettext('Active'), | |
29 | width: 60, | |
30 | dataIndex: 'active', | |
31 | renderer: PVE.Utils.format_boolean | |
5039e75e DC |
32 | }, |
33 | { | |
34 | header: gettext('Comment'), | |
35 | dataIndex: 'comments', | |
62631154 DC |
36 | renderer: Ext.String.htmlEncode, |
37 | flex: 1 | |
4cd23745 EK |
38 | } |
39 | ] | |
40 | }, | |
41 | ||
b9a87b84 DM |
42 | setNodename: function(nodename) { |
43 | var me = this; | |
44 | ||
45 | if (!nodename || (me.nodename === nodename)) { | |
46 | return; | |
47 | } | |
48 | ||
49 | me.nodename = nodename; | |
50 | ||
51 | me.store.setProxy({ | |
52 | type: 'pve', | |
53 | url: '/api2/json/nodes/' + me.nodename + '/network?type=' + | |
54 | me.bridgeType | |
55 | }); | |
56 | ||
57 | me.store.load(); | |
58 | }, | |
59 | ||
60 | initComponent: function() { | |
61 | var me = this; | |
62 | ||
63 | var nodename = me.nodename; | |
64 | me.nodename = undefined; | |
65 | ||
b9a87b84 DM |
66 | me.callParent(); |
67 | ||
4cd23745 | 68 | me.setNodename(nodename); |
b9a87b84 DM |
69 | } |
70 | }); | |
71 |