From e06df9afaf4d1fba345a79d5a8dda8423320ffe0 Mon Sep 17 00:00:00 2001 From: jitendrapurohit Date: Thu, 7 Jan 2016 18:53:28 +0530 Subject: [PATCH] Alter DateTime section header to group by date from the datetime field. --- CRM/Report/Form/Activity.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/CRM/Report/Form/Activity.php b/CRM/Report/Form/Activity.php index ed9e2386cc..a7eaebf57b 100644 --- a/CRM/Report/Form/Activity.php +++ b/CRM/Report/Form/Activity.php @@ -821,6 +821,9 @@ GROUP BY civicrm_activity_id $having {$this->_orderBy}"; $this->_having = "HAVING " . implode(' AND ', $nullFilters); } $this->orderBy(); + if (!empty($this->_sections) && key($this->_sections) == 'civicrm_activity_activity_date_time') { + $this->alterSectionHeaderForDateTime(); + } $this->limit(); $sql = "{$this->_select} FROM civireport_activity_temp_target tar @@ -1059,4 +1062,19 @@ GROUP BY civicrm_activity_id {$this->_having} {$this->_orderBy} {$this->_limit}" } } + /* + * Alter DateTime section header to group by date from the datetime field. + * + */ + public function alterSectionHeaderForDateTime() { + $tempQuery = "ALTER TABLE civireport_activity_temp_target ADD COLUMN civicrm_activity_activity_date VARCHAR(128)"; + CRM_Core_DAO::executeQuery($tempQuery); + $updateQuery = "UPDATE civireport_activity_temp_target SET civicrm_activity_activity_date = date(civicrm_activity_activity_date_time)"; + CRM_Core_DAO::executeQuery($updateQuery); + $this->_select .= ', civicrm_activity_activity_date'; + $this->_sections['civicrm_activity_activity_date'] = $this->_sections['civicrm_activity_activity_date_time']; + unset($this->_sections['civicrm_activity_activity_date_time']); + $this->assign('sections', $this->_sections); + } + } -- 2.25.1