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",
28 xtype: 'BorderLayout',
35 activate : function() {
36 _this.datepanel = this;
38 _this.dategrid.ds.load({});
54 _this.dategrid = this;
55 //_this.dialog = Pman.Dialog.FILL_IN
56 if (_this.panel.active) {
60 rowclick : function (_self, rowIndex, e)
62 _this.tablegrid.footer.onClick('first');
65 autoExpandColumn : 'person_name',
71 beforeload : function (_self, o)
75 if (! _this.dateFrom) {
80 _this.tablegrid.ds.removeAll();
81 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
86 o.params = o.params || {};
88 var act = _this.actionSel ? _this.actionSel.getValue() : '';
90 o.params.action = act;
92 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
94 o.params.on_table = tbl;
96 act = _this.dateFrom.getValue();
98 o.params['query[from]'] = act.format('Y-m-d');
100 act = _this.dateTo.getValue();
102 o.params['query[to]'] = act.format('Y-m-d');
107 o.params['query[person_sum]'] = 1;
108 o.params._columns = 'person_id,person_id_name,person_id_email,qty,uqty';
109 o.params.limit = 999;
114 sortInfo : { field : 'person_name', direction: 'ASC' },
119 url : baseURL + '/Roo/Events.php'
124 totalProperty : 'total',
133 'name': 'person_name',
137 'name': 'event_when',
139 'dateFormat': 'Y-m-d'
166 'name': 'person_id_id',
170 'name': 'person_id_office_id',
174 'name': 'person_id_name',
178 'name': 'person_id_phone',
182 'name': 'person_id_fax',
186 'name': 'person_id_email',
190 'name': 'person_id_company_id',
194 'name': 'person_id_role',
198 'name': 'person_id_active',
202 'name': 'person_id_remarks',
206 'name': 'person_id_passwd',
210 'name': 'person_id_owner_id',
214 'name': 'person_id_lang',
218 'name': 'person_id_no_reset_sent',
222 'name': 'person_id_action_type',
226 'name': 'person_id_project_id',
230 'name': 'person_id_deleted_by',
234 'name': 'person_id_deleted_dt',
253 render : function (_self)
255 _this.dateFrom = _self;
257 change : function (_self, newValue, oldValue)
259 _this.dategrid.ds.load({});
263 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
269 render : function (_self)
271 _this.dateTo = _self;
273 change : function (_self, newValue, oldValue)
275 _this.dategrid.ds.load({});
279 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
285 xtype: 'ColumnModel',
287 dataIndex : 'person_id_name',
288 header : 'Person name',
291 renderer : function(v,x,r) {
292 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
296 xtype: 'ColumnModel',
299 header : '#Affected',
302 renderer : function(v) { return String.format('{0}', v); }
305 xtype: 'ColumnModel',
311 renderer : function(v) { return String.format('{0}', v); }
320 activate : function() {
321 _this.tablepanel = this;
322 if (_this.tablegrid) {
323 _this.tablegrid.footer.onClick('first');
331 tableName : 'Events',
339 _this.tablegrid = this;
340 //_this.dialog = Pman.Dialog.FILL_IN
341 if (_this.tablepanel.active) {
342 this.footer.onClick('first');
345 rowclick : function (_self, rowIndex, e)
348 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
351 autoExpandColumn : 'person_name',
357 beforeload : function (_self, o)
359 if (! _this.dategrid) {
363 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
369 var s = _this.dategrid.selModel.getSelected();
371 _this.tablegrid.view.el.mask("Select a person");
374 _this.tablegrid.view.el.unmask();
376 o.params = o.params || {};
377 var act = _this.actionSel.getValue();
379 o.params.action = act;
381 var tbl = _this.affectSel.getValue();
383 o.params.on_table = tbl;
386 act = _this.dateFrom.getValue();
388 o.params['query[from]'] = act.format('Y-m-d');
390 act = _this.dateTo.getValue();
392 o.params['query[to]'] = act.format('Y-m-d');
394 o.params.person_id = s.data.person_id;
395 o.params['query[table_sum]'] = 1;
396 o.params._columns = 'on_table,qty,uqty';
402 sortInfo : { field : 'on_table', direction: 'ASC' },
407 url : baseURL + '/Roo/Events.php'
412 totalProperty : 'total',
421 'name': 'person_name',
425 'name': 'event_when',
427 'dateFormat': 'Y-m-d'
454 'name': 'person_id_id',
458 'name': 'person_id_office_id',
462 'name': 'person_id_name',
466 'name': 'person_id_phone',
470 'name': 'person_id_fax',
474 'name': 'person_id_email',
478 'name': 'person_id_company_id',
482 'name': 'person_id_role',
486 'name': 'person_id_active',
490 'name': 'person_id_remarks',
494 'name': 'person_id_passwd',
498 'name': 'person_id_owner_id',
502 'name': 'person_id_lang',
506 'name': 'person_id_no_reset_sent',
510 'name': 'person_id_action_type',
514 'name': 'person_id_project_id',
518 'name': 'person_id_deleted_by',
522 'name': 'person_id_deleted_dt',
529 xtype: 'PagingToolbar',
533 displayMsg : "Displaying Events{0} - {1} of {2}",
534 emptyMsg : "No Events found"
544 select : function (combo, record, index)
546 _this.dategrid.ds.load({});
548 render : function (_self)
550 _this.actionSel = _self;
554 displayField : 'action',
556 emptyText : "Select Action",
557 forceSelection : true,
559 loadingText : "Searching...",
563 qtip : "Select Action",
564 queryParam : 'query[action]',
565 selectOnFocus : true,
566 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
567 triggerAction : 'all',
569 valueField : 'action',
575 beforeload : function (_self, o)
577 o.params = o.params || {};
578 // staff can see all logs, other companies can only see their own.
579 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
580 o.params.company_id = Pman.Login.authUser.company_id;
582 o.params._distinct = 'action';
583 o.params._columns ='action';
587 sortInfo : { field : 'action' , direction : 'ASC' },
592 url : baseURL + '/Roo/Events.php'
597 totalProperty : 'total',
606 'name': 'person_name',
610 'name': 'event_when',
612 'dateFormat': 'Y-m-d'
639 'name': 'person_id_id',
643 'name': 'person_id_office_id',
647 'name': 'person_id_name',
651 'name': 'person_id_phone',
655 'name': 'person_id_fax',
659 'name': 'person_id_email',
663 'name': 'person_id_company_id',
667 'name': 'person_id_role',
671 'name': 'person_id_active',
675 'name': 'person_id_remarks',
679 'name': 'person_id_passwd',
683 'name': 'person_id_owner_id',
687 'name': 'person_id_lang',
691 'name': 'person_id_no_reset_sent',
695 'name': 'person_id_action_type',
699 'name': 'person_id_project_id',
703 'name': 'person_id_deleted_by',
707 'name': 'person_id_deleted_dt',
718 select : function (combo, record, index)
720 _this.dategrid.ds.load({});
722 render : function (_self)
724 _this.affectSel = _self;
728 displayField : 'on_table',
730 emptyText : "Select Affects",
731 forceSelection : true,
733 loadingText : "Searching...",
737 qtip : "Select Action",
738 queryParam : 'query[on_table]',
739 selectOnFocus : true,
740 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
741 triggerAction : 'all',
743 valueField : 'action',
749 beforeload : function (_self, o)
751 o.params = o.params || {};
752 // staff can see all logs, other companies can only see their own.
753 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
754 o.params.company_id = Pman.Login.authUser.company_id;
756 o.params._distinct = 'on_table';
757 o.params._columns ='on_table';
761 sortInfo : { field : 'on_table' , direction : 'ASC' },
766 url : baseURL + '/Roo/Events.php'
771 totalProperty : 'total',
780 'name': 'person_name',
784 'name': 'event_when',
786 'dateFormat': 'Y-m-d'
813 'name': 'person_id_id',
817 'name': 'person_id_office_id',
821 'name': 'person_id_name',
825 'name': 'person_id_phone',
829 'name': 'person_id_fax',
833 'name': 'person_id_email',
837 'name': 'person_id_company_id',
841 'name': 'person_id_role',
845 'name': 'person_id_active',
849 'name': 'person_id_remarks',
853 'name': 'person_id_passwd',
857 'name': 'person_id_owner_id',
861 'name': 'person_id_lang',
865 'name': 'person_id_no_reset_sent',
869 'name': 'person_id_action_type',
873 'name': 'person_id_project_id',
877 'name': 'person_id_deleted_by',
881 'name': 'person_id_deleted_dt',
892 xtype: 'ColumnModel',
894 dataIndex : 'on_table',
898 renderer : function(v) {
900 return "Login / Logout / Errors";
902 return String.format('{0}', v);
906 xtype: 'ColumnModel',
909 header : '#Affected',
912 renderer : function(v) { return String.format('{0}', v); }
915 xtype: 'ColumnModel',
921 renderer : function(v) { return String.format('{0}', v); }
930 activate : function() {
931 _this.detailpanel = this;
932 if (_this.detailgrid) {
933 _this.detailgrid.footer.onClick('first');
941 tableName : 'Events',
949 _this.detailgrid = this;
950 //_this.dialog = Pman.Dialog.FILL_IN
951 if (_this.detailpanel.active) {
952 this.footer.onClick('first');
956 autoExpandColumn : 'person_name',
962 beforeload : function (_self, o)
964 if (! _this.dategrid) {
968 o.params = o.params || {};
970 var s = _this.dategrid.selModel.getSelected();
972 _this.detailgrid.view.el.mask("Select a person");
976 o.params.person_id = s.data.person_id;
978 var s = _this.tablegrid.selModel.getSelected();
980 _this.detailgrid.view.el.mask("Select a table");
983 o.params.on_table = s.data.on_table;
985 _this.detailgrid.view.el.unmask();
987 var act = _this.actionSel.getValue();
989 o.params.action = act;
991 var tbl = _this.affectSel.getValue();
993 o.params.on_table = tbl;
997 act = _this.dateFrom.getValue();
999 o.params['query[from]'] = act.format('Y-m-d');
1001 act = _this.dateTo.getValue();
1003 o.params['query[to]'] = act.format('Y-m-d');
1006 //o.params['query[table_d]'] = 1;
1007 //o.params._columns = 'on_table,qty,uqty';
1013 sortInfo : { field : 'event_when', direction: 'DESC' },
1018 url : baseURL + '/Roo/Events.php'
1021 xtype: 'JsonReader',
1023 totalProperty : 'total',
1032 'name': 'person_name',
1036 'name': 'event_when',
1038 'dateFormat': 'Y-m-d'
1057 'name': 'person_id',
1065 'name': 'person_id_id',
1069 'name': 'person_id_office_id',
1073 'name': 'person_id_name',
1077 'name': 'person_id_phone',
1081 'name': 'person_id_fax',
1085 'name': 'person_id_email',
1089 'name': 'person_id_company_id',
1093 'name': 'person_id_role',
1097 'name': 'person_id_active',
1101 'name': 'person_id_remarks',
1105 'name': 'person_id_passwd',
1109 'name': 'person_id_owner_id',
1113 'name': 'person_id_lang',
1117 'name': 'person_id_no_reset_sent',
1121 'name': 'person_id_action_type',
1125 'name': 'person_id_project_id',
1129 'name': 'person_id_deleted_by',
1133 'name': 'person_id_deleted_dt',
1140 xtype: 'PagingToolbar',
1144 displayMsg : "Displaying Events{0} - {1} of {2}",
1145 emptyMsg : "No Events found"
1149 xtype: 'ColumnModel',
1154 renderer : function(v) { return String.format('{0}', v); }
1157 xtype: 'ColumnModel',
1159 header : 'Event when',
1161 dataIndex : 'event_when',
1162 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1165 xtype: 'ColumnModel',
1167 dataIndex : 'action',
1170 renderer : function(v) { return String.format('{0}', v); }
1173 xtype: 'ColumnModel',
1175 dataIndex : 'ipaddr',
1178 renderer : function(v) { return String.format('{0}', v); }
1181 xtype: 'ColumnModel',
1183 dataIndex : 'on_id',
1186 renderer : function(v) { return String.format('{0}', v); }
1189 xtype: 'ColumnModel',
1193 dataIndex : 'remarks',
1194 renderer : function(v) { return String.format('{0}', v); }
1203 activate : function() {
1204 _this.daypanel = this;
1205 if (_this.daygrid) {
1206 _this.daygrid.footer.onClick('first');
1211 fitContainer : true,
1214 tableName : 'Events',
1215 title : "Daily summary",
1222 _this.daygrid = this;
1223 //_this.dialog = Pman.Dialog.FILL_IN
1224 if (_this.daypanel.active) {
1225 this.footer.onClick('first');
1229 autoExpandColumn : 'person_name',
1235 beforeload : function (_self, o)
1237 if (! _this.dategrid) {
1241 o.params = o.params || {};
1243 var s = _this.dategrid.selModel.getSelected();
1245 _this.detailgrid.view.el.mask("Select a person");
1249 o.params.person_id = s.data.person_id;
1251 var s = _this.tablegrid.selModel.getSelected();
1253 _this.detailgrid.view.el.mask("Select a table");
1256 o.params.on_table = s.data.on_table;
1258 _this.detailgrid.view.el.unmask();
1260 var act = _this.actionSel.getValue();
1262 o.params.action = act;
1264 var tbl = _this.affectSel.getValue();
1266 o.params.on_table = tbl;
1270 act = _this.dateFrom.getValue();
1272 o.params['query[from]'] = act.format('Y-m-d');
1274 act = _this.dateTo.getValue();
1276 o.params['query[to]'] = act.format('Y-m-d');
1279 o.params['query[day_sum]'] = 1;
1280 o.params._columns = 'on_day,qty,uqty';
1286 sortInfo : { field : 'on_day', direction: 'ASC' },
1291 url : baseURL + '/Roo/Events.php'
1294 xtype: 'JsonReader',
1296 totalProperty : 'total',
1305 'name': 'person_name',
1309 'name': 'event_when',
1311 'dateFormat': 'Y-m-d'
1330 'name': 'person_id',
1338 'name': 'person_id_id',
1342 'name': 'person_id_office_id',
1346 'name': 'person_id_name',
1350 'name': 'person_id_phone',
1354 'name': 'person_id_fax',
1358 'name': 'person_id_email',
1362 'name': 'person_id_company_id',
1366 'name': 'person_id_role',
1370 'name': 'person_id_active',
1374 'name': 'person_id_remarks',
1378 'name': 'person_id_passwd',
1382 'name': 'person_id_owner_id',
1386 'name': 'person_id_lang',
1390 'name': 'person_id_no_reset_sent',
1394 'name': 'person_id_action_type',
1398 'name': 'person_id_project_id',
1402 'name': 'person_id_deleted_by',
1406 'name': 'person_id_deleted_dt',
1413 xtype: 'PagingToolbar',
1417 displayMsg : "Displaying Events{0} - {1} of {2}",
1418 emptyMsg : "No Events found"
1422 xtype: 'ColumnModel',
1424 dataIndex : 'on_day',
1425 header : 'Event when',
1428 renderer : function(v) { return String.format('{0}', v ); }
1431 xtype: 'ColumnModel',
1434 header : '#Affected',
1437 renderer : function(v) { return String.format('{0}', v); }
1440 xtype: 'ColumnModel',
1446 renderer : function(v) { return String.format('{0}', v); }
1453 xtype: 'LayoutRegion',
1459 xtype: 'LayoutRegion',
1463 xtype: 'LayoutRegion',
1466 tabPosition : 'top',