$context = get_context_instance(CONTEXT_COURSE, $course->id);
if ($groupmode == VISIBLEGROUPS or has_capability('moodle/site:accessallgroups', $context)) {
- $allowedgroups = groups_get_all_groups($course->id, 0);
+ $allowedgroups = groups_get_all_groups($course->id, 0, $course->defaultgroupingid);
// detect changes related to groups and fix active group
if (!empty($SESSION->activegroup[$course->id][VISIBLEGROUPS][0])) {
if (!array_key_exists($SESSION->activegroup[$course->id][VISIBLEGROUPS][0], $allowedgroups)) {
}
} else {
- $allowedgroups = groups_get_all_groups($course->id, $USER->id);
+ $allowedgroups = groups_get_all_groups($course->id, $USER->id, $course->defaultgroupingid);
// detect changes related to groups and fix active group
if (isset($SESSION->activegroup[$course->id][SEPARATEGROUPS][0])) {
if ($SESSION->activegroup[$course->id][SEPARATEGROUPS][0] == 0) {
if ($groupmode == 'aag') {
$SESSION->activegroup[$course->id][$groupmode][0] = 0; // all groups by default if user has accessallgroups
- } else if ($usergroups = groups_get_all_groups($course->id, $USER->id, 0)) {
+ } else if ($usergroups = groups_get_all_groups($course->id, $USER->id, $course->defaultgroupingid)) {
$fistgroup = reset($usergroups);
$SESSION->activegroup[$course->id][$groupmode][0] = $fistgroup->id;
} else {
// first make list of allowed groups
if ($groupmode == VISIBLEGROUPS or $groupmode == 'aag') {
- $allowedgroups = groups_get_all_groups($course->id, 0, 0);
+ $allowedgroups = groups_get_all_groups($course->id, 0, $course->defaultgroupingid);
} else {
- $allowedgroups = groups_get_all_groups($course->id, $USER->id, 0);
+ $allowedgroups = groups_get_all_groups($course->id, $USER->id, $course->defaultgroupingid);
}
if ($allowedgroups and array_key_exists($changegroup, $allowedgroups)) {