]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/sdn/VnetView.js
ui: eslint: fix various spacing related issues
[pve-manager.git] / www / manager6 / sdn / VnetView.js
CommitLineData
9233148b
AD
1Ext.define('PVE.sdn.VnetView', {
2 extend: 'Ext.grid.GridPanel',
f3c1eac7 3 alias: 'widget.pveSDNVnetView',
9233148b 4
f3c1eac7 5 onlineHelp: 'pvesdn_config_vnet',
9233148b
AD
6
7 stateful: true,
8 stateId: 'grid-sdn-vnet',
9
8058410f 10 initComponent: function() {
68dc9092 11 let me = this;
9233148b 12
68dc9092 13 let store = new Ext.data.Store({
9233148b
AD
14 model: 'pve-sdn-vnet',
15 proxy: {
16 type: 'proxmox',
f6710aac 17 url: "/api2/json/cluster/sdn/vnets",
9233148b
AD
18 },
19 sorters: {
20 property: 'vnet',
f6710aac
TL
21 order: 'DESC',
22 },
9233148b 23 });
68dc9092 24 let reload = () => store.load();
9233148b 25
68dc9092 26 let sm = Ext.create('Ext.selection.RowModel', {});
9233148b 27
68dc9092
TL
28 let run_editor = function() {
29 let rec = sm.getSelection()[0];
9233148b 30
f6710aac 31 let win = Ext.create('PVE.sdn.VnetEdit', {
68dc9092 32 autoShow: true,
f3c1eac7 33 onlineHelp: 'pvesdn_config_vnet',
68dc9092
TL
34 vnet: rec.data.vnet,
35 });
36 win.on('destroy', reload);
9233148b
AD
37 };
38
68dc9092 39 let edit_btn = new Proxmox.button.Button({
9233148b
AD
40 text: gettext('Edit'),
41 disabled: true,
42 selModel: sm,
68dc9092 43 handler: run_editor,
9233148b
AD
44 });
45
68dc9092 46 let remove_btn = Ext.create('Proxmox.button.StdRemoveButton', {
9233148b
AD
47 selModel: sm,
48 baseurl: '/cluster/sdn/vnets/',
f6710aac 49 callback: reload,
9233148b
AD
50 });
51
52 Ext.apply(me, {
53 store: store,
54 reloadStore: reload,
55 selModel: sm,
56 viewConfig: {
f6710aac 57 trackOver: false,
9233148b
AD
58 },
59 tbar: [
68dc9092
TL
60 {
61 text: gettext('Create'),
62 handler: function() {
63 let win = Ext.create('PVE.sdn.VnetEdit', {
64 autoShow: true,
f3c1eac7 65 onlineHelp: 'pvesdn_config_vnet',
68dc9092 66 type: 'vnet',
9233148b 67 });
68dc9092 68 win.on('destroy', reload);
f6710aac 69 },
68dc9092 70 },
9233148b
AD
71 remove_btn,
72 edit_btn,
9233148b
AD
73 ],
74 columns: [
75 {
76 header: 'ID',
77 flex: 2,
f6710aac 78 dataIndex: 'vnet',
9233148b
AD
79 },
80 {
68dc9092 81 header: gettext('Alias'),
9233148b 82 flex: 1,
9233148b
AD
83 dataIndex: 'alias',
84 },
85 {
68dc9092 86 header: gettext('Zone'),
9233148b 87 flex: 1,
9233148b
AD
88 dataIndex: 'zone',
89 },
90 {
68dc9092 91 header: gettext('Tag'),
9233148b 92 flex: 1,
9233148b
AD
93 dataIndex: 'tag',
94 },
d0da259e 95 {
df9f3d6e 96 header: gettext('VLAN Aware'),
d0da259e
AD
97 flex: 1,
98 dataIndex: 'vlanaware',
99 },
9233148b 100 {
68dc9092 101 header: 'IPv4/CIDR',
9233148b 102 flex: 1,
9233148b
AD
103 dataIndex: 'ipv4',
104 },
105 {
68dc9092 106 header: 'IPv6/CIDR',
9233148b 107 flex: 1,
9233148b
AD
108 dataIndex: 'ipv6',
109 },
110 {
68dc9092 111 header: 'MAC',
9233148b 112 flex: 1,
9233148b 113 dataIndex: 'mac',
f6710aac 114 },
9233148b
AD
115 ],
116 listeners: {
117 activate: reload,
f6710aac
TL
118 itemdblclick: run_editor,
119 },
9233148b
AD
120 });
121
122 me.callParent();
f6710aac 123 },
9233148b 124}, function() {
9233148b
AD
125 Ext.define('pve-sdn-vnet', {
126 extend: 'Ext.data.Model',
127 fields: [
68dc9092
TL
128 'alias',
129 'ipv4',
130 'ipv6',
131 'mac',
68dc9092
TL
132 'tag',
133 'type',
134 'vnet',
135 'zone',
9233148b 136 ],
f6710aac 137 idProperty: 'vnet',
9233148b 138 });
9233148b 139});