if (optional_param('cancel', false, PARAM_BOOL)) { redirect($returnurl); } $groupmembersselector = new group_members_selector('removeselect', array('groupid' => $groupid, 'courseid' => $course->id)); $groupmembersselector->set_extra_fields(array()); $potentialmembersselector = new group_non_members_selector('addselect', array('groupid' => $groupid, 'courseid' => $course->id)); $potentialmembersselector->set_extra_fields(array()); if (optional_param('add', false, PARAM_BOOL) && confirm_sesskey()) { $userstoadd = $potentialmembersselector->get_selected_users(); if (!empty($userstoadd)) { foreach ($userstoadd as $user) { if (!groups_add_member($groupid, $user->id)) { print_error('erroraddremoveuser', 'group', $returnurl); } $groupmembersselector->invalidate_selected_users(); $potentialmembersselector->invalidate_selected_users(); } } } if (optional_param('remove', false, PARAM_BOOL) && confirm_sesskey()) { $userstoremove = $groupmembersselector->get_selected_users(); if (!empty($userstoremove)) { foreach ($userstoremove as $user) { if (!groups_remove_member($groupid, $user->id)) { print_error('erroraddremoveuser', 'group', $returnurl); } $groupmembersselector->invalidate_selected_users(); $potentialmembersselector->invalidate_selected_users(); } } }