1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Pman.Tab.AdminLogDrill = new Roo.XComponent({
6 part : ["Admin","LogDrill"],
7 order : '003-Pman.Tab.AdminLogDrill',
9 parent : 'Pman.Tab.AdminLogs',
10 name : "Pman.Tab.AdminLogDrill",
18 xtype: 'NestedLayoutPanel',
22 title : "Event Drilldown",
35 xtype: 'BorderLayout',
42 activate : function() {
43 _this.datepanel = this;
45 _this.dategrid.ds.load({});
61 _this.dategrid = this;
62 //_this.dialog = Pman.Dialog.FILL_IN
63 if (_this.panel.active) {
67 rowclick : function (_self, rowIndex, e)
69 _this.tablegrid.footer.onClick('first');
72 autoExpandColumn : 'person_name',
78 beforeload : function (_self, o)
82 if (! _this.dateFrom) {
87 _this.tablegrid.ds.removeAll();
88 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
93 o.params = o.params || {};
95 var act = _this.actionSel ? _this.actionSel.getValue() : '';
97 o.params.action = act;
99 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
101 o.params.on_table = tbl;
103 act = _this.dateFrom.getValue();
105 o.params['query[from]'] = act.format('Y-m-d');
107 act = _this.dateTo.getValue();
109 o.params['query[to]'] = act.format('Y-m-d');
114 o.params['query[person_sum]'] = 1;
115 o.params._columns = 'person_id,person_id_name,person_id_email,qty,uqty';
116 o.params.limit = 999;
121 sortInfo : { field : 'person_name', direction: 'ASC' },
126 url : baseURL + '/Roo/Events.php'
131 totalProperty : 'total',
140 'name': 'person_name',
144 'name': 'event_when',
146 'dateFormat': 'Y-m-d'
173 'name': 'person_id_id',
177 'name': 'person_id_office_id',
181 'name': 'person_id_name',
185 'name': 'person_id_phone',
189 'name': 'person_id_fax',
193 'name': 'person_id_email',
197 'name': 'person_id_company_id',
201 'name': 'person_id_role',
205 'name': 'person_id_active',
209 'name': 'person_id_remarks',
213 'name': 'person_id_passwd',
217 'name': 'person_id_owner_id',
221 'name': 'person_id_lang',
225 'name': 'person_id_no_reset_sent',
229 'name': 'person_id_action_type',
233 'name': 'person_id_project_id',
237 'name': 'person_id_deleted_by',
241 'name': 'person_id_deleted_dt',
260 render : function (_self)
262 _this.dateFrom = _self;
264 change : function (_self, newValue, oldValue)
266 _this.dategrid.ds.load({});
270 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
276 render : function (_self)
278 _this.dateTo = _self;
280 change : function (_self, newValue, oldValue)
282 _this.dategrid.ds.load({});
286 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
292 xtype: 'ColumnModel',
294 dataIndex : 'person_id_name',
295 header : 'Person name',
298 renderer : function(v,x,r) {
299 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
303 xtype: 'ColumnModel',
306 header : '#Affected',
309 renderer : function(v) { return String.format('{0}', v); }
312 xtype: 'ColumnModel',
318 renderer : function(v) { return String.format('{0}', v); }
327 activate : function() {
328 _this.tablepanel = this;
329 if (_this.tablegrid) {
330 _this.tablegrid.footer.onClick('first');
338 tableName : 'Events',
346 _this.tablegrid = this;
347 //_this.dialog = Pman.Dialog.FILL_IN
348 if (_this.tablepanel.active) {
349 this.footer.onClick('first');
352 rowclick : function (_self, rowIndex, e)
355 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
358 autoExpandColumn : 'person_name',
364 beforeload : function (_self, o)
366 if (! _this.dategrid) {
370 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
376 var s = _this.dategrid.selModel.getSelected();
378 _this.tablegrid.view.el.mask("Select a person");
381 _this.tablegrid.view.el.unmask();
383 o.params = o.params || {};
384 var act = _this.actionSel.getValue();
386 o.params.action = act;
388 var tbl = _this.affectSel.getValue();
390 o.params.on_table = tbl;
393 act = _this.dateFrom.getValue();
395 o.params['query[from]'] = act.format('Y-m-d');
397 act = _this.dateTo.getValue();
399 o.params['query[to]'] = act.format('Y-m-d');
401 o.params.person_id = s.data.person_id;
402 o.params['query[table_sum]'] = 1;
403 o.params._columns = 'on_table,qty,uqty';
409 sortInfo : { field : 'on_table', direction: 'ASC' },
414 url : baseURL + '/Roo/Events.php'
419 totalProperty : 'total',
428 'name': 'person_name',
432 'name': 'event_when',
434 'dateFormat': 'Y-m-d'
461 'name': 'person_id_id',
465 'name': 'person_id_office_id',
469 'name': 'person_id_name',
473 'name': 'person_id_phone',
477 'name': 'person_id_fax',
481 'name': 'person_id_email',
485 'name': 'person_id_company_id',
489 'name': 'person_id_role',
493 'name': 'person_id_active',
497 'name': 'person_id_remarks',
501 'name': 'person_id_passwd',
505 'name': 'person_id_owner_id',
509 'name': 'person_id_lang',
513 'name': 'person_id_no_reset_sent',
517 'name': 'person_id_action_type',
521 'name': 'person_id_project_id',
525 'name': 'person_id_deleted_by',
529 'name': 'person_id_deleted_dt',
536 xtype: 'PagingToolbar',
540 displayMsg : "Displaying Events{0} - {1} of {2}",
541 emptyMsg : "No Events found"
551 select : function (combo, record, index)
553 _this.dategrid.ds.load({});
555 render : function (_self)
557 _this.actionSel = _self;
561 displayField : 'action',
563 emptyText : "Select Action",
564 forceSelection : true,
566 loadingText : "Searching...",
570 qtip : "Select Action",
571 queryParam : 'query[action]',
572 selectOnFocus : true,
573 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
574 triggerAction : 'all',
576 valueField : 'action',
582 beforeload : function (_self, o)
584 o.params = o.params || {};
585 // staff can see all logs, other companies can only see their own.
586 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
587 o.params.company_id = Pman.Login.authUser.company_id;
589 o.params._distinct = 'action';
590 o.params._columns ='action';
594 sortInfo : { field : 'action' , direction : 'ASC' },
599 url : baseURL + '/Roo/Events.php'
604 totalProperty : 'total',
613 'name': 'person_name',
617 'name': 'event_when',
619 'dateFormat': 'Y-m-d'
646 'name': 'person_id_id',
650 'name': 'person_id_office_id',
654 'name': 'person_id_name',
658 'name': 'person_id_phone',
662 'name': 'person_id_fax',
666 'name': 'person_id_email',
670 'name': 'person_id_company_id',
674 'name': 'person_id_role',
678 'name': 'person_id_active',
682 'name': 'person_id_remarks',
686 'name': 'person_id_passwd',
690 'name': 'person_id_owner_id',
694 'name': 'person_id_lang',
698 'name': 'person_id_no_reset_sent',
702 'name': 'person_id_action_type',
706 'name': 'person_id_project_id',
710 'name': 'person_id_deleted_by',
714 'name': 'person_id_deleted_dt',
725 select : function (combo, record, index)
727 _this.dategrid.ds.load({});
729 render : function (_self)
731 _this.affectSel = _self;
735 displayField : 'on_table',
737 emptyText : "Select Affects",
738 forceSelection : true,
740 loadingText : "Searching...",
744 qtip : "Select Action",
745 queryParam : 'query[on_table]',
746 selectOnFocus : true,
747 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
748 triggerAction : 'all',
750 valueField : 'action',
756 beforeload : function (_self, o)
758 o.params = o.params || {};
759 // staff can see all logs, other companies can only see their own.
760 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
761 o.params.company_id = Pman.Login.authUser.company_id;
763 o.params._distinct = 'on_table';
764 o.params._columns ='on_table';
768 sortInfo : { field : 'on_table' , direction : 'ASC' },
773 url : baseURL + '/Roo/Events.php'
778 totalProperty : 'total',
787 'name': 'person_name',
791 'name': 'event_when',
793 'dateFormat': 'Y-m-d'
820 'name': 'person_id_id',
824 'name': 'person_id_office_id',
828 'name': 'person_id_name',
832 'name': 'person_id_phone',
836 'name': 'person_id_fax',
840 'name': 'person_id_email',
844 'name': 'person_id_company_id',
848 'name': 'person_id_role',
852 'name': 'person_id_active',
856 'name': 'person_id_remarks',
860 'name': 'person_id_passwd',
864 'name': 'person_id_owner_id',
868 'name': 'person_id_lang',
872 'name': 'person_id_no_reset_sent',
876 'name': 'person_id_action_type',
880 'name': 'person_id_project_id',
884 'name': 'person_id_deleted_by',
888 'name': 'person_id_deleted_dt',
899 xtype: 'ColumnModel',
901 dataIndex : 'on_table',
905 renderer : function(v) {
907 return "Login / Logout / Errors";
909 return String.format('{0}', v);
913 xtype: 'ColumnModel',
916 header : '#Affected',
919 renderer : function(v) { return String.format('{0}', v); }
922 xtype: 'ColumnModel',
928 renderer : function(v) { return String.format('{0}', v); }
937 activate : function() {
938 _this.detailpanel = this;
939 if (_this.detailgrid) {
940 _this.detailgrid.footer.onClick('first');
948 tableName : 'Events',
956 _this.detailgrid = this;
957 //_this.dialog = Pman.Dialog.FILL_IN
958 if (_this.detailpanel.active) {
959 this.footer.onClick('first');
963 autoExpandColumn : 'person_name',
969 beforeload : function (_self, o)
971 if (! _this.dategrid) {
975 o.params = o.params || {};
977 var s = _this.dategrid.selModel.getSelected();
979 _this.detailgrid.view.el.mask("Select a person");
983 o.params.person_id = s.data.person_id;
985 var s = _this.tablegrid.selModel.getSelected();
987 _this.detailgrid.view.el.mask("Select a table");
990 o.params.on_table = s.data.on_table;
992 _this.detailgrid.view.el.unmask();
994 var act = _this.actionSel.getValue();
996 o.params.action = act;
998 var tbl = _this.affectSel.getValue();
1000 o.params.on_table = tbl;
1004 act = _this.dateFrom.getValue();
1006 o.params['query[from]'] = act.format('Y-m-d');
1008 act = _this.dateTo.getValue();
1010 o.params['query[to]'] = act.format('Y-m-d');
1013 //o.params['query[table_d]'] = 1;
1014 //o.params._columns = 'on_table,qty,uqty';
1020 sortInfo : { field : 'event_when', direction: 'DESC' },
1025 url : baseURL + '/Roo/Events.php'
1028 xtype: 'JsonReader',
1030 totalProperty : 'total',
1039 'name': 'person_name',
1043 'name': 'event_when',
1045 'dateFormat': 'Y-m-d'
1064 'name': 'person_id',
1072 'name': 'person_id_id',
1076 'name': 'person_id_office_id',
1080 'name': 'person_id_name',
1084 'name': 'person_id_phone',
1088 'name': 'person_id_fax',
1092 'name': 'person_id_email',
1096 'name': 'person_id_company_id',
1100 'name': 'person_id_role',
1104 'name': 'person_id_active',
1108 'name': 'person_id_remarks',
1112 'name': 'person_id_passwd',
1116 'name': 'person_id_owner_id',
1120 'name': 'person_id_lang',
1124 'name': 'person_id_no_reset_sent',
1128 'name': 'person_id_action_type',
1132 'name': 'person_id_project_id',
1136 'name': 'person_id_deleted_by',
1140 'name': 'person_id_deleted_dt',
1147 xtype: 'PagingToolbar',
1151 displayMsg : "Displaying Events{0} - {1} of {2}",
1152 emptyMsg : "No Events found"
1156 xtype: 'ColumnModel',
1161 renderer : function(v) { return String.format('{0}', v); }
1164 xtype: 'ColumnModel',
1166 header : 'Event when',
1168 dataIndex : 'event_when',
1169 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1172 xtype: 'ColumnModel',
1174 dataIndex : 'action',
1177 renderer : function(v) { return String.format('{0}', v); }
1180 xtype: 'ColumnModel',
1182 dataIndex : 'ipaddr',
1185 renderer : function(v) { return String.format('{0}', v); }
1188 xtype: 'ColumnModel',
1190 dataIndex : 'on_id',
1193 renderer : function(v) { return String.format('{0}', v); }
1196 xtype: 'ColumnModel',
1200 dataIndex : 'remarks',
1201 renderer : function(v) { return String.format('{0}', v); }
1210 activate : function() {
1211 _this.daypanel = this;
1212 if (_this.daygrid) {
1213 _this.daygrid.footer.onClick('first');
1218 fitContainer : true,
1221 tableName : 'Events',
1222 title : "Daily summary",
1229 _this.daygrid = this;
1230 //_this.dialog = Pman.Dialog.FILL_IN
1231 if (_this.daypanel.active) {
1232 this.footer.onClick('first');
1236 autoExpandColumn : 'person_name',
1242 beforeload : function (_self, o)
1244 if (! _this.dategrid) {
1248 o.params = o.params || {};
1250 var s = _this.dategrid.selModel.getSelected();
1252 _this.detailgrid.view.el.mask("Select a person");
1256 o.params.person_id = s.data.person_id;
1258 var s = _this.tablegrid.selModel.getSelected();
1260 _this.detailgrid.view.el.mask("Select a table");
1263 o.params.on_table = s.data.on_table;
1265 _this.detailgrid.view.el.unmask();
1267 var act = _this.actionSel.getValue();
1269 o.params.action = act;
1271 var tbl = _this.affectSel.getValue();
1273 o.params.on_table = tbl;
1277 act = _this.dateFrom.getValue();
1279 o.params['query[from]'] = act.format('Y-m-d');
1281 act = _this.dateTo.getValue();
1283 o.params['query[to]'] = act.format('Y-m-d');
1286 o.params['query[day_sum]'] = 1;
1287 o.params._columns = 'on_day,qty,uqty';
1293 sortInfo : { field : 'on_day', direction: 'ASC' },
1298 url : baseURL + '/Roo/Events.php'
1301 xtype: 'JsonReader',
1303 totalProperty : 'total',
1312 'name': 'person_name',
1316 'name': 'event_when',
1318 'dateFormat': 'Y-m-d'
1337 'name': 'person_id',
1345 'name': 'person_id_id',
1349 'name': 'person_id_office_id',
1353 'name': 'person_id_name',
1357 'name': 'person_id_phone',
1361 'name': 'person_id_fax',
1365 'name': 'person_id_email',
1369 'name': 'person_id_company_id',
1373 'name': 'person_id_role',
1377 'name': 'person_id_active',
1381 'name': 'person_id_remarks',
1385 'name': 'person_id_passwd',
1389 'name': 'person_id_owner_id',
1393 'name': 'person_id_lang',
1397 'name': 'person_id_no_reset_sent',
1401 'name': 'person_id_action_type',
1405 'name': 'person_id_project_id',
1409 'name': 'person_id_deleted_by',
1413 'name': 'person_id_deleted_dt',
1420 xtype: 'PagingToolbar',
1424 displayMsg : "Displaying Events{0} - {1} of {2}",
1425 emptyMsg : "No Events found"
1429 xtype: 'ColumnModel',
1431 dataIndex : 'on_day',
1432 header : 'Event when',
1435 renderer : function(v) { return String.format('{0}', v ); }
1438 xtype: 'ColumnModel',
1441 header : '#Affected',
1444 renderer : function(v) { return String.format('{0}', v); }
1447 xtype: 'ColumnModel',
1453 renderer : function(v) { return String.format('{0}', v); }
1460 xtype: 'LayoutRegion',
1466 xtype: 'LayoutRegion',
1470 xtype: 'LayoutRegion',
1473 tabPosition : 'top',