]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/sdn/zones/EvpnEdit.js
ui: sdn: zonedit: fix display && refactor
[pve-manager.git] / www / manager6 / sdn / zones / EvpnEdit.js
CommitLineData
9233148b
AD
1Ext.define('PVE.sdn.zones.EvpnInputPanel', {
2 extend: 'PVE.panel.SDNZoneBase',
3
f3c1eac7
TL
4 onlineHelp: 'pvesdn_zone_plugin_evpn',
5
9233148b 6 onGetValues: function(values) {
1d9643f6 7 var me = this;
9233148b 8
1d9643f6
AD
9 if (me.isCreate) {
10 values.type = me.type;
11 } else {
12 delete values.zone;
13 }
9233148b 14
ddf0e952
AD
15 if (!values.mac) {
16 delete values.mac;
17 }
18
2e29164b
AD
19 if (values['advertise-subnets'] === 0) {
20 delete values['advertise-subnets'];
21 }
22
23 if (values['exitnodes-local-routing'] === 0) {
24 delete values['exitnodes-local-routing'];
25 }
26
8fdf43a4
AD
27 if (values['disable-arp-nd-suppression'] === 0) {
28 delete values['disable-arp-nd-suppression'];
29 }
30
fef32ce0
AD
31 if (values['exitnodes-primary'] === '') {
32 delete values['exitnodes-primary'];
33 }
34
1d9643f6 35 return values;
9233148b
AD
36 },
37
8058410f 38 initComponent: function() {
9233148b
AD
39 var me = this;
40
1d9643f6 41 me.items = [
f1a13b51
AD
42 {
43 xtype: 'pveSDNControllerSelector',
44 fieldLabel: gettext('Controller'),
45 name: 'controller',
46 value: '',
47 allowBlank: false,
48 },
1d9643f6
AD
49 {
50 xtype: 'proxmoxintegerfield',
51 name: 'vrf-vxlan',
52 minValue: 1,
53 maxValue: 16000000,
54 fieldLabel: 'VRF-VXLAN Tag',
55 allowBlank: false,
56 },
ddf0e952
AD
57 {
58 xtype: 'textfield',
59 name: 'mac',
60 fieldLabel: gettext('Vnet MAC address'),
61 vtype: 'MacAddress',
62 allowBlank: true,
4966ba74 63 emptyText: 'auto',
ddf0e952 64 },
1d9643f6
AD
65 {
66 xtype: 'pveNodeSelector',
67 name: 'exitnodes',
68 fieldLabel: gettext('Exit Nodes'),
69 multiSelect: true,
4966ba74 70 autoSelect: false,
1d9643f6 71 },
8112cb3c
AD
72 {
73 xtype: 'pveNodeSelector',
74 name: 'exitnodes-primary',
75 fieldLabel: gettext('Primary Exit Node'),
76 multiSelect: false,
77 autoSelect: false,
78 },
2e29164b
AD
79 {
80 xtype: 'proxmoxcheckbox',
81 name: 'exitnodes-local-routing',
82 uncheckedValue: 0,
83 checked: false,
84 fieldLabel: gettext('Exit Nodes local routing'),
85 },
86 {
87 xtype: 'proxmoxcheckbox',
88 name: 'advertise-subnets',
89 uncheckedValue: 0,
90 checked: false,
91 fieldLabel: gettext('Advertise subnets'),
92 },
8fdf43a4
AD
93 {
94 xtype: 'proxmoxcheckbox',
95 name: 'disable-arp-nd-suppression',
96 uncheckedValue: 0,
97 checked: false,
98 fieldLabel: gettext('Disable arp-nd suppression'),
99 },
8612f92d
AD
100 {
101 xtype: 'textfield',
102 name: 'rt-import',
103 fieldLabel: gettext('Route-target import'),
104 allowBlank: true,
105 },
9233148b
AD
106 ];
107
108 me.callParent();
f6710aac 109 },
9233148b 110});