4 * Class test_extension_manager_reporttest
6 class test_extension_manager_reporttest
extends CRM_Core_Report
{
9 function __construct() {
10 $logging = new CRM_Logging_Schema
;
11 $this->tables
[] = 'civicrm_contact';
12 $this->tables
= array_merge($this->tables
, array_keys($logging->customDataLogTables()));
13 $this->tables
[] = 'civicrm_email';
14 $this->tables
[] = 'civicrm_phone';
15 $this->tables
[] = 'civicrm_im';
16 $this->tables
[] = 'civicrm_openid';
17 $this->tables
[] = 'civicrm_website';
18 $this->tables
[] = 'civicrm_address';
19 $this->tables
[] = 'civicrm_note';
20 $this->tables
[] = 'civicrm_relationship';
22 $this->detail
= 'logging/contact/detail';
23 $this->summary
= 'logging/contact/summary';
25 parent
::__construct();
28 function buildQuickForm() {
29 $layout = CRM_Utils_Request
::retrieve('layout', 'String', $this);
30 $this->assign('layout', $layout);
32 parent
::buildQuickForm();
35 // link back to contact summary
36 $this->assign('backURL', CRM_Utils_System
::url('civicrm/contact/view', "reset=1&selectedChild=log&cid={$this->cid}", FALSE, NULL, FALSE));
37 $this->assign('revertURL', self
::$_template->get_template_vars('revertURL') . "&cid={$this->cid}");
40 // link back to summary report
41 $this->assign('backURL', CRM_Report_Utils_Report
::getNextUrl('logging/contact/summary', 'reset=1', FALSE, TRUE));
48 protected function whoWhomWhenSql() {
50 SELECT who.id who_id, who.display_name who_name, whom.id whom_id, whom.display_name whom_name, l.is_deleted
51 FROM `{$this->db}`.log_civicrm_contact l
52 JOIN civicrm_contact who ON (l.log_user_id = who.id)
53 JOIN civicrm_contact whom ON (l.id = whom.id)
54 WHERE log_action = 'Update' AND log_conn_id = %1 AND log_date = %2 ORDER BY log_date DESC LIMIT 1