From d4fb9bcd9999c810c1acd69316672b7db103c571 Mon Sep 17 00:00:00 2001 From: Erik Hommel <hommel@ee-atwork.nl> Date: Mon, 16 Mar 2015 09:05:48 +0100 Subject: [PATCH] add format parameters to activity type condition --- CRM/Civirules/Utils.php | 26 +++++++++++++++++++++++ CRM/CivirulesConditions/Activity/Type.php | 15 +++++++++++++ 2 files changed, 41 insertions(+) diff --git a/CRM/Civirules/Utils.php b/CRM/Civirules/Utils.php index fdfe2b0..a598f17 100755 --- a/CRM/Civirules/Utils.php +++ b/CRM/Civirules/Utils.php @@ -146,5 +146,31 @@ class CRM_Civirules_Utils { } return $optionGroupId; } + + /** + * Function to get option label with value and option group id + * + * @param int $optionGroupId + * @param mixed $optionValue + * @return array|bool + * @access public + * @static + */ + public static function getOptionLabelWithValue($optionGroupId, $optionValue) { + if (empty($optionGroupId) or empty($optionValue)) { + return FALSE; + } else { + $params = array( + 'option_group_id' => $optionGroupId, + 'value' => $optionValue, + 'return' => 'label' + ); + try { + return civicrm_api3('OptionValue', 'Getvalue', $params); + } catch (CiviCRM_API3_Exception $ex) { + return false; + } + } + } } diff --git a/CRM/CivirulesConditions/Activity/Type.php b/CRM/CivirulesConditions/Activity/Type.php index da4a013..e114914 100644 --- a/CRM/CivirulesConditions/Activity/Type.php +++ b/CRM/CivirulesConditions/Activity/Type.php @@ -49,4 +49,19 @@ class CRM_CivirulesConditions_Activity_Type extends CRM_Civirules_Condition { } return false; } + /** + * Returns a user friendly text explaining the condition params + * e.g. 'Older than 65' + * + * @return string + * @access public + */ + public function userFriendlyConditionParams() { + $activityTypeLabel = CRM_Civirules_Utils::getOptionLabelWithValue(CRM_Civirules_Utils::getOptionGroupIdWithName('activity_type'), + $this->conditionParams['activity_type_id']); + if (!empty($activityTypeLabel)) { + return 'Activity type is '.$activityTypeLabel; + } + return ''; + } } \ No newline at end of file -- GitLab