]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/sdn/VnetView.js
1 Ext
.define('PVE.sdn.VnetView', {
2 extend
: 'Ext.grid.GridPanel',
3 alias
: 'widget.pveSDNVnetView',
5 onlineHelp
: 'pvesdn_config_vnet',
8 stateId
: 'grid-sdn-vnet',
10 subnetview_panel
: undefined,
12 initComponent: function() {
15 let store
= new Ext
.data
.Store({
16 model
: 'pve-sdn-vnet',
19 url
: "/api2/json/cluster/sdn/vnets?pending=1",
27 let reload
= () => store
.load();
29 let sm
= Ext
.create('Ext.selection.RowModel', {});
31 let run_editor = function() {
32 let rec
= sm
.getSelection()[0];
34 let win
= Ext
.create('PVE.sdn.VnetEdit', {
36 onlineHelp
: 'pvesdn_config_vnet',
39 win
.on('destroy', reload
);
42 let edit_btn
= new Proxmox
.button
.Button({
43 text
: gettext('Edit'),
49 let remove_btn
= Ext
.create('Proxmox.button.StdRemoveButton', {
51 baseurl
: '/cluster/sdn/vnets/',
55 let set_button_status = function() {
56 var rec
= me
.selModel
.getSelection()[0];
58 if (!rec
|| rec
.data
.state
=== 'deleted') {
73 text
: gettext('Create'),
75 let win
= Ext
.create('PVE.sdn.VnetEdit', {
77 onlineHelp
: 'pvesdn_config_vnet',
80 win
.on('destroy', reload
);
91 renderer: function(value
, metaData
, rec
) {
92 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'vnet', 1);
96 header
: gettext('Alias'),
99 renderer: function(value
, metaData
, rec
) {
100 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'alias');
104 header
: gettext('Zone'),
107 renderer: function(value
, metaData
, rec
) {
108 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'zone');
112 header
: gettext('Tag'),
115 renderer: function(value
, metaData
, rec
) {
116 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'tag');
120 header
: gettext('VLAN Aware'),
122 dataIndex
: 'vlanaware',
123 renderer: function(value
, metaData
, rec
) {
124 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'vlanaware');
128 header
: gettext('State'),
131 renderer: function(value
, metaData
, rec
) {
132 return PVE
.Utils
.render_sdn_pending_state(rec
, value
);
138 itemdblclick
: run_editor
,
139 selectionchange
: set_button_status
,
141 select: function(_sm
, rec
) {
142 let url
= `/cluster/sdn/vnets/${rec.data.vnet}/subnets`;
143 me
.subnetview_panel
.setBaseUrl(url
);
145 deselect: function() {
146 me
.subnetview_panel
.setBaseUrl(undefined);