Pman.Tab.AdminLogDrill.bjs
[Pman.Admin] / Pman.Tab.AdminLogDrill.bjs
1 {
2     "id": "roo-file-265",
3     "name": "Pman.Tab.AdminLogDrill",
4     "parent": "Pman.Tab.AdminLogs",
5     "title": "Pman.Tab.AdminLogDrill",
6     "path": "/home/alan/gitlive/Pman.Admin/Pman.Tab.AdminLogDrill.bjs",
7     "items": [
8         {
9             "region": "center",
10             "title": "Event Drilldown",
11             "xtype": "NestedLayoutPanel",
12             "|xns": "Roo",
13             "items": [
14                 {
15                     "|xns": "Roo",
16                     "xtype": "BorderLayout",
17                     "*prop": "layout",
18                     "items": [
19                         {
20                             "*prop": "west",
21                             "split": true,
22                             "width": 300,
23                             "xtype": "LayoutRegion",
24                             "|xns": "Roo"
25                         },
26                         {
27                             "|xns": "Roo",
28                             "xtype": "LayoutRegion",
29                             "*prop": "center"
30                         },
31                         {
32                             "*prop": "east",
33                             "split": true,
34                             "width": 450,
35                             "xtype": "LayoutRegion",
36                             "|xns": "Roo"
37                         },
38                         {
39                             "listeners": {
40                                 "|activate": "function() {\n    _this.datepanel = this;\n    if (_this.dategrid) {\n        _this.dategrid.ds.load({});\n    }\n}"
41                             },
42                             "background": true,
43                             "fitContainer": true,
44                             "fitToframe": true,
45                             "region": "west",
46                             "tableName": "Events",
47                             "title": "Events",
48                             "xtype": "GridPanel",
49                             "|xns": "Roo",
50                             "items": [
51                                 {
52                                     "listeners": {
53                                         "|render": "function() \n{\n    _this.dategrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.panel.active) {\n       this.ds.load({});\n    }\n}",
54                                         "rowclick": "function (_self, rowIndex, e)\n{\n    _this.tablegrid.footer.onClick('first');\n}"
55                                     },
56                                     "*prop": "grid",
57                                     "autoExpandColumn": "person_name",
58                                     "loadMask": true,
59                                     "xtype": "Grid",
60                                     "|xns": "Roo.grid",
61                                     "items": [
62                                         {
63                                             "listeners": {
64                                                 "beforeload": "function (_self, o)\n{\n    if (! _this.dateFrom) {\n     return;\n    }\n    o.params = o.params || {};\n     \n \n    act = _this.dateFrom.getValue();\n    if (act.format) {\n        o.params['query[from]'] = act.format('Y-m-d');\n    }\n    act = _this.dateTo.getValue();\n    if (act.format) {\n        o.params['query[to]'] = act.format('Y-m-d');\n    }\n    o.params['query[person_sum]'] = 1;\n    o.params._columns = 'person_id,person_id_name,person_id_email,qty';\n    o.params.limit = 999;\n \n}"
65                                             },
66                                             "*prop": "dataSource",
67                                             "remoteSort": true,
68                                             "xtype": "Store",
69                                             "|sortInfo": "{ field : 'person_name', direction: 'ASC' }",
70                                             "|xns": "Roo.data",
71                                             "items": [
72                                                 {
73                                                     "*prop": "proxy",
74                                                     "xtype": "HttpProxy",
75                                                     "method": "GET",
76                                                     "|url": "baseURL + '/Roo/Events.php'",
77                                                     "|xns": "Roo.data"
78                                                 },
79                                                 {
80                                                     "|xns": "Roo.data",
81                                                     "xtype": "JsonReader",
82                                                     "totalProperty": "total",
83                                                     "root": "data",
84                                                     "*prop": "reader",
85                                                     "id": "id",
86                                                     "|fields": "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]"
87                                                 }
88                                             ]
89                                         },
90                                         {
91                                             "*prop": "toolbar",
92                                             "xtype": "Toolbar",
93                                             "listeners": {},
94                                             "|xns": "Roo",
95                                             "items": [
96                                                 {
97                                                     "text": "Date Range",
98                                                     "xtype": "TextItem",
99                                                     "|xns": "Roo.Toolbar"
100                                                 },
101                                                 {
102                                                     "listeners": {
103                                                         "render": "function (_self)\n{\n  _this.dateFrom = _self;\n}",
104                                                         "change": "function (_self, newValue, oldValue)\n{\n  _this.dategrid.ds.load({});\n}"
105                                                     },
106                                                     "format": "Y-m-d",
107                                                     "xtype": "DateField",
108                                                     "|xns": "Roo.form"
109                                                 },
110                                                 {
111                                                     "listeners": {
112                                                         "render": "function (_self)\n{\n  _this.dateTo = _self;\n}",
113                                                         "change": "function (_self, newValue, oldValue)\n{\n  _this.dategrid.ds.load({});\n}"
114                                                     },
115                                                     "format": "Y-m-d",
116                                                     "xtype": "DateField",
117                                                     "|xns": "Roo.form"
118                                                 },
119                                                 {
120                                                     "listeners": {
121                                                         "render": "function (_self)\n{\n  _this.dateFrom = _self;\n}",
122                                                         "change": "function (_self, newValue, oldValue)\n{\n  _this.dategrid.ds.load({});\n}"
123                                                     },
124                                                     "format": "Y-m-d",
125                                                     "xtype": "DateField",
126                                                     "|xns": "Roo.form"
127                                                 }
128                                             ]
129                                         },
130                                         {
131                                             "*prop": "colModel[]",
132                                             "dataIndex": "person_id_name",
133                                             "header": "Person name",
134                                             "sortable": true,
135                                             "width": 200,
136                                             "xtype": "ColumnModel",
137                                             "|renderer": "function(v,x,r) {\n     return String.format('{0} &lt;<a href=\"mailto:{1}\">{1}</a>&gt;', v, r.data.person_id_email); \n }",
138                                             "|xns": "Roo.grid"
139                                         },
140                                         {
141                                             "*prop": "colModel[]",
142                                             "dataIndex": "qty",
143                                             "header": "Changes",
144                                             "sortable": true,
145                                             "width": 70,
146                                             "xtype": "ColumnModel",
147                                             "|renderer": "function(v) { return String.format('{0}', v); }",
148                                             "|xns": "Roo.grid"
149                                         }
150                                     ]
151                                 }
152                             ]
153                         },
154                         {
155                             "listeners": {
156                                 "|activate": "function() {\n    _this.tablepanel = this;\n    if (_this.tablegrid) {\n        _this.tablegrid.footer.onClick('first');\n    }\n}"
157                             },
158                             "background": true,
159                             "fitContainer": true,
160                             "fitToframe": true,
161                             "region": "center",
162                             "tableName": "Events",
163                             "title": "Events",
164                             "xtype": "GridPanel",
165                             "|xns": "Roo",
166                             "items": [
167                                 {
168                                     "listeners": {
169                                         "|render": "function() \n{\n    _this.tablegrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.tablepanel.active) {\n       this.footer.onClick('first');\n    }\n}",
170                                         "rowclick": "function (_self, rowIndex, e)\n{\n    _this.detailgrid.footer.onClick('first');\n}"
171                                     },
172                                     "*prop": "grid",
173                                     "autoExpandColumn": "person_name",
174                                     "loadMask": true,
175                                     "xtype": "Grid",
176                                     "|xns": "Roo.grid",
177                                     "items": [
178                                         {
179                                             "listeners": {
180                                                 "beforeload": "function (_self, o)\n{\n     if (! _this.dategrid) {\n     return;\n    }\n    \n    var s = _this.dategrid.selModel.getSelected();\n    if (!s) {\n        _this.tablegrid.view.el.mask(\"Select a person\");\n        return false;\n    }\n    _this.tablegrid.view.el.unmask();\n \n    o.params = o.params || {};\n     \n \n    act = _this.dateFrom.getValue();\n    if (act.format) {\n        o.params['query[from]'] = act.format('Y-m-d');\n    }\n    act = _this.dateTo.getValue();\n    if (act.format) {\n        o.params['query[to]'] = act.format('Y-m-d');\n    }\n    o.params.person_id = s.data.person_id;\n    o.params['query[table_sum]'] = 1;\n    o.params._columns = 'on_table,qty,uqty';\n\n    \n}"
181                                             },
182                                             "*prop": "dataSource",
183                                             "remoteSort": true,
184                                             "xtype": "Store",
185                                             "|sortInfo": "{ field : 'on_table', direction: 'ASC' }",
186                                             "|xns": "Roo.data",
187                                             "items": [
188                                                 {
189                                                     "*prop": "proxy",
190                                                     "xtype": "HttpProxy",
191                                                     "method": "GET",
192                                                     "|url": "baseURL + '/Roo/Events.php'",
193                                                     "|xns": "Roo.data"
194                                                 },
195                                                 {
196                                                     "|xns": "Roo.data",
197                                                     "xtype": "JsonReader",
198                                                     "totalProperty": "total",
199                                                     "root": "data",
200                                                     "*prop": "reader",
201                                                     "id": "id",
202                                                     "|fields": "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]"
203                                                 }
204                                             ]
205                                         },
206                                         {
207                                             "*prop": "footer",
208                                             "xtype": "PagingToolbar",
209                                             "pageSize": 25,
210                                             "displayInfo": true,
211                                             "displayMsg": "Displaying Events{0} - {1} of {2}",
212                                             "emptyMsg": "No Events found",
213                                             "|xns": "Roo"
214                                         },
215                                         {
216                                             "*prop": "toolbar",
217                                             "xtype": "Toolbar",
218                                             "listeners": {},
219                                             "|xns": "Roo",
220                                             "items": [
221                                                 {
222                                                     "listeners": {
223                                                         "|select": "function (combo, record, index)\n{\n   _this.dategrid.ds.load({});\n}",
224                                                         "|render": "function (_self)\n{\n  _this.actionSel = _self;\n}"
225                                                     },
226                                                     "allowBlank": true,
227                                                     "displayField": "action",
228                                                     "editable": false,
229                                                     "emptyText": "Select Action",
230                                                     "forceSelection": true,
231                                                     "listWidth": 300,
232                                                     "loadingText": "Searching...",
233                                                     "minChars": 2,
234                                                     "name": "action",
235                                                     "pageSize": 20,
236                                                     "qtip": "Select Action",
237                                                     "queryParam": "query[action]",
238                                                     "selectOnFocus": true,
239                                                     "tpl": "<div class=\"x-grid-cell-text x-btn button\"><b>{action}</b> </div>",
240                                                     "triggerAction": "all",
241                                                     "typeAhead": true,
242                                                     "valueField": "action",
243                                                     "width": 150,
244                                                     "xtype": "ComboBox",
245                                                     "|xns": "Roo.form",
246                                                     "items": [
247                                                         {
248                                                             "listeners": {
249                                                                 "|beforeload": "function (_self, o)\n{\n    o.params = o.params || {};\n    // staff can see all logs, other companies can only see their own.\n    if (Pman.Login.authUser.company_id_comptype != 'OWNER') {\n        o.params.company_id = Pman.Login.authUser.company_id;\n    }\n    o.params._distinct = 'action';\n    o.params._columns ='action';\n}"
250                                                             },
251                                                             "*prop": "store",
252                                                             "remoteSort": true,
253                                                             "xtype": "Store",
254                                                             "|sortInfo": "{ field : 'action' , direction : 'ASC' }",
255                                                             "|xns": "Roo.data",
256                                                             "items": [
257                                                                 {
258                                                                     "*prop": "proxy",
259                                                                     "method": "GET",
260                                                                     "xtype": "HttpProxy",
261                                                                     "|url": "baseURL + '/Roo/Events.php'",
262                                                                     "|xns": "Roo.data"
263                                                                 },
264                                                                 {
265                                                                     "|xns": "Roo.data",
266                                                                     "xtype": "JsonReader",
267                                                                     "totalProperty": "total",
268                                                                     "root": "data",
269                                                                     "*prop": "reader",
270                                                                     "id": "id",
271                                                                     "|fields": "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]"
272                                                                 }
273                                                             ]
274                                                         }
275                                                     ]
276                                                 },
277                                                 {
278                                                     "listeners": {
279                                                         "|select": "function (combo, record, index)\n{\n   _this.dategrid.ds.load({});\n}",
280                                                         "|render": "function (_self)\n{\n  _this.affectSel = _self;\n}"
281                                                     },
282                                                     "allowBlank": true,
283                                                     "displayField": "on_table",
284                                                     "editable": false,
285                                                     "emptyText": "Select Affects",
286                                                     "forceSelection": true,
287                                                     "listWidth": 300,
288                                                     "loadingText": "Searching...",
289                                                     "minChars": 2,
290                                                     "name": "on_table",
291                                                     "pageSize": 20,
292                                                     "qtip": "Select Action",
293                                                     "queryParam": "query[on_table]",
294                                                     "selectOnFocus": true,
295                                                     "tpl": "<div class=\"x-grid-cell-text x-btn button\"><b>{on_table}</b> </div>",
296                                                     "triggerAction": "all",
297                                                     "typeAhead": true,
298                                                     "valueField": "action",
299                                                     "width": 150,
300                                                     "xtype": "ComboBox",
301                                                     "|xns": "Roo.form",
302                                                     "items": [
303                                                         {
304                                                             "listeners": {
305                                                                 "|beforeload": "function (_self, o)\n{\n    o.params = o.params || {};\n    // staff can see all logs, other companies can only see their own.\n    if (Pman.Login.authUser.company_id_comptype != 'OWNER') {\n        o.params.company_id = Pman.Login.authUser.company_id;\n    }\n    o.params._distinct = 'on_table';\n    o.params._columns ='on_table';\n}"
306                                                             },
307                                                             "*prop": "store",
308                                                             "remoteSort": true,
309                                                             "xtype": "Store",
310                                                             "|sortInfo": "{ field : 'on_table' , direction : 'ASC' }",
311                                                             "|xns": "Roo.data",
312                                                             "items": [
313                                                                 {
314                                                                     "*prop": "proxy",
315                                                                     "method": "GET",
316                                                                     "xtype": "HttpProxy",
317                                                                     "|url": "baseURL + '/Roo/Events.php'",
318                                                                     "|xns": "Roo.data"
319                                                                 },
320                                                                 {
321                                                                     "|xns": "Roo.data",
322                                                                     "xtype": "JsonReader",
323                                                                     "totalProperty": "total",
324                                                                     "root": "data",
325                                                                     "*prop": "reader",
326                                                                     "id": "id",
327                                                                     "|fields": "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]"
328                                                                 }
329                                                             ]
330                                                         }
331                                                     ]
332                                                 }
333                                             ]
334                                         },
335                                         {
336                                             "*prop": "colModel[]",
337                                             "dataIndex": "on_table",
338                                             "header": "Table",
339                                             "sortable": true,
340                                             "width": 200,
341                                             "xtype": "ColumnModel",
342                                             "|renderer": "function(v) { return String.format('{0}', v); }",
343                                             "|xns": "Roo.grid"
344                                         },
345                                         {
346                                             "*prop": "colModel[]",
347                                             "dataIndex": "uqty",
348                                             "header": "#Affected",
349                                             "sortable": true,
350                                             "width": 70,
351                                             "xtype": "ColumnModel",
352                                             "|renderer": "function(v) { return String.format('{0}', v); }",
353                                             "|xns": "Roo.grid"
354                                         },
355                                         {
356                                             "*prop": "colModel[]",
357                                             "dataIndex": "qty",
358                                             "header": "Changes",
359                                             "sortable": true,
360                                             "width": 70,
361                                             "xtype": "ColumnModel",
362                                             "|renderer": "function(v) { return String.format('{0}', v); }",
363                                             "|xns": "Roo.grid"
364                                         }
365                                     ]
366                                 }
367                             ]
368                         },
369                         {
370                             "listeners": {
371                                 "|activate": "function() {\n    _this.detailpanel = this;\n    if (_this.detailgrid) {\n        _this.detailgrid.footer.onClick('first');\n    }\n}"
372                             },
373                             "background": true,
374                             "fitContainer": true,
375                             "fitToframe": true,
376                             "region": "east",
377                             "tableName": "Events",
378                             "title": "Events",
379                             "xtype": "GridPanel",
380                             "|xns": "Roo",
381                             "items": [
382                                 {
383                                     "listeners": {
384                                         "|render": "function() \n{\n    _this.detailgrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.detailpanel.active) {\n       this.footer.onClick('first');\n    }\n}"
385                                     },
386                                     "*prop": "grid",
387                                     "autoExpandColumn": "person_name",
388                                     "loadMask": true,
389                                     "xtype": "Grid",
390                                     "|xns": "Roo.grid",
391                                     "items": [
392                                         {
393                                             "listeners": {
394                                                 "beforeload": "function (_self, o)\n{\n     if (! _this.dategrid) {\n         return false;\n    }\n    \n    o.params = o.params || {};\n    \n    var s = _this.dategrid.selModel.getSelected();\n    if (!s) {\n        _this.detailgrid.view.el.mask(\"Select a person\");\n        return false;\n    }\n    \n    o.params.person_id = s.data.person_id;    \n    \n    var s = _this.tablegrid.selModel.getSelected();\n    if (!s) {\n        _this.detailgrid.view.el.mask(\"Select a table\");\n        return false;\n    }\n    o.params.on_table = s.data.on_table;        \n    \n    _this.detailgrid.view.el.unmask();\n \n\n     \n \n    act = _this.dateFrom.getValue();\n    if (act.format) {\n        o.params['query[from]'] = act.format('Y-m-d');\n    }\n    act = _this.dateTo.getValue();\n    if (act.format) {\n        o.params['query[to]'] = act.format('Y-m-d');\n    }\n\n    //o.params['query[table_d]'] = 1;\n    //o.params._columns = 'on_table,qty,uqty';\n\n    \n}"
395                                             },
396                                             "*prop": "dataSource",
397                                             "remoteSort": true,
398                                             "xtype": "Store",
399                                             "|sortInfo": "{ field : 'person_name', direction: 'ASC' }",
400                                             "|xns": "Roo.data",
401                                             "items": [
402                                                 {
403                                                     "*prop": "proxy",
404                                                     "xtype": "HttpProxy",
405                                                     "method": "GET",
406                                                     "|url": "baseURL + '/Roo/Events.php'",
407                                                     "|xns": "Roo.data"
408                                                 },
409                                                 {
410                                                     "|xns": "Roo.data",
411                                                     "xtype": "JsonReader",
412                                                     "totalProperty": "total",
413                                                     "root": "data",
414                                                     "*prop": "reader",
415                                                     "id": "id",
416                                                     "|fields": "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]"
417                                                 }
418                                             ]
419                                         },
420                                         {
421                                             "*prop": "footer",
422                                             "xtype": "PagingToolbar",
423                                             "pageSize": 25,
424                                             "displayInfo": true,
425                                             "displayMsg": "Displaying Events{0} - {1} of {2}",
426                                             "emptyMsg": "No Events found",
427                                             "|xns": "Roo"
428                                         },
429                                         {
430                                             "*prop": "colModel[]",
431                                             "dataIndex": "id",
432                                             "header": "Id",
433                                             "width": 50,
434                                             "xtype": "ColumnModel",
435                                             "|renderer": "function(v) { return String.format('{0}', v); }",
436                                             "|xns": "Roo.grid"
437                                         },
438                                         {
439                                             "xtype": "ColumnModel",
440                                             "header": "Event when",
441                                             "width": 75,
442                                             "dataIndex": "event_when",
443                                             "|renderer": "function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }",
444                                             "|xns": "Roo.grid",
445                                             "*prop": "colModel[]"
446                                         },
447                                         {
448                                             "*prop": "colModel[]",
449                                             "dataIndex": "action",
450                                             "header": "Action",
451                                             "width": 50,
452                                             "xtype": "ColumnModel",
453                                             "|renderer": "function(v) { return String.format('{0}', v); }",
454                                             "|xns": "Roo.grid"
455                                         },
456                                         {
457                                             "*prop": "colModel[]",
458                                             "dataIndex": "ipaddr",
459                                             "header": "Ipaddr",
460                                             "width": 100,
461                                             "xtype": "ColumnModel",
462                                             "|renderer": "function(v) { return String.format('{0}', v); }",
463                                             "|xns": "Roo.grid"
464                                         },
465                                         {
466                                             "*prop": "colModel[]",
467                                             "dataIndex": "on_id",
468                                             "header": "#ID",
469                                             "width": 75,
470                                             "xtype": "ColumnModel",
471                                             "|renderer": "function(v) { return String.format('{0}', v); }",
472                                             "|xns": "Roo.grid"
473                                         },
474                                         {
475                                             "xtype": "ColumnModel",
476                                             "header": "Remarks",
477                                             "width": 200,
478                                             "dataIndex": "remarks",
479                                             "|renderer": "function(v) { return String.format('{0}', v); }",
480                                             "|xns": "Roo.grid",
481                                             "*prop": "colModel[]"
482                                         }
483                                     ]
484                                 }
485                             ]
486                         }
487                     ]
488                 }
489             ]
490         }
491     ],
492     "permname": "",
493     "modOrder": "003"
494 }