From 6d3827cb836a3e51a2c5411cc390e04ee60f18b2 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Thu, 13 Apr 2017 14:07:00 -0700 Subject: [PATCH] CRM-20420 - PDFLetterCommon::createActivities() - Combine calls Combine the calls to CRM_Activity_BAO_Activity::create() and CRM_Activity_BAO_ActivityContact::create() into one call. Remove unnecessary `$activityContacts`. --- CRM/Contact/Form/Task/PDFLetterCommon.php | 27 +++++++---------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/CRM/Contact/Form/Task/PDFLetterCommon.php b/CRM/Contact/Form/Task/PDFLetterCommon.php index fe69fd100c..6f1003913f 100644 --- a/CRM/Contact/Form/Task/PDFLetterCommon.php +++ b/CRM/Contact/Form/Task/PDFLetterCommon.php @@ -498,8 +498,6 @@ class CRM_Contact_Form_Task_PDFLetterCommon { // but difficult to audit. $contactIds = $form->_cid ? array($form->_cid) : $contactIds; - $activityContacts = CRM_Core_OptionGroup::values('activity_contacts', FALSE, FALSE, FALSE, NULL, 'name'); - $activityIds = array(); switch (Civi::settings()->get('recordGeneratedLetters')) { case 'none': @@ -508,14 +506,11 @@ class CRM_Contact_Form_Task_PDFLetterCommon { case 'multiple': // One activity per contact. foreach ($contactIds as $contactId) { - $activity = CRM_Activity_BAO_Activity::create($activityParams); + $fullParams = array( + 'target_contact_id' => $contactId, + ) + $activityParams; + $activity = CRM_Activity_BAO_Activity::create($fullParams); $activityIds[$contactId] = $activity->id; - $activityTargetParams = array( - 'activity_id' => $activity->id, - 'contact_id' => $contactId, - 'record_type_id' => CRM_Utils_Array::key('Activity Targets', $activityContacts), - ); - CRM_Activity_BAO_ActivityContact::create($activityTargetParams); } break; @@ -523,17 +518,11 @@ class CRM_Contact_Form_Task_PDFLetterCommon { case 'combined': case 'combined-attached': // One activity with all contacts. - $activity = CRM_Activity_BAO_Activity::create($activityParams); + $fullParams = array( + 'target_contact_id' => $contactIds, + ) + $activityParams; + $activity = CRM_Activity_BAO_Activity::create($fullParams); $activityIds[] = $activity->id; - - foreach ($contactIds as $contactId) { - $activityTargetParams = array( - 'activity_id' => $activity->id, - 'contact_id' => $contactId, - 'record_type_id' => CRM_Utils_Array::key('Activity Targets', $activityContacts), - ); - CRM_Activity_BAO_ActivityContact::create($activityTargetParams); - } break; default: -- 2.25.1