You are here

function og_subgroups_nodeapi in Subgroups for Organic groups 5.3

Same name and namespace in other branches
  1. 5.4 og_subgroups.module \og_subgroups_nodeapi()
  2. 5 og_subgroups.module \og_subgroups_nodeapi()
  3. 6 og_subgroups.module \og_subgroups_nodeapi()

File

./og_subgroups.module, line 191
Maintains a hierarchy of group/subgroup relationships.

Code

function og_subgroups_nodeapi($node, $op, $teaser = NULL, $page = NULL) {
  switch ($op) {
    case 'load':
      if ($grps = og_subgroups_get_node_groups($node)) {

        // TODO: Refactor so we don't need 2 arrays.
        $node->og_groups = array_keys($grps);
        $node->og_groups_names = array_values($grps);
      }
      break;
    case 'view':
      og_subgroups_set_breadcrumb(!og_is_group_type($node->type));
      break;
    case 'insert':
      if (og_is_group_type($node->type) && is_array($node->members)) {
        og_subgroups_save_members($node->nid, $node->members);
      }
      og_subgroups_save_family($node, variable_get('og_subgroups_prop_type', 'none'));
      break;
    case 'update':
      if (og_is_group_type($node->type) && is_array($node->members)) {
        og_subgroups_save_members($node->nid, $node->members);
      }
      og_subgroups_save_family($node, variable_get('og_subgroups_prop_type', 'none'));
      break;
  }
}