You are here

function notifications_tags_node_terms in Notifications 7

Get terms from node as notifications objects

2 calls to notifications_tags_node_terms()
notifications_tags_notifications_object_node in notifications_tags/notifications_tags.module
Implementation of hook_notifications_object_node()
Notifications_Taxonomy_Term_Field::object_value in notifications_tags/notifications_tags.inc
Get value/s from object

File

notifications_tags/notifications_tags.module, line 199
Subscriptions to taxonomy terms

Code

function notifications_tags_node_terms($node) {
  $terms = array();
  foreach (field_info_instances('node', $node->type) as $field_instance) {
    if (!empty($node->{$field_instance['field_name']}) && ($field = field_info_field($field_instance['field_name']))) {
      if ($field['type'] === 'taxonomy_term_reference') {
        $langcode = field_language('node', $node, $field_instance['field_name']);
        foreach ($node->{$field_instance['field_name']}[$langcode] as $item) {
          $term = isset($item['taxonomy_term']) ? $item['taxonomy_term'] : taxonomy_term_load($item['tid']);
          $terms[$term->tid] = $term;
        }
      }
    }
  }
  return $terms;
}