function civicrm_case_activity_reference_field_field_load in CiviCRM Entity 7.2
Implements hook_field_load().
Parameters
$entity_type:
$entities:
$field:
$instances:
$langcode:
$items:
$age:
File
- modules/
civicrm_case_activity_reference_field/ civicrm_case_activity_reference_field.module, line 105 - Provide CiviCRM entity reference field type
Code
function civicrm_case_activity_reference_field_field_load($entity_type, $entities, $field, $instances, $langcode, &$items, $age) {
foreach ($entities as $id => $entity) {
try {
$query = db_select('civicrm_case_activity', 'ca');
$query
->fields('ca', array(
'activity_id',
));
$query
->join('civicrm_activity', 'a', 'ca.activity_id = a.id');
$activities = $query
->condition('ca.case_id', $id, '=')
->condition('a.is_current_revision', 1, '=')
->execute()
->fetchAll();
$result = array();
if (!empty($activities)) {
foreach ($activities as $activity) {
$result[] = $activity->activity_id;
}
}
} catch (Exception $e) {
$error = $e
->getMessage();
drupal_set_message($error, 'error');
continue;
}
if (!empty($result)) {
foreach ($result as $delta => $activity_id) {
$items[$id][$delta]['target_id'] = $activity_id;
}
}
}
}