function oa_teams_get_team_members in Open Atrium Core 7.2
Get the members of the team.
Parameters
$team_id: The NID of the team.
Return value
An array of uids that are in the team.
2 calls to oa_teams_get_team_members()
- oa_teams_add_team_member_render in modules/
oa_teams/ plugins/ content_types/ oa_teams_add_member.inc - Render callback for the content visibility panel.
- oa_team_members_render in modules/
oa_teams/ plugins/ content_types/ oa_teams_members.inc - Main render function for oa_team_members.
File
- modules/
oa_teams/ oa_teams.module, line 110
Code
function oa_teams_get_team_members($team_id) {
$groups = og_get_entity_groups('node', node_load($team_id));
$uid = OA_TEAM_USERS_FIELD . '_target_id';
$query = db_select('field_data_' . OA_TEAM_USERS_FIELD, 'f')
->fields('f', array(
$uid,
))
->condition('f.entity_type', 'node')
->condition('f.entity_id', $team_id)
->condition('f.deleted', 0);
// Make sure team member is member of group.
if (!empty($groups['node'])) {
if (module_exists('og_subgroups')) {
$groups = og_subgroups_parents_load_multiple(array(
'node' => $groups['node'],
));
}
$query
->innerJoin('og_membership', 'og', "f." . $uid . " = og.etid AND og.entity_type = 'user' AND og.group_type = 'node'");
$query
->condition('og.gid', $groups['node']);
}
return $query
->execute()
->fetchAllAssoc(OA_TEAM_USERS_FIELD . '_target_id');
}