]> git.proxmox.com Git - pmg-gui.git/blob - js/FetchmailView.js
add group and user list for LDAP Config View
[pmg-gui.git] / js / FetchmailView.js
1 Ext.define('pmg-fetchmail-users', {
2 extend: 'Ext.data.Model',
3 fields: [
4 'id', 'protocol', 'port', 'server', 'user', 'pass', 'target',
5 'ssl', 'keep',
6 { type: 'integer', name: 'interval' },
7 { type: 'boolean', name: 'enable' },
8 ],
9 proxy: {
10 type: 'proxmox',
11 url: "/api2/json/config/fetchmail"
12 },
13 idProperty: 'id'
14 });
15
16 Ext.define('PMG.FetchmailView', {
17 extend: 'Ext.grid.GridPanel',
18 xtype: 'pmgFetchmailView',
19
20 baseurl: '/api2/extjs/config/fetchmail',
21
22 store: {
23 autoDestroy: true,
24 autoLoad: true,
25 model: 'pmg-fetchmail-users'
26 },
27
28 controller: {
29
30 xclass: 'Ext.app.ViewController',
31
32 init: function(view) {
33 Proxmox.Utils.monStoreErrors(view, view.store, true);
34 },
35
36 onEdit: function() {
37 var view = this.getView();
38
39 var rec = view.selModel.getSelection()[0];
40
41 var win = Ext.create('PMG.FetchmailEdit', {
42 userid: rec.data.id,
43 url: view.baseurl + '/' + rec.data.id,
44 method: 'PUT',
45 autoLoad: true
46 });
47 win.on('destroy', function() { view.store.load(); });
48 win.show();
49 }
50 },
51
52 listeners: {
53 //scope: 'controller',
54 itemdblclick: 'onEdit',
55 },
56
57 columns: [
58 {
59 header: gettext('Server'),
60 flex: 1,
61 renderer: Ext.String.htmlEncode,
62 dataIndex: 'server'
63 },
64 {
65 header: gettext('User name'),
66 flex: 1,
67 renderer: Ext.String.htmlEncode,
68 dataIndex: 'user'
69 },
70 {
71 header: gettext('Deliver to'),
72 flex: 1,
73 renderer: Ext.String.htmlEncode,
74 dataIndex: 'target'
75 },
76 {
77 header: gettext('Enabled'),
78 sortable: true,
79 renderer: Proxmox.Utils.format_boolean,
80 dataIndex: 'enable'
81 },
82 {
83 header: gettext('Interval'),
84 dataIndex: 'interval'
85 }
86 ]
87 });