1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
7 // register the module first
8 Pman.on('beforeload', function()
11 part : ["Admin","LogDrill"],
12 modKey : '003-Pman.Tab.AdminLogDrill',
13 module : Pman.Tab.AdminLogDrill,
15 parent : Pman.Tab.AdminLogs,
16 name : "Pman.Tab.AdminLogDrill",
22 Pman.Tab.AdminLogDrill = new Roo.util.Observable({
28 add : function(parentLayout, region)
32 this.parentLayout = parentLayout;
34 this.panel = parentLayout.addxtype({
35 xtype: 'NestedLayoutPanel',
38 title : "Event Drilldown",
40 xtype: 'BorderLayout',
47 activate : function() {
48 _this.datepanel = this;
50 _this.dategrid.ds.load({});
66 _this.dategrid = this;
67 //_this.dialog = Pman.Dialog.FILL_IN
68 if (_this.panel.active) {
72 rowclick : function (_self, rowIndex, e)
74 _this.tablegrid.footer.onClick('first');
77 autoExpandColumn : 'person_name',
83 beforeload : function (_self, o)
85 if (! _this.dateFrom) {
88 o.params = o.params || {};
91 act = _this.dateFrom.getValue();
93 o.params['query[from]'] = act.format('Y-m-d');
95 act = _this.dateTo.getValue();
97 o.params['query[to]'] = act.format('Y-m-d');
100 var act = _this.actionSel.getValue();
102 o.params.action = act;
104 var tbl = _this.affectSel.getValue();
106 o.params.on_table = tbl;
109 o.params['query[person_sum]'] = 1;
110 o.params._columns = 'person_id,person_id_name,person_id_email,qty';
111 o.params.limit = 999;
116 sortInfo : { field : 'person_name', direction: 'ASC' },
121 url : baseURL + '/Roo/Events.php'
126 totalProperty : 'total',
135 'name': 'person_name',
139 'name': 'event_when',
141 'dateFormat': 'Y-m-d'
168 'name': 'person_id_id',
172 'name': 'person_id_office_id',
176 'name': 'person_id_name',
180 'name': 'person_id_phone',
184 'name': 'person_id_fax',
188 'name': 'person_id_email',
192 'name': 'person_id_company_id',
196 'name': 'person_id_role',
200 'name': 'person_id_active',
204 'name': 'person_id_remarks',
208 'name': 'person_id_passwd',
212 'name': 'person_id_owner_id',
216 'name': 'person_id_lang',
220 'name': 'person_id_no_reset_sent',
224 'name': 'person_id_action_type',
228 'name': 'person_id_project_id',
232 'name': 'person_id_deleted_by',
236 'name': 'person_id_deleted_dt',
255 render : function (_self)
257 _this.dateFrom = _self;
259 change : function (_self, newValue, oldValue)
261 _this.dategrid.ds.load({});
265 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
271 render : function (_self)
273 _this.dateTo = _self;
275 change : function (_self, newValue, oldValue)
277 _this.dategrid.ds.load({});
281 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
287 xtype: 'ColumnModel',
289 dataIndex : 'person_id_name',
290 header : 'Person name',
293 renderer : function(v,x,r) {
294 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
298 xtype: 'ColumnModel',
304 renderer : function(v) { return String.format('{0}', v); }
313 activate : function() {
314 _this.tablepanel = this;
315 if (_this.tablegrid) {
316 _this.tablegrid.footer.onClick('first');
324 tableName : 'Events',
332 _this.tablegrid = this;
333 //_this.dialog = Pman.Dialog.FILL_IN
334 if (_this.tablepanel.active) {
335 this.footer.onClick('first');
338 rowclick : function (_self, rowIndex, e)
340 _this.detailgrid.footer.onClick('first');
343 autoExpandColumn : 'person_name',
349 beforeload : function (_self, o)
351 if (! _this.dategrid) {
355 var s = _this.dategrid.selModel.getSelected();
357 _this.tablegrid.view.el.mask("Select a person");
360 _this.tablegrid.view.el.unmask();
362 o.params = o.params || {};
365 act = _this.dateFrom.getValue();
367 o.params['query[from]'] = act.format('Y-m-d');
369 act = _this.dateTo.getValue();
371 o.params['query[to]'] = act.format('Y-m-d');
373 o.params.person_id = s.data.person_id;
374 o.params['query[table_sum]'] = 1;
375 o.params._columns = 'on_table,qty,uqty';
381 sortInfo : { field : 'on_table', direction: 'ASC' },
386 url : baseURL + '/Roo/Events.php'
391 totalProperty : 'total',
400 'name': 'person_name',
404 'name': 'event_when',
406 'dateFormat': 'Y-m-d'
433 'name': 'person_id_id',
437 'name': 'person_id_office_id',
441 'name': 'person_id_name',
445 'name': 'person_id_phone',
449 'name': 'person_id_fax',
453 'name': 'person_id_email',
457 'name': 'person_id_company_id',
461 'name': 'person_id_role',
465 'name': 'person_id_active',
469 'name': 'person_id_remarks',
473 'name': 'person_id_passwd',
477 'name': 'person_id_owner_id',
481 'name': 'person_id_lang',
485 'name': 'person_id_no_reset_sent',
489 'name': 'person_id_action_type',
493 'name': 'person_id_project_id',
497 'name': 'person_id_deleted_by',
501 'name': 'person_id_deleted_dt',
508 xtype: 'PagingToolbar',
512 displayMsg : "Displaying Events{0} - {1} of {2}",
513 emptyMsg : "No Events found"
523 select : function (combo, record, index)
525 _this.dategrid.ds.load({});
527 render : function (_self)
529 _this.actionSel = _self;
533 displayField : 'action',
535 emptyText : "Select Action",
536 forceSelection : true,
538 loadingText : "Searching...",
542 qtip : "Select Action",
543 queryParam : 'query[action]',
544 selectOnFocus : true,
545 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
546 triggerAction : 'all',
548 valueField : 'action',
554 beforeload : function (_self, o)
556 o.params = o.params || {};
557 // staff can see all logs, other companies can only see their own.
558 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
559 o.params.company_id = Pman.Login.authUser.company_id;
561 o.params._distinct = 'action';
562 o.params._columns ='action';
566 sortInfo : { field : 'action' , direction : 'ASC' },
571 url : baseURL + '/Roo/Events.php'
576 totalProperty : 'total',
585 'name': 'person_name',
589 'name': 'event_when',
591 'dateFormat': 'Y-m-d'
618 'name': 'person_id_id',
622 'name': 'person_id_office_id',
626 'name': 'person_id_name',
630 'name': 'person_id_phone',
634 'name': 'person_id_fax',
638 'name': 'person_id_email',
642 'name': 'person_id_company_id',
646 'name': 'person_id_role',
650 'name': 'person_id_active',
654 'name': 'person_id_remarks',
658 'name': 'person_id_passwd',
662 'name': 'person_id_owner_id',
666 'name': 'person_id_lang',
670 'name': 'person_id_no_reset_sent',
674 'name': 'person_id_action_type',
678 'name': 'person_id_project_id',
682 'name': 'person_id_deleted_by',
686 'name': 'person_id_deleted_dt',
697 select : function (combo, record, index)
699 _this.dategrid.ds.load({});
701 render : function (_self)
703 _this.affectSel = _self;
707 displayField : 'on_table',
709 emptyText : "Select Affects",
710 forceSelection : true,
712 loadingText : "Searching...",
716 qtip : "Select Action",
717 queryParam : 'query[on_table]',
718 selectOnFocus : true,
719 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
720 triggerAction : 'all',
722 valueField : 'action',
728 beforeload : function (_self, o)
730 o.params = o.params || {};
731 // staff can see all logs, other companies can only see their own.
732 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
733 o.params.company_id = Pman.Login.authUser.company_id;
735 o.params._distinct = 'on_table';
736 o.params._columns ='on_table';
740 sortInfo : { field : 'on_table' , direction : 'ASC' },
745 url : baseURL + '/Roo/Events.php'
750 totalProperty : 'total',
759 'name': 'person_name',
763 'name': 'event_when',
765 'dateFormat': 'Y-m-d'
792 'name': 'person_id_id',
796 'name': 'person_id_office_id',
800 'name': 'person_id_name',
804 'name': 'person_id_phone',
808 'name': 'person_id_fax',
812 'name': 'person_id_email',
816 'name': 'person_id_company_id',
820 'name': 'person_id_role',
824 'name': 'person_id_active',
828 'name': 'person_id_remarks',
832 'name': 'person_id_passwd',
836 'name': 'person_id_owner_id',
840 'name': 'person_id_lang',
844 'name': 'person_id_no_reset_sent',
848 'name': 'person_id_action_type',
852 'name': 'person_id_project_id',
856 'name': 'person_id_deleted_by',
860 'name': 'person_id_deleted_dt',
871 xtype: 'ColumnModel',
873 dataIndex : 'on_table',
877 renderer : function(v) { return String.format('{0}', v); }
880 xtype: 'ColumnModel',
883 header : '#Affected',
886 renderer : function(v) { return String.format('{0}', v); }
889 xtype: 'ColumnModel',
895 renderer : function(v) { return String.format('{0}', v); }
904 activate : function() {
905 _this.detailpanel = this;
906 if (_this.detailgrid) {
907 _this.detailgrid.footer.onClick('first');
915 tableName : 'Events',
923 _this.detailgrid = this;
924 //_this.dialog = Pman.Dialog.FILL_IN
925 if (_this.detailpanel.active) {
926 this.footer.onClick('first');
930 autoExpandColumn : 'person_name',
936 beforeload : function (_self, o)
938 if (! _this.dategrid) {
942 o.params = o.params || {};
944 var s = _this.dategrid.selModel.getSelected();
946 _this.detailgrid.view.el.mask("Select a person");
950 o.params.person_id = s.data.person_id;
952 var s = _this.tablegrid.selModel.getSelected();
954 _this.detailgrid.view.el.mask("Select a table");
957 o.params.on_table = s.data.on_table;
959 _this.detailgrid.view.el.unmask();
964 act = _this.dateFrom.getValue();
966 o.params['query[from]'] = act.format('Y-m-d');
968 act = _this.dateTo.getValue();
970 o.params['query[to]'] = act.format('Y-m-d');
973 //o.params['query[table_d]'] = 1;
974 //o.params._columns = 'on_table,qty,uqty';
980 sortInfo : { field : 'person_name', direction: 'ASC' },
985 url : baseURL + '/Roo/Events.php'
990 totalProperty : 'total',
999 'name': 'person_name',
1003 'name': 'event_when',
1005 'dateFormat': 'Y-m-d'
1024 'name': 'person_id',
1032 'name': 'person_id_id',
1036 'name': 'person_id_office_id',
1040 'name': 'person_id_name',
1044 'name': 'person_id_phone',
1048 'name': 'person_id_fax',
1052 'name': 'person_id_email',
1056 'name': 'person_id_company_id',
1060 'name': 'person_id_role',
1064 'name': 'person_id_active',
1068 'name': 'person_id_remarks',
1072 'name': 'person_id_passwd',
1076 'name': 'person_id_owner_id',
1080 'name': 'person_id_lang',
1084 'name': 'person_id_no_reset_sent',
1088 'name': 'person_id_action_type',
1092 'name': 'person_id_project_id',
1096 'name': 'person_id_deleted_by',
1100 'name': 'person_id_deleted_dt',
1107 xtype: 'PagingToolbar',
1111 displayMsg : "Displaying Events{0} - {1} of {2}",
1112 emptyMsg : "No Events found"
1116 xtype: 'ColumnModel',
1121 renderer : function(v) { return String.format('{0}', v); }
1124 xtype: 'ColumnModel',
1126 header : 'Event when',
1128 dataIndex : 'event_when',
1129 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1132 xtype: 'ColumnModel',
1134 dataIndex : 'action',
1137 renderer : function(v) { return String.format('{0}', v); }
1140 xtype: 'ColumnModel',
1142 dataIndex : 'ipaddr',
1145 renderer : function(v) { return String.format('{0}', v); }
1148 xtype: 'ColumnModel',
1150 dataIndex : 'on_id',
1153 renderer : function(v) { return String.format('{0}', v); }
1156 xtype: 'ColumnModel',
1160 dataIndex : 'remarks',
1161 renderer : function(v) { return String.format('{0}', v); }
1168 xtype: 'LayoutRegion',
1174 xtype: 'LayoutRegion',
1178 xtype: 'LayoutRegion',
1185 this.layout = this.panel.layout;