]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/sdn/IpamEdit.js
bump version to 8.2.7
[pve-manager.git] / www / manager6 / sdn / IpamEdit.js
1 Ext.define('PVE.sdn.IpamEditInputPanel', {
2 extend: 'Proxmox.panel.InputPanel',
3 mixins: ['Proxmox.Mixin.CBind'],
4
5 isCreate: false,
6
7 onGetValues: function(values) {
8 let me = this;
9
10 if (!values.vmid) {
11 delete values.vmid;
12 }
13
14 return values;
15 },
16
17 items: [
18 {
19 xtype: 'pmxDisplayEditField',
20 name: 'vmid',
21 fieldLabel: 'VMID',
22 allowBlank: false,
23 editable: false,
24 cbind: {
25 hidden: '{isCreate}',
26 },
27 },
28 {
29 xtype: 'pmxDisplayEditField',
30 name: 'mac',
31 fieldLabel: 'MAC',
32 allowBlank: false,
33 cbind: {
34 editable: '{isCreate}',
35 },
36 },
37 {
38 xtype: 'proxmoxtextfield',
39 name: 'ip',
40 fieldLabel: gettext('IP Address'),
41 allowBlank: false,
42 },
43 ],
44 });
45
46 Ext.define('PVE.sdn.IpamEdit', {
47 extend: 'Proxmox.window.Edit',
48
49 subject: gettext('DHCP Mapping'),
50 width: 350,
51
52 isCreate: false,
53 mapping: {},
54
55 url: '/cluster/sdn/vnets',
56
57 submitUrl: function(url, values) {
58 return `${url}/${values.vnet}/ips`;
59 },
60
61 initComponent: function() {
62 var me = this;
63
64 me.method = me.isCreate ? 'POST' : 'PUT';
65
66 let ipanel = Ext.create('PVE.sdn.IpamEditInputPanel', {
67 isCreate: me.isCreate,
68 });
69
70 Ext.apply(me, {
71 items: [
72 ipanel,
73 ],
74 });
75
76 me.callParent();
77
78 ipanel.setValues(me.mapping);
79 },
80 });