me.currentView.destroy();
me.currentView = Ext.create({
xtype: view,
- targetview: me.targetview,
+ targetview: me.targetview
});
if (skipCheck !== true) {
Proxmox.Utils.checked_command(function() {}); // display subscription status
Ext.apply(me, {
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
flex: 1,
sortable: true,
dataIndex: 'nsigs'
- },
+ }
],
listeners: {
activate: me.reload
header: gettext('Time'),
format: 'H:i:s',
dataIndex: 'time'
- },
+ }
],
initComponent: function() {
'contact',
{ type: 'integer', name: 'count' },
{ type: 'integer', name: 'viruscount' },
- { type: 'integer', name: 'bytes' },
+ { type: 'integer', name: 'bytes' }
],
proxy: {
type: 'pmgfilterproxy',
layout: 'border',
border: false,
defaults: {
- border: false,
+ border: false
},
controller: {
layout: 'fit',
flex: 1,
- listeners: { selectionchange: 'selectionChange' },
+ listeners: { selectionchange: 'selectionChange' }
},
{
xtype: 'pmgContactDetails',
win.close();
}
}]
- }],
+ }]
}).show();
},
hours: 12, // in hours
'bytes_in': 0,
'bytes_out': 0,
- 'avg_ptime': 0.0,
+ 'avg_ptime': 0.0
},
stores: {
type: 'proxmox',
url: '/api2/json/statistics/recentreceivers',
extraParams: {
- hours: '{hours}',
+ hours: '{hours}'
}
},
fields: [
title: gettext('E-Mail Volume'),
layout: {
type: 'vbox',
- align: 'stretch',
+ align: 'stretch'
},
defaults: {
xtype: 'pmgMiniGraph',
highlightCfg: {
opacity: 1,
scaling: 1
- },
- },
+ }
+ }
},
{
fields: ['spam'],
highlightCfg: {
opacity: 1,
scaling: 1
- },
- },
- },
+ }
+ }
+ }
]
},
{
height: 300,
layout: {
type: 'vbox',
- align: 'stretch',
+ align: 'stretch'
},
items: [
{
'out': '{bytes_out}',
'ptime': '{avg_ptime}'
}
- },
+ }
},
{
iconCls: 'fa fa-ticket',
reference: 'subscription',
xtype: 'pmgSubscriptionInfo',
margin: '10 0 0 0',
- height: 110,
+ height: 110
}
]
},
columnLines: false,
rowLines: false,
viewConfig: {
- stripeRows: false,
+ stripeRows: false
},
columns: [
name: 'target',
fieldLabel: gettext('Deliver to'),
allowBlank: false
- },
+ }
],
column2: [
'id', 'protocol', 'port', 'server', 'user', 'pass', 'target',
'ssl', 'keep',
{ type: 'integer', name: 'interval' },
- { type: 'boolean', name: 'enable' },
+ { type: 'boolean', name: 'enable' }
],
proxy: {
type: 'proxmox',
var win = Ext.create('PMG.FetchmailEdit', {
url: view.baseurl,
- method: 'POST',
+ method: 'POST'
});
win.on('destroy', function() { view.store.load() });
win.show();
reference: 'removeBtn',
callback: 'onAfterRemove',
waitMsgTarget: true
- },
+ }
],
listeners: {
//scope: 'controller',
- itemdblclick: 'onEdit',
+ itemdblclick: 'onEdit'
},
columns: [
{ type: 'integer', name: 'viruscount_in' },
{ type: 'integer', name: 'viruscount_ou' },
{ type: 'integer', name: 'bounces_in' },
- { type: 'integer', name: 'bounces_out' },
+ { type: 'integer', name: 'bounces_out' }
]
});
deleteEmpty: me.create ? false : true,
minValue: 1,
maxValue: 65535,
- fieldLabel: gettext('Port'),
+ fieldLabel: gettext('Port')
},
{
xtype: 'textfield',
},
columns: [
{ dataIndex: 'email', text: gettext('E-Mail address'), flex: 1 }
- ],
+ ]
}]
}).show();
},
region: 'center',
reference: 'grid',
xtype: 'pmgLDAPConfigGrid',
- border: false,
+ border: false
},
{
xtype: 'tabpanel',
}],
bind: {
title: Ext.String.format(gettext("Users of '{0}'"), '{name}')
- },
+ }
}
]
}
- ],
+ ]
});
}
var win = Ext.createWidget('pmgLDAPEdit', {
- profileId: rec.data.profile,
+ profileId: rec.data.profile
});
win.on('destroy', me.reload, me);
win.load();
{
xtype: 'proxmoxStdRemoveButton',
baseurl: '/config/ldap',
- callback: 'reload',
+ callback: 'reload'
},
{
xtype: 'proxmoxButton',
},
disabled: true,
handler: 'sync'
- },
+ }
],
listeners: {
width: 80,
sortable: true,
dataIndex: 'gcount'
- },
- ],
+ }
+ ]
});
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
monStoreErrors: true,
editorConfig: {
- url: '/api2/extjs/config/mail',
+ url: '/api2/extjs/config/mail'
},
interval: 5000,
},
listeners: {
- itemdblclick: 'onEdit',
+ itemdblclick: 'onEdit'
},
tbar: [
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
hideHeaders: true,
store: {
- fields: [ 'name', 'value', 'percentage' ],
+ fields: [ 'name', 'value', 'percentage' ]
},
columns: [
plugins: [
{
ptype: 'rowexpander',
- rowBodyTpl: '<p class="logs">{logs}</p>',
+ rowBodyTpl: '<p class="logs">{logs}</p>'
}
],
text: gettext('Action Objects'),
iconCls: 'fa fa-flag',
path: 'pmgActionList',
- leaf: true,
+ leaf: true
},
{
text: gettext('Who Objects'),
iconCls: 'fa fa-user-circle',
path: 'pmgWhoConfiguration',
- leaf: true,
+ leaf: true
},
{
text: gettext('What Objects'),
iconCls: 'fa fa-cube',
path: 'pmgWhatConfiguration',
- leaf: true,
+ leaf: true
},
{
text: gettext('When Objects'),
iconCls: 'fa fa-clock-o',
path: 'pmgWhenConfiguration',
- leaf: true,
+ leaf: true
}
]
},
text: gettext('Mail Proxy'),
iconCls: 'fa fa-envelope-o',
path: 'pmgMailProxyConfiguration',
- leaf: true,
+ leaf: true
},
{
text: gettext('Spam Detector'),
iconCls: 'fa fa-bullhorn',
path: 'pmgSpamDetectorConfiguration',
- leaf: true,
+ leaf: true
},
{
text: gettext('Virus Detector'),
iconCls: 'fa fa-bug',
path: 'pmgVirusDetectorConfiguration',
- leaf: true,
+ leaf: true
},
{
text: gettext('User Management'),
iconCls: 'fa fa-users',
path: 'pmgUserManagement',
- leaf: true,
+ leaf: true
},
{
text: gettext('Cluster'),
iconCls: 'fa fa-server',
path: 'pmgClusterAdministration',
- leaf: true,
+ leaf: true
},
{
text: gettext('Subscription'),
text: gettext('Spam Quarantine'),
iconCls: 'fa fa-bullhorn',
path: 'pmgSpamQuarantine',
- leaf: true,
+ leaf: true
},
{
text: gettext('Virus Quarantine'),
iconCls: 'fa fa-bug',
path: 'pmgVirusQuarantine',
- leaf: true,
+ leaf: true
},
{
text: gettext('User Whitelist'),
iconCls: 'fa fa-file-o',
path: 'pmgUserWhitelist',
- leaf: true,
+ leaf: true
},
{
text: gettext('User Blacklist'),
iconCls: 'fa fa-file',
path: 'pmgUserBlacklist',
- leaf: true,
+ leaf: true
},
{
text: gettext('Tracking Center'),
iconCls: 'fa fa-map-o',
path: 'pmgMailTracker',
- leaf: true,
+ leaf: true
},
{
text: gettext('Queues'),
iconCls: 'fa fa-bars',
path: 'pmgQueueAdministration',
- leaf: true,
+ leaf: true
}
]
},
var win = Ext.create('PMG.ViewMailHeaders', {
title: view.title + ' : ' + rec.data.queue_id,
- url: url,
+ url: url
});
win.show();
},
activate: function() {
this.view.store.load(); // reload
}
- },
+ }
}
},
control: {
'#':{
- beforedestroy: 'resetEmail',
+ beforedestroy: 'resetEmail'
},
'combobox[reference=email]': {
change: {
text: gettext('Whitelist'),
//iconCls: 'fa fa-cubes',
path: 'pmgUserWhitelist',
- leaf: true,
+ leaf: true
},
{
text: gettext('Blacklist'),
//iconCls: 'fa fa-cubes',
path: 'pmgUserBlacklist',
- leaf: true,
+ leaf: true
}
]
}
layout: 'card',
region: 'center',
border: false,
- reference: 'contentpanel',
+ reference: 'contentpanel'
}
]
});
control: {
pmgPostfixQShape: {
- itemdblclick: 'onSelect',
+ itemdblclick: 'onSelect'
}
}
},
legend: false,
fields: [ 'count' ],
fieldTitles: [
- gettext('RBL rejects'),
+ gettext('RBL rejects')
],
store: {
type: 'pmgStatStore',
layout: 'border',
border: false,
defaults: {
- border: false,
+ border: false
},
controller: {
layout: 'fit',
flex: 1,
- listeners: { selectionchange: 'selectionChange' },
+ listeners: { selectionchange: 'selectionChange' }
},
{
xtype: 'pmgReceiverDetails',
layout: 'border',
border: false,
defaults: {
- border: false,
+ border: false
},
controller: {
data: {
selectedRule: undefined,
baseUrl: '/config/ruledb/rules'
- },
+ }
},
items: [
xtype: 'button',
text: gettext('Add'),
iconCls: 'fa fa-plus-circle',
- reference: 'addButton',
+ reference: 'addButton'
},
{
xtype: 'proxmoxStdRemoveButton',
direction: 'DESC'
},
{
- property: 'name',
+ property: 'name'
}
]
},
{
text: 'Active',
dataIndex: 'active',
- hidden : true,
+ hidden : true
},
{
text: 'Name',
dataIndex: 'name',
- flex: 1,
+ flex: 1
},
{
text: 'Priority',
- dataIndex: 'priority',
+ dataIndex: 'priority'
},
{
text: 'Direction',
return (rec.get('active') ? 'Deactivate' : 'Activate');
},
handler: 'toggleIconClick'
- },
+ }
]
}
]
reference: 'infopanel',
xtype: 'pmgRuleInfo',
split: true,
- width: 440,
+ width: 440
}
]
});
header: gettext('Time'),
format: 'H:i:s',
dataIndex: 'time'
- },
+ }
],
initComponent: function() {
layout: 'border',
border: false,
defaults: {
- border: false,
+ border: false
},
controller: {
layout: 'fit',
flex: 1,
- listeners: { selectionchange: 'selectionChange' },
+ listeners: { selectionchange: 'selectionChange' }
},
{
xtype: 'pmgSenderDetails',
[ 'uk', 'Ukrainian' ],
[ 'vi', 'Vietnamese' ],
[ 'yi', 'Yiddish' ],
- [ 'zh', 'Chinese' ],
+ [ 'zh', 'Chinese' ]
],
onGetValues: function(values) {
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
dataIndex: 'desc',
flex: 3
}
- ],
+ ]
});
comboItems: [
['ticket', render_authmode('ticket') ],
['ldap', render_authmode('ldap') ],
- ['ldapticket', render_authmode('ldapticket') ]],
+ ['ldapticket', render_authmode('ldapticket') ]]
});
var render_reportstyle = function(value) {
['short', render_reportstyle('short') ],
['verbose', render_reportstyle('verbose') ],
['outlook', render_reportstyle('outlook') ],
- ['custom', render_reportstyle('custom') ]],
+ ['custom', render_reportstyle('custom') ]]
});
me.add_text_row('hostname', gettext('Quarantine Host'),
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
}
}
}
- ],
+ ]
},
columns: [
widget: {
xtype: 'progressbarwidget',
textTpl: ['{percent:number("0")}%' ]
- },
+ }
}
]
});
layout: {
type: 'vbox',
align: 'stretch',
- multi: true,
+ multi: true
},
bodyPadding: '0 0 10 0',
defaults: {
minHeight: 200,
title: gettext('Interfaces'),
xtype: 'proxmoxNodeNetworkView',
- nodename: Proxmox.NodeName,
+ nodename: Proxmox.NodeName
},
{
title: gettext('DNS'),
title: gettext('Time'),
xtype: 'proxmoxNodeTimeView',
nodename: Proxmox.NodeName
- },
+ }
]
},
{
{
itemId: 'options',
title: gettext('Options'),
- xtype: 'pmgSystemOptions',
+ xtype: 'pmgSystemOptions'
}
]
});
}],
listeners: {
- itemdblclick: 'onEdit',
+ itemdblclick: 'onEdit'
},
add_proxy_row: function(name, text, opts) {
items.push({
xtype: 'hidden',
name: key,
- value: value,
+ value: value
});
});
editable: true,
reference: 'email',
name: 'email',
- fieldLabel: 'E-Mail',
+ fieldLabel: 'E-Mail'
},
{
text: gettext('Add'),
proxy: {
type: 'proxmox',
url: "/api2/json/quarantine/blacklist"
- },
+ }
},
dockedItems: [
bodyStyle: {
padding: '10px',
'border-left': '0px',
- 'border-right': '0px',
+ 'border-right': '0px'
},
html: gettext('With this feature, you can manually mark E-mails from certain domains or addresses as spam.') + '<br><br>' +
'<b>*.com</b> (all mails from <b>.com</b> domains)' + '<br>' +
proxy: {
type: 'proxmox',
url: "/api2/json/quarantine/whitelist"
- },
+ }
},
dockedItems: [
bodyStyle: {
padding: '10px',
'border-left': '0px',
- 'border-right': '0px',
+ 'border-right': '0px'
},
html: gettext('With this feature, you can manually bypass spam checking for certain domains or E-mail addresses.') + '<br><br>' +
'<b>*.com</b> (all mails from <b>.com</b> domains)' + '<br>' +
return {
useridXType: userid ? 'displayfield' : 'textfield',
- isSuperUser: userid === 'root@pam',
+ isSuperUser: userid === 'root@pam'
}
},
allowBlank: false,
cbind: {
submitValue: '{create}',
- xtype: '{useridXType}',
+ xtype: '{useridXType}'
}
},
{
listeners: {
scope: 'controller',
- itemdblclick: 'onEdit',
+ itemdblclick: 'onEdit'
},
tbar: [
root: gettext('Superuser'),
admin: gettext('Administrator'),
qmanager: gettext('Quarantine Manager'),
- audit: gettext('Auditor'),
+ audit: gettext('Auditor')
},
format_user_role: function(role) {
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
}],
url: '/api2/json' + baseurl,
editorConfig: {
- url: '/api2/extjs' + baseurl,
+ url: '/api2/extjs' + baseurl
},
interval: 5000,
cwidth1: 200,
},
style: {
axisLine: false,
- majorTickSize: 0,
- },
+ majorTickSize: 0
+ }
},
{
type: 'time',
},
style: {
axisLine: false,
- majorTickSize: 0,
+ majorTickSize: 0
}
}
],
border: false,
flex: 1,
- noTool: true,
+ noTool: true
});