function og_subgroups_get_family in Subgroups for Organic groups 5.3
Same name and namespace in other branches
- 5.4 og_subgroups.module \og_subgroups_get_family()
- 5 og_subgroups.module \og_subgroups_get_family()
1 call to og_subgroups_get_family()
- og_subgroups_save_family in ./og_subgroups.module
File
- ./og_subgroups.module, line 765
- Maintains a hierarchy of group/subgroup relationships.
Code
function og_subgroups_get_family($node, $relationship_type) {
$func = og_subgroups_get_ . $relationship_type;
$tree = array();
if (is_array($node->parents)) {
$parents = $node->parents;
}
else {
$parents = $node->og_groups;
}
if ($parents) {
foreach ($parents as $key => $value) {
$tree[$value]['nid'] = $value;
unset($tree[$value]['title']);
$tree[$value]['title'] = $node->og_groups_names[$key];
if ($relationship_type != 'none') {
$tree[$value][$relationship_type] = $func($value);
}
if (!empty($tree[$value][$relationship_type])) {
foreach ($tree[$value][$relationship_type] as $this_member) {
if ($this_member['nid'] != $tree[$value]['nid']) {
unset($tree[$this_member['nid']]);
}
}
}
}
}
return $tree;
}