]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/sdn/SubnetView.js
851583d1905c0fdbad361b22b52e111736bf343f
1 Ext
.define('PVE.sdn.SubnetView', {
2 extend
: 'Ext.grid.GridPanel',
3 alias
: 'widget.pveSDNSubnetView',
6 stateId
: 'grid-sdn-subnet',
10 remove_btn
: undefined,
12 setBaseUrl: function(url
) {
17 if (url
=== undefined) {
19 me
.create_btn
.disable();
21 me
.remove_btn
.baseurl
= url
+ '/';
24 url
: '/api2/json/' + url
+ '?pending=1',
26 me
.create_btn
.enable();
31 initComponent: function() {
34 let store
= new Ext
.data
.Store({
35 model
: 'pve-sdn-subnet',
38 let reload = function() {
42 let sm
= Ext
.create('Ext.selection.RowModel', {});
44 let run_editor = function() {
45 let rec
= sm
.getSelection()[0];
47 let win
= Ext
.create('PVE.sdn.SubnetEdit', {
49 subnet
: rec
.data
.subnet
,
50 base_url
: me
.base_url
,
52 win
.on('destroy', reload
);
55 me
.create_btn
= new Proxmox
.button
.Button({
56 text
: gettext('Create'),
59 let win
= Ext
.create('PVE.sdn.SubnetEdit', {
61 base_url
: me
.base_url
,
64 win
.on('destroy', reload
);
68 let edit_btn
= new Proxmox
.button
.Button({
69 text
: gettext('Edit'),
75 me
.remove_btn
= Ext
.create('Proxmox.button.StdRemoveButton', {
77 baseurl
: me
.base_url
+ '/',
78 callback
: () => store
.load(),
81 let set_button_status = function() {
82 var rec
= me
.selModel
.getSelection()[0];
84 if (!rec
|| rec
.data
.state
=== 'deleted') {
86 me
.remove_btn
.disable();
104 header
: gettext('Subnet'),
107 renderer: function(value
, metaData
, rec
) {
108 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'cidr', 1);
112 header
: gettext('Gateway'),
114 dataIndex
: 'gateway',
115 renderer: function(value
, metaData
, rec
) {
116 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'gateway');
123 renderer: function(value
, metaData
, rec
) {
124 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'snat');
128 header
: gettext('Dns prefix'),
130 dataIndex
: 'dnszoneprefix',
131 renderer: function(value
, metaData
, rec
) {
132 return PVE
.Utils
.render_sdn_pending(rec
, value
, 'dnszoneprefix');
136 header
: gettext('State'),
139 renderer: function(value
, metaData
, rec
) {
140 return PVE
.Utils
.render_sdn_pending_state(rec
, value
);
147 itemdblclick
: run_editor
,
148 selectionchange
: set_button_status
,
155 me
.setBaseUrl(me
.base_url
); // load
159 Ext
.define('pve-sdn-subnet', {
160 extend
: 'Ext.data.Model',
166 idProperty
: 'subnet',