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",
36 render : function (_self)
38 _this.dateFrom = _self;
40 change : function (_self, newValue, oldValue)
42 _this.dategrid.ds.load({});
46 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
52 render : function (_self)
56 change : function (_self, newValue, oldValue)
58 _this.dategrid.ds.load({});
62 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
68 select : function (combo, record, index)
70 _this.dategrid.ds.load({});
72 render : function (_self)
74 _this.actionSel = _self;
78 displayField : 'action',
80 emptyText : "Select Action",
81 forceSelection : true,
83 loadingText : "Searching...",
87 qtip : "Select Action",
88 queryParam : 'query[action]',
90 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
91 triggerAction : 'all',
93 valueField : 'action',
99 beforeload : function (_self, o)
101 o.params = o.params || {};
102 // staff can see all logs, other companies can only see their own.
103 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
104 o.params.company_id = Pman.Login.authUser.company_id;
106 o.params._distinct = 'action';
107 o.params._columns ='action';
111 sortInfo : { field : 'action' , direction : 'ASC' },
117 url : baseURL + '/Roo/Events.php'
122 totalProperty : 'total',
131 'name': 'person_name',
135 'name': 'event_when',
137 'dateFormat': 'Y-m-d'
164 'name': 'person_id_id',
168 'name': 'person_id_office_id',
172 'name': 'person_id_name',
176 'name': 'person_id_phone',
180 'name': 'person_id_fax',
184 'name': 'person_id_email',
188 'name': 'person_id_company_id',
192 'name': 'person_id_role',
196 'name': 'person_id_active',
200 'name': 'person_id_remarks',
204 'name': 'person_id_passwd',
208 'name': 'person_id_owner_id',
212 'name': 'person_id_lang',
216 'name': 'person_id_no_reset_sent',
220 'name': 'person_id_action_type',
224 'name': 'person_id_project_id',
228 'name': 'person_id_deleted_by',
232 'name': 'person_id_deleted_dt',
243 select : function (combo, record, index)
245 _this.dategrid.ds.load({});
247 render : function (_self)
249 _this.affectSel = _self;
253 displayField : 'on_table',
255 emptyText : "Select Affects",
256 forceSelection : true,
258 loadingText : "Searching...",
262 qtip : "Select Action",
263 queryParam : 'query[on_table]',
264 selectOnFocus : true,
265 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
266 triggerAction : 'all',
268 valueField : 'action',
274 beforeload : function (_self, o)
276 o.params = o.params || {};
277 // staff can see all logs, other companies can only see their own.
278 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
279 o.params.company_id = Pman.Login.authUser.company_id;
281 o.params._distinct = 'on_table';
282 o.params._columns ='on_table';
286 sortInfo : { field : 'on_table' , direction : 'ASC' },
292 url : baseURL + '/Roo/Events.php'
297 totalProperty : 'total',
306 'name': 'person_name',
310 'name': 'event_when',
312 'dateFormat': 'Y-m-d'
339 'name': 'person_id_id',
343 'name': 'person_id_office_id',
347 'name': 'person_id_name',
351 'name': 'person_id_phone',
355 'name': 'person_id_fax',
359 'name': 'person_id_email',
363 'name': 'person_id_company_id',
367 'name': 'person_id_role',
371 'name': 'person_id_active',
375 'name': 'person_id_remarks',
379 'name': 'person_id_passwd',
383 'name': 'person_id_owner_id',
387 'name': 'person_id_lang',
391 'name': 'person_id_no_reset_sent',
395 'name': 'person_id_action_type',
399 'name': 'person_id_project_id',
403 'name': 'person_id_deleted_by',
407 'name': 'person_id_deleted_dt',
417 xtype: 'BorderLayout',
424 activate : function() {
425 _this.datepanel = this;
426 if (_this.dategrid) {
427 _this.dategrid.ds.load({});
435 tableName : 'Events',
443 _this.dategrid = this;
444 //_this.dialog = Pman.Dialog.FILL_IN
445 if (_this.panel.active) {
449 rowclick : function (_self, rowIndex, e)
451 _this.tablegrid.footer.onClick('first');
454 autoExpandColumn : 'person_name',
460 beforeload : function (_self, o)
464 if (! _this.dateFrom) {
469 _this.tablegrid.ds.removeAll();
470 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
475 o.params = o.params || {};
477 var act = _this.actionSel ? _this.actionSel.getValue() : '';
479 o.params.action = act;
481 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
483 o.params.on_table = tbl;
485 act = _this.dateFrom.getValue();
487 o.params['query[from]'] = act.format('Y-m-d');
489 act = _this.dateTo.getValue();
491 o.params['query[to]'] = act.format('Y-m-d');
496 o.params['query[person_sum]'] = 1;
497 o.params._columns = 'person_id,person_id_name,person_id_email,qty,uqty';
498 o.params.limit = 999;
503 sortInfo : { field : 'person_id_name', direction: 'ASC' },
508 url : baseURL + '/Roo/Events.php'
513 totalProperty : 'total',
522 'name': 'person_name',
526 'name': 'event_when',
528 'dateFormat': 'Y-m-d'
555 'name': 'person_id_id',
559 'name': 'person_id_office_id',
563 'name': 'person_id_name',
567 'name': 'person_id_phone',
571 'name': 'person_id_fax',
575 'name': 'person_id_email',
579 'name': 'person_id_company_id',
583 'name': 'person_id_role',
587 'name': 'person_id_active',
591 'name': 'person_id_remarks',
595 'name': 'person_id_passwd',
599 'name': 'person_id_owner_id',
603 'name': 'person_id_lang',
607 'name': 'person_id_no_reset_sent',
611 'name': 'person_id_action_type',
615 'name': 'person_id_project_id',
619 'name': 'person_id_deleted_by',
623 'name': 'person_id_deleted_dt',
631 xtype: 'ColumnModel',
633 dataIndex : 'person_id_name',
634 header : 'Person name',
637 renderer : function(v,x,r) {
638 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
642 xtype: 'ColumnModel',
645 header : '#Affected',
648 renderer : function(v) { return String.format('{0}', v); }
651 xtype: 'ColumnModel',
657 renderer : function(v) { return String.format('{0}', v); }
666 activate : function() {
667 _this.tablepanel = this;
668 if (_this.tablegrid) {
669 _this.tablegrid.footer.onClick('first');
677 tableName : 'Events',
685 _this.tablegrid = this;
686 //_this.dialog = Pman.Dialog.FILL_IN
687 if (_this.tablepanel.active) {
688 this.footer.onClick('first');
691 rowclick : function (_self, rowIndex, e)
694 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
697 autoExpandColumn : 'person_name',
703 beforeload : function (_self, o)
705 if (! _this.dategrid) {
709 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
715 var s = _this.dategrid.selModel.getSelected();
717 _this.tablegrid.view.el.mask("Select a person");
720 _this.tablegrid.view.el.unmask();
722 o.params = o.params || {};
723 var act = _this.actionSel.getValue();
725 o.params.action = act;
727 var tbl = _this.affectSel.getValue();
729 o.params.on_table = tbl;
732 act = _this.dateFrom.getValue();
734 o.params['query[from]'] = act.format('Y-m-d');
736 act = _this.dateTo.getValue();
738 o.params['query[to]'] = act.format('Y-m-d');
740 o.params.person_id = s.data.person_id;
741 o.params['query[table_sum]'] = 1;
742 o.params._columns = 'on_table,qty,uqty';
748 sortInfo : { field : 'on_table', direction: 'ASC' },
753 url : baseURL + '/Roo/Events.php'
758 totalProperty : 'total',
767 'name': 'person_name',
771 'name': 'event_when',
773 'dateFormat': 'Y-m-d'
800 'name': 'person_id_id',
804 'name': 'person_id_office_id',
808 'name': 'person_id_name',
812 'name': 'person_id_phone',
816 'name': 'person_id_fax',
820 'name': 'person_id_email',
824 'name': 'person_id_company_id',
828 'name': 'person_id_role',
832 'name': 'person_id_active',
836 'name': 'person_id_remarks',
840 'name': 'person_id_passwd',
844 'name': 'person_id_owner_id',
848 'name': 'person_id_lang',
852 'name': 'person_id_no_reset_sent',
856 'name': 'person_id_action_type',
860 'name': 'person_id_project_id',
864 'name': 'person_id_deleted_by',
868 'name': 'person_id_deleted_dt',
875 xtype: 'PagingToolbar',
879 displayMsg : "Displaying Events{0} - {1} of {2}",
880 emptyMsg : "No Events found"
884 xtype: 'ColumnModel',
886 dataIndex : 'on_table',
890 renderer : function(v) {
892 return "Login / Logout / Errors";
894 return String.format('{0}', v);
898 xtype: 'ColumnModel',
901 header : '#Affected',
904 renderer : function(v) { return String.format('{0}', v); }
907 xtype: 'ColumnModel',
913 renderer : function(v) { return String.format('{0}', v); }
922 activate : function() {
923 _this.detailpanel = this;
924 if (_this.detailgrid) {
925 _this.detailgrid.footer.onClick('first');
933 tableName : 'Events',
941 _this.detailgrid = this;
942 //_this.dialog = Pman.Dialog.FILL_IN
943 if (_this.detailpanel.active) {
944 this.footer.onClick('first');
948 autoExpandColumn : 'person_name',
954 beforeload : function (_self, o)
956 if (! _this.dategrid) {
960 o.params = o.params || {};
962 var s = _this.dategrid.selModel.getSelected();
964 _this.detailgrid.view.el.mask("Select a person");
968 o.params.person_id = s.data.person_id;
970 var s = _this.tablegrid.selModel.getSelected();
972 _this.detailgrid.view.el.mask("Select a table");
975 o.params.on_table = s.data.on_table;
977 _this.detailgrid.view.el.unmask();
979 var act = _this.actionSel.getValue();
981 o.params.action = act;
983 var tbl = _this.affectSel.getValue();
985 o.params.on_table = tbl;
989 act = _this.dateFrom.getValue();
991 o.params['query[from]'] = act.format('Y-m-d');
993 act = _this.dateTo.getValue();
995 o.params['query[to]'] = act.format('Y-m-d');
998 //o.params['query[table_d]'] = 1;
999 //o.params._columns = 'on_table,qty,uqty';
1005 sortInfo : { field : 'event_when', direction: 'DESC' },
1010 url : baseURL + '/Roo/Events.php'
1013 xtype: 'JsonReader',
1015 totalProperty : 'total',
1024 'name': 'person_name',
1028 'name': 'event_when',
1030 'dateFormat': 'Y-m-d'
1049 'name': 'person_id',
1057 'name': 'person_id_id',
1061 'name': 'person_id_office_id',
1065 'name': 'person_id_name',
1069 'name': 'person_id_phone',
1073 'name': 'person_id_fax',
1077 'name': 'person_id_email',
1081 'name': 'person_id_company_id',
1085 'name': 'person_id_role',
1089 'name': 'person_id_active',
1093 'name': 'person_id_remarks',
1097 'name': 'person_id_passwd',
1101 'name': 'person_id_owner_id',
1105 'name': 'person_id_lang',
1109 'name': 'person_id_no_reset_sent',
1113 'name': 'person_id_action_type',
1117 'name': 'person_id_project_id',
1121 'name': 'person_id_deleted_by',
1125 'name': 'person_id_deleted_dt',
1132 xtype: 'PagingToolbar',
1136 displayMsg : "Displaying Events{0} - {1} of {2}",
1137 emptyMsg : "No Events found"
1141 xtype: 'ColumnModel',
1146 renderer : function(v) { return String.format('{0}', v); }
1149 xtype: 'ColumnModel',
1151 header : 'Event when',
1153 dataIndex : 'event_when',
1154 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1157 xtype: 'ColumnModel',
1159 dataIndex : 'action',
1162 renderer : function(v) { return String.format('{0}', v); }
1165 xtype: 'ColumnModel',
1167 dataIndex : 'ipaddr',
1170 renderer : function(v) { return String.format('{0}', v); }
1173 xtype: 'ColumnModel',
1175 dataIndex : 'on_id',
1178 renderer : function(v) { return String.format('{0}', v); }
1181 xtype: 'ColumnModel',
1185 dataIndex : 'remarks',
1186 renderer : function(v) { return String.format('{0}', v); }
1195 activate : function() {
1196 _this.daypanel = this;
1197 if (_this.daygrid) {
1198 _this.daygrid.footer.onClick('first');
1203 fitContainer : true,
1206 tableName : 'Events',
1207 title : "Daily summary",
1214 _this.daygrid = this;
1215 //_this.dialog = Pman.Dialog.FILL_IN
1216 if (_this.daypanel.active) {
1217 this.footer.onClick('first');
1221 autoExpandColumn : 'person_name',
1227 beforeload : function (_self, o)
1229 if (! _this.dategrid) {
1233 o.params = o.params || {};
1235 var s = _this.dategrid.selModel.getSelected();
1237 _this.detailgrid.view.el.mask("Select a person");
1241 o.params.person_id = s.data.person_id;
1243 var s = _this.tablegrid.selModel.getSelected();
1245 _this.detailgrid.view.el.mask("Select a table");
1248 o.params.on_table = s.data.on_table;
1250 _this.detailgrid.view.el.unmask();
1252 var act = _this.actionSel.getValue();
1254 o.params.action = act;
1256 var tbl = _this.affectSel.getValue();
1258 o.params.on_table = tbl;
1262 act = _this.dateFrom.getValue();
1264 o.params['query[from]'] = act.format('Y-m-d');
1266 act = _this.dateTo.getValue();
1268 o.params['query[to]'] = act.format('Y-m-d');
1271 o.params['query[day_sum]'] = 1;
1272 o.params._columns = 'on_day,qty,uqty';
1278 sortInfo : { field : 'on_day', direction: 'ASC' },
1283 url : baseURL + '/Roo/Events.php'
1286 xtype: 'JsonReader',
1288 totalProperty : 'total',
1297 'name': 'person_name',
1301 'name': 'event_when',
1303 'dateFormat': 'Y-m-d'
1322 'name': 'person_id',
1330 'name': 'person_id_id',
1334 'name': 'person_id_office_id',
1338 'name': 'person_id_name',
1342 'name': 'person_id_phone',
1346 'name': 'person_id_fax',
1350 'name': 'person_id_email',
1354 'name': 'person_id_company_id',
1358 'name': 'person_id_role',
1362 'name': 'person_id_active',
1366 'name': 'person_id_remarks',
1370 'name': 'person_id_passwd',
1374 'name': 'person_id_owner_id',
1378 'name': 'person_id_lang',
1382 'name': 'person_id_no_reset_sent',
1386 'name': 'person_id_action_type',
1390 'name': 'person_id_project_id',
1394 'name': 'person_id_deleted_by',
1398 'name': 'person_id_deleted_dt',
1405 xtype: 'PagingToolbar',
1409 displayMsg : "Displaying Events{0} - {1} of {2}",
1410 emptyMsg : "No Events found"
1414 xtype: 'ColumnModel',
1416 dataIndex : 'on_day',
1417 header : 'Event when',
1420 renderer : function(v) { return String.format('{0}', v ); }
1423 xtype: 'ColumnModel',
1426 header : '#Affected',
1429 renderer : function(v) { return String.format('{0}', v); }
1432 xtype: 'ColumnModel',
1438 renderer : function(v) { return String.format('{0}', v); }
1445 xtype: 'LayoutRegion',
1451 xtype: 'LayoutRegion',
1455 xtype: 'LayoutRegion',
1458 tabPosition : 'top',