]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/grid/FirewallAliases.js
1 Ext
.define('PVE.FirewallAliasEdit', {
2 extend
: 'Proxmox.window.Edit',
10 initComponent : function() {
14 me
.isCreate
= (me
.alias_name
=== undefined);
17 me
.url
= '/api2/extjs' + me
.base_url
;
20 me
.url
= '/api2/extjs' + me
.base_url
+ '/' + me
.alias_name
;
27 name
: me
.isCreate
? 'name' : 'rename',
28 fieldLabel
: gettext('Name'),
34 fieldLabel
: gettext('IP/CIDR'),
40 fieldLabel
: gettext('Comment')
44 var ipanel
= Ext
.create('Proxmox.panel.InputPanel', {
45 isCreate
: me
.isCreate
,
50 subject
: gettext('Alias'),
59 success: function(response
, options
) {
60 var values
= response
.result
.data
;
61 values
.rename
= values
.name
;
62 ipanel
.setValues(values
);
69 Ext
.define('pve-fw-aliases', {
70 extend
: 'Ext.data.Model',
72 fields
: [ 'name', 'cidr', 'comment', 'digest' ],
76 Ext
.define('PVE.FirewallAliases', {
77 extend
: 'Ext.grid.Panel',
78 alias
: ['widget.pveFirewallAliases'],
80 onlineHelp
: 'pve_firewall_ip_aliases',
83 stateId
: 'grid-firewall-aliases',
87 title
: gettext('Alias'),
89 initComponent : function() {
94 throw "missing base_url configuration";
97 var store
= new Ext
.data
.Store({
98 model
: 'pve-fw-aliases',
101 url
: "/api2/json" + me
.base_url
109 var sm
= Ext
.create('Ext.selection.RowModel', {});
111 var reload = function() {
112 var oldrec
= sm
.getSelection()[0];
113 store
.load(function(records
, operation
, success
) {
115 var rec
= store
.findRecord('name', oldrec
.data
.name
, 0, false, true, true);
123 var run_editor = function() {
124 var sm
= me
.getSelectionModel();
125 var rec
= sm
.getSelection()[0];
130 var win
= Ext
.create('PVE.FirewallAliasEdit', {
131 base_url
: me
.base_url
,
132 alias_name
: rec
.data
.name
136 win
.on('destroy', reload
);
139 me
.editBtn
= new Proxmox
.button
.Button({
140 text
: gettext('Edit'),
146 me
.addBtn
= Ext
.create('Ext.Button', {
147 text
: gettext('Add'),
148 handler: function() {
149 var win
= Ext
.create('PVE.FirewallAliasEdit', {
150 base_url
: me
.base_url
152 win
.on('destroy', reload
);
157 me
.removeBtn
= Ext
.create('Proxmox.button.StdRemoveButton', {
159 baseurl
: me
.base_url
+ '/',
166 tbar
: [ me
.addBtn
, me
.removeBtn
, me
.editBtn
],
170 header
: gettext('Name'),
175 header
: gettext('IP/CIDR'),
180 header
: gettext('Comment'),
181 dataIndex
: 'comment',
182 renderer
: Ext
.String
.htmlEncode
,
187 itemdblclick
: run_editor
192 me
.on('activate', reload
);