2 Ext
.define('pmg-tls-policy', {
3 extend
: 'Ext.data.Model',
4 fields
: [ 'domain', 'policy' ],
8 Ext
.define('PMG.MailProxyTLSDomains', {
9 extend
: 'Ext.grid.GridPanel',
10 alias
: ['widget.pmgMailProxyTLSDomains'],
12 initComponent : function() {
15 var baseurl
= '/config/tlspolicy';
16 var rstore
= Ext
.create('Proxmox.data.UpdateStore', {
17 model
: 'pmg-tls-policy',
18 storeid
: 'pmg-mailproxy-tls-store-' + (++Ext
.idSeed
),
21 url
: '/api2/json' + baseurl
29 var store
= Ext
.create('Proxmox.data.DiffStore', { rstore
: rstore
});
31 var reload = function() {
35 me
.selModel
= Ext
.create('Ext.selection.RowModel', {});
37 var remove_btn
= Ext
.createWidget('proxmoxStdRemoveButton', {
38 selModel
: me
.selModel
,
44 var policy_selector_properties
= {
45 xtype
: 'proxmoxKVComboBox',
52 [ 'encrypt', 'encrypt' ],
54 [ 'dane-only', 'dane-only' ],
55 [ 'fingerprint', 'fingerprint' ],
56 [ 'verify', 'verify' ],
57 [ 'secure', 'secure' ]
63 var run_editor = function() {
64 var rec
= me
.selModel
.getSelection()[0];
70 url
: '/api2/extjs' + baseurl
+ '/' + rec
.data
.domain
,
72 subject
: gettext('TLS Policy'),
75 xtype
: 'displayfield',
77 fieldLabel
: gettext('Domain')
79 policy_selector_properties
83 var win
= Ext
.createWidget('proxmoxWindowEdit', config
);
86 win
.on('destroy', reload
);
92 xtype
: 'proxmoxButton',
93 text
: gettext('Edit'),
95 selModel
: me
.selModel
,
99 text
: gettext('Create'),
100 handler: function() {
102 url
: '/api2/extjs' + baseurl
,
104 subject
: gettext('TLS Policy'),
108 xtype
: 'proxmoxtextfield',
110 fieldLabel
: gettext('Domain')
111 }, policy_selector_properties
115 var win
= Ext
.createWidget('proxmoxWindowEdit', config
);
117 win
.on('destroy', reload
);
124 Proxmox
.Utils
.monStoreErrors(me
, store
, true);
129 run_editor
: run_editor
,
135 header
: gettext('Domain'),
141 header
: gettext('Policy'),
148 itemdblclick
: run_editor
,
153 me
.on('activate', rstore
.startUpdate
);
154 me
.on('destroy', rstore
.stopUpdate
);
155 me
.on('deactivate', rstore
.stopUpdate
);