From fbdee7b7a7819c3b79b863d14508ea37c9308aee Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 10 Oct 2014 17:50:55 +0100 Subject: [PATCH] postprocess maintain standards for Recursion engine --- CRM/Activity/Form/Activity.php | 3 ++- CRM/Core/Form/RecurringEntity.php | 24 +++++------------------- CRM/Event/Form/ManageEvent/Repeat.php | 10 ++++++---- 3 files changed, 13 insertions(+), 24 deletions(-) diff --git a/CRM/Activity/Form/Activity.php b/CRM/Activity/Form/Activity.php index 5935166d9b..871435adc8 100644 --- a/CRM/Activity/Form/Activity.php +++ b/CRM/Activity/Form/Activity.php @@ -950,7 +950,8 @@ class CRM_Activity_Form_Activity extends CRM_Contact_Form_Task { // save activity $activity = $this->processActivity($params); $params['parent_entity_start_date'] = $this->_parentActivityStartDate; - $params['start_date_column_name'] = 'activity_date_time'; + $params['dateColumns'] = array('activity_date_time'); + $params['excludeDateRangeColumns'] = array('activity_date_time'); $params['entity_table'] = 'civicrm_activity'; //Unset activity id unset($params['id']); diff --git a/CRM/Core/Form/RecurringEntity.php b/CRM/Core/Form/RecurringEntity.php index 30a1cd45fd..8d4cf28350 100644 --- a/CRM/Core/Form/RecurringEntity.php +++ b/CRM/Core/Form/RecurringEntity.php @@ -250,7 +250,7 @@ class CRM_Core_Form_RecurringEntity { $entityStartDate = CRM_Utils_Date::processDate($values['repetition_start_date']); $end = CRM_Utils_Date::processDate($values['repeat_absolute_date']); if (($end < $entityStartDate) && ($end != 0)) { - $errors['repeat_absolute_date'] = ts('End date should be after event\'s start date'); + $errors['repeat_absolute_date'] = ts('End date should be after current entity\'s start date'); } } else { @@ -407,28 +407,14 @@ class CRM_Core_Form_RecurringEntity { } $recursion = new CRM_Core_BAO_RecurringEntity(); - if (CRM_Utils_Array::value('start_date_column_name', $params)) { - $recursion->dateColumns = array($params['start_date_column_name']); - } + $recursion->dateColumns = $params['dateColumns']; $recursion->scheduleId = $actionScheduleObj->id; if (!empty($excludeDateList)) { $recursion->excludeDates = $excludeDateList; - $excludeDateRangeColumns = array(); - if (CRM_Utils_Array::value('start_date_column_name', $params)) { - $excludeDateRangeColumns[] = $params['start_date_column_name']; - } - if (CRM_Utils_Array::value('end_date_column_name', $params)) { - $excludeDateRangeColumns[] = $params['end_date_column_name']; - } - $recursion->excludeDateRangeColumns = $excludeDateRangeColumns; + $recursion->excludeDateRangeColumns = $params['excludeDateRangeColumns']; } - - if ($params['parent_entity_end_date']) { - $interval = $recursion->getInterval($params['parent_entity_start_date'], $params['parent_entity_end_date']); - $recursion->intervalDateColumns = array('end_date' => $interval); - } - + $recursion->intervalDateColumns = $params['intervalDateColumns']; $recursion->entity_id = $params['entity_id']; $recursion->entity_table = $params['entity_table']; if (!empty($linkedEntities)) { @@ -450,7 +436,7 @@ class CRM_Core_Form_RecurringEntity { * @access public */ public function getTitle() { - return ts('Repeat Event'); + return ts('Repeat Entity'); } } diff --git a/CRM/Event/Form/ManageEvent/Repeat.php b/CRM/Event/Form/ManageEvent/Repeat.php index 4706679340..290ba6af21 100644 --- a/CRM/Event/Form/ManageEvent/Repeat.php +++ b/CRM/Event/Form/ManageEvent/Repeat.php @@ -99,10 +99,12 @@ class CRM_Event_Form_ManageEvent_Repeat extends CRM_Event_Form_ManageEvent { public function postProcess() { if ($this->_id) { $params = $this->controller->exportValues($this->_name); - $params['parent_entity_start_date'] = $this->_parentEventStartDate; - $params['parent_entity_end_date'] = $this->_parentEventEndDate; - $params['start_date_column_name'] = 'start_date'; - $params['end_date_column_name'] = 'end_date'; + if ($this->_parentEventStartDate && $this->_parentEventEndDate) { + $interval = CRM_Core_BAO_RecurringEntity::getInterval($this->_parentEventStartDate, $this->_parentEventEndDate); + $params['intervalDateColumns'] = array('end_date' => $interval); + } + $params['dateColumns'] = array('start_date'); + $params['excludeDateRangeColumns'] = array('start_date', 'end_date'); $params['entity_table'] = 'civicrm_event'; //Unset event id unset($params['id']); -- 2.25.1