Moodle APIs 4.3
Moodle 4.3.6 (Build: 20240812)
grouplib.php File Reference

Functions

 _group_verify_activegroup ($courseid, $groupmode, $groupingid, array $allowedgroups)
 Internal method, sets up $SESSION->activegroup and verifies previous value.
 
 groups_allgroups_course_menu ($course, $urlroot, $update=false, $activegroup=0)
 Generates html to print menu selector for course level, listing all groups.
 
 groups_cache_groupdata ($courseid, cache $cache=null)
 Caches group data for a particular course to speed up subsequent requests.
 
 groups_get_activity_allowed_groups ($cm, $userid=0)
 Gets a list of groups that the user is allowed to access within the specified activity.
 
 groups_get_activity_group ($cm, $update=false, $allowedgroups=null)
 Returns group active in activity, changes the group by default if 'group' page param present.
 
 groups_get_activity_groupmode ($cm, $course=null)
 Returns effective groupmode used in activity, course setting overrides activity setting if groupmodeforce enabled.
 
 groups_get_activity_shared_group_members ($cm, $userid=null)
 Returns users who share group membership with the specified user in the given actiivty.
 
 groups_get_all_groupings ($courseid)
 Gets an array of all groupings in a specified course.
 
 groups_get_all_groups ($courseid, $userid=0, $groupingid=0, $fields='g.*', $withmembers=false, $participationonly=false)
 Gets array of all groups in a specified course (subject to the conditions imposed by the other arguments).
 
 groups_get_course_data ($courseid, cache $cache=null)
 Gets group data for a course.
 
 groups_get_course_group ($course, $update=false, $allowedgroups=null)
 Returns group active in course, changes the group by default if 'group' page param present.
 
 groups_get_course_groupmode ($course)
 Returns effective groupmode used in course.
 
 groups_get_group ($groupid, $fields=' *', $strictness=IGNORE_MISSING, $withcustomfields=false)
 Get the group object.
 
 groups_get_group_by_idnumber ($courseid, $idnumber)
 Returns the groupid of a group with the idnumber specified for the course.
 
 groups_get_group_by_name ($courseid, $name)
 Returns the groupid of a group with the name specified for the course.
 
 groups_get_group_name ($groupid)
 Gets the name of a group with a specified id.
 
 groups_get_grouping ($groupingid, $fields=' *', $strictness=IGNORE_MISSING, $withcustomfields=false)
 Get the grouping object.
 
 groups_get_grouping_by_idnumber ($courseid, $idnumber)
 Returns the groupingid of a grouping with the idnumber specified for the course.
 
 groups_get_grouping_by_name ($courseid, $name)
 Returns the groupingid of a grouping with the name specified for the course.
 
 groups_get_grouping_members ($groupingid, $fields='u.*', $sort='lastname ASC')
 Returns the users in the specified grouping.
 
 groups_get_grouping_name ($groupingid)
 Gets the name of a grouping with a specified id.
 
 groups_get_groups_members ($groupsids, $extrafields=null, $sort='lastname ASC')
 Returns the users in the specified groups.
 
 groups_get_members ($groupid, $fields='u.*', $sort='lastname ASC')
 Returns the users in the specified group.
 
 groups_get_members_ids_sql ($groupids, context $context=null, $groupsjointype=GROUPS_JOIN_ANY)
 Get sql and parameters that will return user ids for a group or groups.
 
 groups_get_members_join ($groupids, $useridcolumn, context $context=null, int $jointype=GROUPS_JOIN_ANY)
 Get sql join to return users in a group.
 
 groups_get_my_groups ()
 Gets array of all groups in current user.
 
 groups_get_names_concat_sql (int $courseid, string $separator=', ')
 Returns array with SQL and parameters returning userids and concatenated group names for given course.
 
 groups_get_user_groups (int $courseid, int $userid=0, bool $includehidden=false)
 Returns info about user's groups in course.
 
 groups_group_exists ($groupid)
 Determines if a group with a given groupid exists.
 
 groups_group_visible ($groupid, $course, $cm=null, $userid=null)
 Determine if a given group is visible to user or not in a given context.
 
 groups_has_membership ($cm, $userid=null)
 Determines if current or specified is member of any active group in activity.
 
 groups_is_member ($groupid, $userid=null)
 Determines if the user is a member of the given group.
 
 groups_list_to_menu ($groups)
 Turn an array of groups into an array of menu options.
 
 groups_print_activity_menu ($cm, $urlroot, $return=false, $hideallparticipants=false)
 Print group menu selector for activity.
 
 groups_print_course_menu ($course, $urlroot, $return=false)
 Print group menu selector for course level.
 
 groups_sort_menu_options ($allowedgroups, $usergroups)
 Takes user's allowed groups and own groups and formats for use in group selector menu If user has allowed groups + own groups will add to an optgroup Own groups are removed from allowed groups.
 
 groups_user_groups_visible ($course, $userid, $cm=null)
 Determine if the current user can see at least one of the groups of the specified user.
 

Variables

const GROUPS_JOIN_ALL 2
 'All' join type, used when filtering by groups (logical AND)
 
const GROUPS_JOIN_ANY 1
 'Any' join type, used when filtering by groups (logical OR)
 
const GROUPS_JOIN_NONE 0
 'None' join type, used when filtering by groups (logical NOT)
 
const GROUPS_VISIBILITY_ALL 0
 All users can see this group and its members.
 
const GROUPS_VISIBILITY_MEMBERS 1
 Members of this group can see this group and other members.
 
const GROUPS_VISIBILITY_NONE 3
 No-one can see this group or its members.
 
const GROUPS_VISIBILITY_OWN 2
 Members of this group can see the group and their own membership, but not each other's membership.
 
const NOGROUPS 0
 Groups not used in course or activity.
 
const SEPARATEGROUPS 1
 Groups used, users do not see other groups.
 
const USERSWITHOUTGROUP -1
 This is for filtering users without any group.
 
const VISIBLEGROUPS 2
 Groups used, students see other groups.