From 30db5cbf1466f4c3961f46c8fe2af7357ec888e3 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Wed, 15 Feb 2017 14:09:39 -0500 Subject: [PATCH] CRM-19816 - Retrieve activity tags --- api/v3/Activity.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/api/v3/Activity.php b/api/v3/Activity.php index 495154744c..80f411fe6e 100644 --- a/api/v3/Activity.php +++ b/api/v3/Activity.php @@ -375,6 +375,10 @@ function civicrm_api3_activity_get($params) { * new activities list */ function _civicrm_api3_activity_get_formatResult($params, $activities) { + if (!$activities) { + return $activities; + } + $returns = CRM_Utils_Array::value('return', $params, array()); if (!is_array($returns)) { $returns = str_replace(' ', '', $returns); @@ -430,6 +434,18 @@ function _civicrm_api3_activity_get_formatResult($params, $activities) { } break; + case 'tag_id': + $tags = civicrm_api3('EntityTag', 'get', array( + 'entity_table' => 'civicrm_activity', + 'entity_id' => array('IN' => array_keys($activities)), + 'return' => array('tag_id', 'entity_id'), + 'options' => array('limit' => 0), + )); + foreach ($tags['values'] as $tag) { + $activities[$tag['entity_id']]['tag_id'][] = (int) $tag['tag_id']; + } + break; + default: if (substr($n, 0, 6) == 'custom') { $returnProperties[$n] = $v; @@ -451,7 +467,7 @@ function _civicrm_api3_activity_get_formatResult($params, $activities) { } } - if (!empty($activities) && (!empty($returnProperties) || !empty($params['contact_id']))) { + if (!empty($returnProperties) || !empty($params['contact_id'])) { foreach ($activities as $activityId => $values) { //@todo - should possibly load activity type id if not loaded (update with id) _civicrm_api3_custom_data_get($activities[$activityId], CRM_Utils_Array::value('check_permissions', $params), 'Activity', $activityId, NULL, CRM_Utils_Array::value('activity_type_id', $values)); -- 2.25.1