1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Pman.Tab.AdminLogEvents = new Roo.XComponent({
6 part : ["Admin","LogEvents"],
7 order : '001-Pman.Tab.AdminLogEvents',
9 parent : 'Pman.Tab.AdminLogs',
10 name : "Admin - Logs - Events",
12 permname : 'Admin.Logs',
18 xtype: 'NestedLayoutPanel',
23 xtype: 'BorderLayout',
27 xtype: 'ContentPanel',
30 render : function (_self)
32 _this.viewPanel = _self;
42 activate : function() {
45 _this.grid.footer.onClick('first');
61 //_this.dialog = Pman.Dialog.FILL_IN
62 if (_this.panel.active) {
63 this.footer.onClick('first');
67 autoExpandColumn : 'remarks',
70 xtype: 'RowSelectionModel',
73 afterselectionchange : function (_self)
75 // load detail log in _this.viewPanel;
76 if (!this.getSelected()) {
77 this.viewPanel.setContent("Nothing Selected");
80 var id = this.getSelected().data.id;
81 _this.viewPanel.load( { url : baseURL + "/Admin/EventView/" + id + ".html" });
91 beforeload : function (_self, o)
93 if (!Pman.buildCompleted) {
98 if (! _this.personSel) {
101 o.params = o.params || {};
102 o.params.person_id = _this.personSel.getValue();
103 var act = _this.actionSel.getValue();
105 o.params.action = act;
107 var tbl = _this.affectSel.getValue();
109 o.params.on_table = tbl;
111 act = _this.dateFrom.getValue();
113 o.params['query[from]'] = act.format('Y-m-d');
115 act = _this.dateTo.getValue();
117 o.params['query[to]'] = act.format('Y-m-d');
122 act = _this.groupedCombo.getValue();
123 o.params['query[grouped]'] = act;
124 if (o.params['query[grouped]'] == 'gr') {
127 Roo.MessageBox.alert("Error", "Select a table to group results on");
130 // o.params['_columns'] =
131 o.params['_distinct'] = 'on_id';
142 sortInfo : { field: 'event_when', direction: 'DESC'},
146 totalProperty : 'total',
155 'name': 'person_name',
159 'name': 'event_when',
161 'dateFormat': 'Y-m-d'
188 'name': 'person_id_id',
192 'name': 'person_id_office_id',
196 'name': 'person_id_name',
200 'name': 'person_id_phone',
204 'name': 'person_id_fax',
208 'name': 'person_id_email',
212 'name': 'person_id_company_id',
216 'name': 'person_id_role',
220 'name': 'person_id_active',
224 'name': 'person_id_remarks',
228 'name': 'person_id_passwd',
232 'name': 'person_id_owner_id',
236 'name': 'person_id_lang',
240 'name': 'person_id_no_reset_sent',
244 'name': 'person_id_action_type',
248 'name': 'person_id_project_id',
252 'name': 'person_id_deleted_by',
256 'name': 'person_id_deleted_dt',
265 url : baseURL + '/Roo/Events.php'
269 xtype: 'PagingToolbar',
273 displayMsg : "Displaying Events {0} - {1} of {2}",
274 emptyMsg : "No Events found",
280 click : function (_self, e)
284 'sort' : 'event_when',
288 person_id : _this.personSel.getValue(),
289 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when',
290 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name',
291 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action',
292 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' ,
293 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table',
294 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks'
297 params.person_id = _this.personSel.getValue();
298 var act = _this.actionSel.getValue();
302 var tbl = _this.affectSel.getValue();
304 params.on_table = tbl;
306 act = _this.dateFrom.getValue();
308 params['query[from]'] = act.format('Y-m-d');
310 act = _this.dateTo.getValue();
312 params['query[to]'] = act.format('Y-m-d');
318 url : baseURL + '/Roo/Events.php',
325 text : "Download to Excel"
342 select : function (combo, record, index)
344 _this.grid.footer.onClick('first');
347 render : function (_self)
349 _this.personSel = _self;
353 displayField : 'name',
355 emptyText : "Select Person ",
356 fieldLabel : 'Person ',
357 forceSelection : true,
359 loadingText : "Searching...",
361 name : 'person_id_name',
363 qtip : "Select Person ",
364 queryParam : 'query[name]',
365 selectOnFocus : true,
366 tpl : '<div class="x-grid-cell-text x-btn button"><b>{name}</b> ({company_id_name}) <{email}> </div>',
367 triggerAction : 'all',
375 beforeload : function (_self, o)
377 o.params = o.params || {};
378 o.params.company_id = Pman.Login.authUser.company_id;
382 sortInfo : { field : 'name' , direction : 'ASC' },
387 url : baseURL + '/Roo/Person.php'
394 totalProperty : 'total',
421 'name': 'company_id',
449 'name': 'no_reset_sent',
453 'name': 'action_type',
457 'name': 'project_id',
461 'name': 'deleted_by',
465 'name': 'deleted_dt',
467 'dateFormat': 'Y-m-d'
470 'name': 'office_id_id',
474 'name': 'office_id_company_id',
478 'name': 'office_id_name',
482 'name': 'office_id_address',
486 'name': 'office_id_phone',
490 'name': 'office_id_fax',
494 'name': 'office_id_email',
498 'name': 'office_id_role',
502 'name': 'company_id_code',
506 'name': 'company_id_name',
510 'name': 'company_id_remarks',
514 'name': 'company_id_owner_id',
518 'name': 'company_id_address',
522 'name': 'company_id_tel',
526 'name': 'company_id_fax',
530 'name': 'company_id_email',
534 'name': 'company_id_id',
538 'name': 'company_id_isOwner',
542 'name': 'company_id_logo_id',
546 'name': 'company_id_background_color',
550 'name': 'company_id_comptype',
554 'name': 'company_id_url',
558 'name': 'company_id_main_office_id',
562 'name': 'company_id_created_by',
566 'name': 'company_id_created_dt',
570 'name': 'company_id_updated_by',
574 'name': 'company_id_updated_dt',
578 'name': 'company_id_passwd',
582 'name': 'company_id_dispatch_port',
586 'name': 'company_id_province',
590 'name': 'company_id_country',
594 'name': 'project_id_id',
598 'name': 'project_id_name',
602 'name': 'project_id_remarks',
606 'name': 'project_id_owner_id',
610 'name': 'project_id_code',
614 'name': 'project_id_active',
618 'name': 'project_id_type',
622 'name': 'project_id_client_id',
626 'name': 'project_id_team_id',
630 'name': 'project_id_file_location',
634 'name': 'project_id_open_date',
638 'name': 'project_id_open_by',
642 'name': 'project_id_close_date',
646 'name': 'project_id_countries',
650 'name': 'project_id_languages',
654 'name': 'project_id_agency_id',
658 'name': 'owner_id_id',
662 'name': 'owner_id_office_id',
666 'name': 'owner_id_name',
670 'name': 'owner_id_phone',
674 'name': 'owner_id_fax',
678 'name': 'owner_id_email',
682 'name': 'owner_id_company_id',
686 'name': 'owner_id_role',
690 'name': 'owner_id_active',
694 'name': 'owner_id_remarks',
698 'name': 'owner_id_passwd',
702 'name': 'owner_id_owner_id',
706 'name': 'owner_id_lang',
710 'name': 'owner_id_no_reset_sent',
714 'name': 'owner_id_action_type',
718 'name': 'owner_id_project_id',
722 'name': 'owner_id_deleted_by',
726 'name': 'owner_id_deleted_dt',
737 select : function (combo, record, index)
739 _this.grid.footer.onClick('first');
741 render : function (_self)
743 _this.actionSel = _self;
747 displayField : 'action',
749 emptyText : "Select Action",
750 forceSelection : true,
752 loadingText : "Searching...",
756 qtip : "Select Action",
757 queryParam : 'query[action]',
758 selectOnFocus : true,
759 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
760 triggerAction : 'all',
762 valueField : 'action',
768 beforeload : function (_self, o)
770 o.params = o.params || {};
771 // staff can see all logs, other companies can only see their own.
772 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
773 o.params.company_id = Pman.Login.authUser.company_id;
775 o.params._distinct = 'action';
776 o.params._columns ='action';
780 sortInfo : { field : 'action' , direction : 'ASC' },
785 url : baseURL + '/Roo/Events.php'
792 totalProperty : 'total',
799 'name': 'person_name',
803 'name': 'event_when',
805 'dateFormat': 'Y-m-d'
832 'name': 'person_id_id',
836 'name': 'person_id_office_id',
840 'name': 'person_id_name',
844 'name': 'person_id_phone',
848 'name': 'person_id_fax',
852 'name': 'person_id_email',
856 'name': 'person_id_company_id',
860 'name': 'person_id_role',
864 'name': 'person_id_active',
868 'name': 'person_id_remarks',
872 'name': 'person_id_passwd',
876 'name': 'person_id_owner_id',
880 'name': 'person_id_lang',
884 'name': 'person_id_no_reset_sent',
888 'name': 'person_id_action_type',
892 'name': 'person_id_project_id',
896 'name': 'person_id_deleted_by',
900 'name': 'person_id_deleted_dt',
911 select : function (combo, record, index)
913 _this.grid.footer.onClick('first');
915 render : function (_self)
917 _this.affectSel = _self;
921 displayField : 'on_table',
923 emptyText : "Select Affects",
924 forceSelection : true,
926 loadingText : "Searching...",
930 qtip : "Select Action",
931 queryParam : 'query[on_table]',
932 selectOnFocus : true,
933 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
934 triggerAction : 'all',
936 valueField : 'action',
942 beforeload : function (_self, o)
944 o.params = o.params || {};
945 // staff can see all logs, other companies can only see their own.
946 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
947 o.params.company_id = Pman.Login.authUser.company_id;
949 o.params._distinct = 'on_table';
950 o.params._columns ='on_table';
954 sortInfo : { field : 'on_table' , direction : 'ASC' },
959 url : baseURL + '/Roo/Events.php'
964 totalProperty : 'total',
973 'name': 'person_name',
977 'name': 'event_when',
979 'dateFormat': 'Y-m-d'
1006 'name': 'person_id_id',
1010 'name': 'person_id_office_id',
1014 'name': 'person_id_name',
1018 'name': 'person_id_phone',
1022 'name': 'person_id_fax',
1026 'name': 'person_id_email',
1030 'name': 'person_id_company_id',
1034 'name': 'person_id_role',
1038 'name': 'person_id_active',
1042 'name': 'person_id_remarks',
1046 'name': 'person_id_passwd',
1050 'name': 'person_id_owner_id',
1054 'name': 'person_id_lang',
1058 'name': 'person_id_no_reset_sent',
1062 'name': 'person_id_action_type',
1066 'name': 'person_id_project_id',
1070 'name': 'person_id_deleted_by',
1074 'name': 'person_id_deleted_dt',
1090 render : function (_self)
1092 _this.dateFrom = _self;
1094 change : function (_self, newValue, oldValue)
1096 _this.grid.footer.onClick('first');
1105 render : function (_self)
1107 _this.dateTo = _self;
1109 change : function (_self, newValue, oldValue)
1111 _this.grid.footer.onClick('first');
1120 xtype: 'ColumnModel',
1122 dataIndex : 'event_when',
1125 renderer : function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; }
1128 xtype: 'ColumnModel',
1135 xtype: 'ColumnModel',
1137 dataIndex : 'person_id_name',
1140 renderer : function(v,x,r) {
1142 var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field;
1143 var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field;
1145 Roo.log([r, efield, nfield]);
1147 var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email;
1148 var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name;
1149 return String.format('{0} <<a href="mailto:{1}">{1}</a>>',
1156 xtype: 'ColumnModel',
1160 dataIndex : 'action',
1161 renderer : function(v) { return String.format('{0}', v); }
1164 xtype: 'ColumnModel',
1168 dataIndex : 'ipaddr',
1169 renderer : function(v) { return String.format('{0}', v); }
1172 xtype: 'ColumnModel',
1174 dataIndex : 'on_table',
1175 header : 'Affected',
1177 renderer : function(v, x, r) {
1178 return v ? String.format('{0}({1})', v, r.data.on_id) : '';
1182 xtype: 'ColumnModel',
1184 dataIndex : 'remarks',
1187 renderer : function(v) { return String.format('<span qtip="{1}">{0}</span>', v, Roo.util.Format.htmlEncode(v)); }
1194 xtype: 'LayoutRegion',
1198 xtype: 'LayoutRegion',