Skip to content

Commit

Permalink
Merge pull request #9553 from colemanw/CRM-19723
Browse files Browse the repository at this point in the history
CRM-19723 - Activity icon improvements
  • Loading branch information
colemanw authored Dec 16, 2016
2 parents 08ef32f + 8c99c0b commit a4cdf33
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 6 deletions.
12 changes: 11 additions & 1 deletion CRM/Activity/BAO/Activity.php
Original file line number Diff line number Diff line change
Expand Up @@ -2461,6 +2461,16 @@ public static function getContactActivitySelector(&$params) {
$params['caseId'] = NULL;
$context = CRM_Utils_Array::value('context', $params);
$showContactOverlay = !CRM_Utils_String::startsWith($context, "dashlet");
$activityTypeInfo = civicrm_api3('OptionValue', 'get', array(
'option_group_id' => "activity_type",
'options' => array('limit' => 0),
));
$activityIcons = array();
foreach ($activityTypeInfo['values'] as $type) {
if (!empty($type['icon'])) {
$activityIcons[$type['value']] = $type['icon'];
}
}

// Get contact activities.
$activities = CRM_Activity_BAO_Activity::getActivities($params);
Expand Down Expand Up @@ -2502,7 +2512,7 @@ public static function getContactActivitySelector(&$params) {
$activity['DT_RowAttr']['data-entity'] = 'activity';
$activity['DT_RowAttr']['data-id'] = $activityId;

$activity['activity_type'] = $values['activity_type'];
$activity['activity_type'] = (!empty($activityIcons[$values['activity_type_id']]) ? '<span class="crm-i ' . $activityIcons[$values['activity_type_id']] . '"></span> ' : '') . $values['activity_type'];
$activity['subject'] = $values['subject'];

$activity['source_contact_name'] = '';
Expand Down
4 changes: 2 additions & 2 deletions CRM/Activity/Form/ActivityLinks.php
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public static function commonBuildQuickForm($self) {

$activityTypes = array();

foreach ($allTypes as $id => $act) {
foreach ($allTypes as $act) {
$url = 'civicrm/activity/add';
if ($act['name'] == 'Email') {
if (!CRM_Utils_Mail::validOutBoundMail() || !$contactId) {
Expand Down Expand Up @@ -93,7 +93,7 @@ public static function commonBuildQuickForm($self) {
continue;
}
$act['url'] = CRM_Utils_System::url($url,
"{$urlParams}{$id}", FALSE, NULL, FALSE
"{$urlParams}{$act['value']}", FALSE, NULL, FALSE
);
$act += array('icon' => 'fa-plus-square-o');
$activityTypes[$act['value']] = $act;
Expand Down
3 changes: 2 additions & 1 deletion CRM/Case/BAO/Case.php
Original file line number Diff line number Diff line change
Expand Up @@ -1126,7 +1126,8 @@ public static function getCaseActivity($caseID, &$params, $contactID, $context =
$caseActivity['subject'] = $dao->subject;

//Activity Type
$caseActivity['type'] = $activityTypes[$dao->type]['label'];
$caseActivity['type'] = (!empty($activityTypes[$dao->type]['icon']) ? '<span class="crm-i ' . $activityTypes[$dao->type]['icon'] . '"></span> ' : '')
. $activityTypes[$dao->type]['label'];

//Activity Target (With)
$targetContact = '';
Expand Down
3 changes: 2 additions & 1 deletion CRM/Case/PseudoConstant.php
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ public static function &caseActivityType($indexName = TRUE, $all = FALSE) {
self::$activityTypeList[$cache] = array();

$query = "
SELECT v.label as label ,v.value as value, v.name as name, v.description as description
SELECT v.label as label ,v.value as value, v.name as name, v.description as description, v.icon
FROM civicrm_option_value v,
civicrm_option_group g
WHERE v.option_group_id = g.id
Expand Down Expand Up @@ -231,6 +231,7 @@ public static function &caseActivityType($indexName = TRUE, $all = FALSE) {
$activityTypes[$index]['id'] = $dao->value;
$activityTypes[$index]['label'] = $dao->label;
$activityTypes[$index]['name'] = $dao->name;
$activityTypes[$index]['icon'] = $dao->icon;
$activityTypes[$index]['description'] = $dao->description;
}
self::$activityTypeList[$cache] = $activityTypes;
Expand Down
2 changes: 1 addition & 1 deletion tests/phpunit/CRM/Activity/BAO/ActivityTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -381,7 +381,7 @@ public function testActivityFilters() {
$activities = $obj->getContactActivity();
// This should include activities of type Meeting only.
foreach ($activities['data'] as $key => $value) {
$this->assertEquals('Meeting', $value['activity_type']);
$this->assertContains('Meeting', $value['activity_type']);
}
unset($_GET['activity_type_id']);

Expand Down

0 comments on commit a4cdf33

Please sign in to comment.