// Student group self-selection if ($select and $canselect and isset($groups[$select]) and $isopen) { $grpname = format_string($groups[$select]->name, true, array('context' => $context)); $usercount = isset($counts[$select]) ? $counts[$select]->usercount : 0; $data = array('id' => $id, 'select' => $select, 'group_password' => $password); $mform = new select_form(null, array($data, $groupselect, $grpname)); if ($mform->is_cancelled()) { redirect($PAGE->url); } if (!$isopen) { $problems[] = get_string('cannotselectclosed', 'mod_groupselect'); } else { if ($groupselect->maxmembers and $groupselect->maxmembers <= $usercount) { $problems[] = get_string('cannotselectmaxed', 'mod_groupselect', $grpname); } else { if ($return = $mform->get_data()) { groups_add_member($select, $USER->id); //add_to_log ( $course->id, 'groupselect', 'select', 'view.php?id=' . $cm->id, $groupselect->id, $cm->id ); redirect($PAGE->url); } else { echo $OUTPUT->header(); echo $OUTPUT->heading(get_string('select', 'mod_groupselect', $grpname)); echo $OUTPUT->box_start('generalbox', 'notice'); echo '<p>' . get_string('selectconfirm', 'mod_groupselect', $grpname) . '</p>'; $mform->display(); echo $OUTPUT->box_end(); echo $OUTPUT->footer(); die; } } }