]> git.proxmox.com Git - pmg-gui.git/blame - js/PostfixQShape.js
PostfixMailQueue.js: reload on activate
[pmg-gui.git] / js / PostfixQShape.js
CommitLineData
a1da2b36
DM
1Ext.define('pmg-qshape', {
2 extend: 'Ext.data.Model',
3 fields: [
4 'domain',
5 { type: 'integer', name: 'total'},
6 { type: 'integer', name: '5s'},
7 { type: 'integer', name: '10s'},
8 { type: 'integer', name: '20s'},
9 { type: 'integer', name: '40s'},
10 { type: 'integer', name: '80s'},
11 { type: 'integer', name: '160s'},
12 { type: 'integer', name: '320s'},
13 { type: 'integer', name: '640s'},
14 { type: 'integer', name: '1280s'},
15 { type: 'integer', name: '1280s+'}
16 ],
17 proxy: {
18 type: 'proxmox',
19 url: "/api2/json/nodes/" + Proxmox.NodeName + "/postfix/qshape"
20 },
21 idProperty: 'domain'
22});
23
24Ext.define('PMG.Postfix.QShape', {
25 extend: 'Ext.grid.GridPanel',
26 alias: 'widget.pmgPostfixQShape',
27
28 store: {
29 autoLoad: true,
30 model: 'pmg-qshape'
31 },
32
33 controller: {
34
35 xclass: 'Ext.app.ViewController',
36
37 onFlush: function() {
153408d5
DM
38 var view = this.getView();
39
40 Proxmox.Utils.API2Request({
41 url: '/api2/extjs/nodes/' + Proxmox.NodeName + '/postfix/flush_queues',
42 method: 'POST',
43 waitMsgTarget: view,
44 success: function(response, opts) {
45 view.store.load();
46 },
47 failure: function (response, opts) {
48 Ext.Msg.alert(gettext('Error'), response.htmlStatus);
49 }
50 });
a1da2b36
DM
51 },
52
53 onDeleteAll: function() {
153408d5
DM
54 var view = this.getView();
55
56 Proxmox.Utils.API2Request({
57 url: '/api2/extjs/nodes/' + Proxmox.NodeName + '/postfix/delete_deferred_queue',
58 method: 'POST',
59 waitMsgTarget: view,
60 success: function(response, opts) {
61 view.store.load();
62 },
63 failure: function (response, opts) {
64 Ext.Msg.alert(gettext('Error'), response.htmlStatus);
65 }
66 });
a1da2b36
DM
67 },
68
69 onDiscardVerifyDatabase: function() {
153408d5
DM
70 var view = this.getView();
71
72 Proxmox.Utils.API2Request({
73 url: '/api2/extjs/nodes/' + Proxmox.NodeName + '/postfix/discard_verify_cache',
74 method: 'POST',
75 waitMsgTarget: view,
76 failure: function (response, opts) {
77 Ext.Msg.alert(gettext('Error'), response.htmlStatus);
78 }
79 });
a1da2b36
DM
80 }
81 },
82
83 tbar: [
84 {
85 text: gettext('Flush Queue'),
86 handler: 'onFlush'
87 },
88 {
89 xtype: 'proxmoxButton',
90 text: gettext('Delete all Messages'),
153408d5
DM
91 dangerous: true,
92 confirmMsg: "Are you sure you want to delete all deferred mails?",
a1da2b36
DM
93 selModel: null,
94 handler: 'onDeleteAll'
95 },
96 {
a1da2b36 97 text: gettext('Discard address verification database'),
a1da2b36
DM
98 handler: 'onDiscardVerifyDatabase'
99 }
100 ],
101
102 columns: [
103 {
104 header: gettext('Domain'),
105 width: 200,
106 dataIndex: 'domain'
107 },
108 {
109 header: gettext('Total'),
110 width: 80,
111 dataIndex: 'total'
112 },
113 {
114 header: '5s',
115 width: 80,
116 dataIndex: '5s'
117 },
118 {
119 header: '10s',
120 width: 80,
121 dataIndex: '10s'
122 },
123 {
124 header: '20s',
125 width: 80,
126 dataIndex: '20s'
127 },
128 {
129 header: '40s',
130 width: 80,
131 dataIndex: '40s'
132 },
133 {
134 header: '80s',
135 width: 80,
136 dataIndex: '80s'
137 },
138 {
139 header: '160s',
140 width: 80,
141 dataIndex: '160s'
142 },
143 {
144 header: '320s',
145 width: 80,
146 dataIndex: '320s'
147 },
148 {
149 header: '640s',
150 width: 80,
151 dataIndex: '640s'
152 },
153 {
154 header: '1280s',
155 width: 80,
156 dataIndex: '1280s'
157 },
158 {
159 header: '1280s+',
160 width: 80,
161 dataIndex: '1280s+'
162 }
163 ]
164});