} else { // if no role, then find "old" enrolment type switch ($addtype = @$user->{'type' . $ncourses}) { case 2: // teacher $ok = add_teacher($user->id, $course->id, 1); break; case 3: // non-editing teacher $ok = add_teacher($user->id, $course->id, 0); break; case 1: // student // student default: $ok = enrol_student($user->id, $course->id); break; } } if ($ok) { // OK echo $strindent . get_string('enrolledincourse', '', $addcourse) . '<br />'; } else { notify(get_string('erroronline', 'error', $linenum) . ': ' . get_string('enrolledincoursenot', '', $addcourse)); } // find group to add to if ($addgroup = @$user->{'group' . $ncourses}) { if ($gid =& groups_get_group_by_name($course->id, $addgroup)) { $coursecontext =& get_context_instance(CONTEXT_COURSE, $course->id); if (count(get_user_roles($coursecontext, $user->id))) { if (groups_add_member($gid, $user->id)) {
if ($is_guest) { $json_output["enrol"] = true; } else { require_once "{$CFG->dirroot}/enrol/manual/enrol.php"; if (function_exists(enrol_into_course)) { if (enrol_into_course($course, $USER, 'manual')) { unset($USER->mycourses); $json_output["enrol"] = true; } else { $json_output["errors"][] = "Error enrolling student into course."; } } else { // For older versions of Moodle. $timestart = time(); $timeend = $timestart + $course->enrolperiod; if (enrol_student($USER->id, $course->id, $timestart, $timeend, 'manual')) { $json_output["enrol"] = true; unset($USER->mycourses); } else { $json_output["errors"][] = "Error enrolling student into course."; } } } } else { $json_output["errors"][] = "Enrolment key is incorrect."; } } if (isset($_GET['my_courses']) || $update_all) { if (!empty($USER->id)) { // Return my classes. $course_ids = array();
public function enrolStudents($xml, $courseID, $shortname) { //Verify if course exists $found = false; if (!record_exists($this->courses_table, "id", $courseID, "shortname", $shortname)) { // Return ERROR message throw new MoodlePluginException("ERROR, course not found...", 1); } //Create DOMDocument $doc = new DOMDocument(); $doc->loadXML($xml); $students = $doc->documentElement->getElementsByTagName("user"); $count = 0; $this->error[$this->users_table] = array(); //Enrol students foreach ($students as $student) { $usernames = $student->getElementsByTagName("username"); $username = $usernames->item(0)->textContent; $m_ors = $student->getElementsByTagName("moodle_oriented"); $ids = $m_ors->item(0)->getElementsByTagName("id"); $id = $ids->item(0)->textContent; if (record_exists("user", "id", $id, "username", $username)) { if (enrol_student($id, $courseID)) { $count++; } else { array_push($this->error[$this->users_table], $username); } } else { array_push($this->error[$this->users_table], $username); } } //Return count of enrolled students return $count; }
//exit; } /****************************************************************************** * end new Moodle site ******************************************************************************/ /****************************************************************************** * if the Segue user is not the site owner, then enrol them as student * code adapted from: * moodle/course/student.php ******************************************************************************/ if ($segue_user_id != $site_owner_id) { //print "<hr>Adding student to site<br>"; //print "moodle_site_id: ".$moodle_site_id; $addstudent = $moodle_user_id; $timestart = $timeend = 0; if (!enrol_student($addstudent, $moodle_site_id, $timestart, $timeend)) { error("Could not add student with id {$addstudent} to this course!"); } /****************************************************************************** * if new course id and the auth user is the site owner then make that user a teacher * moodle_site_id, moodle_user_id and site_owner_id set above * segue_user_id from request array * code adapted from: * moodle/course/info.php ******************************************************************************/ } else { if ($newcourseid && $segue_user_id == $site_owner_id) { // print "<hr>New Moodle Course created<br>"; // print "newcourseid: ".$newcourseid."<br>"; // print "moodle_user_id: ".$moodle_user_id."<br>"; //need to get the context for the new course
switch ($addtype[$i]) { case 2: // teacher $ret = add_teacher($user->id, $course[$i]->id, 1); break; case 3: // non-editing teacher $ret = add_teacher($user->id, $course[$i]->id, 0); break; default: // student $ret = enrol_student($user->id, $course[$i]->id); break; } } else { $ret = enrol_student($user->id, $course[$i]->id); } } if ($ret) { // OK notify('-->' . get_string('enrolledincourse', '', $addcourse[$i])); } else { notify('-->' . get_string('enrolledincoursenot', '', $addcourse[$i])); } } } for ($i = 0; $i < 5; $i++) { // Add user to groups if necessary if ($course[$i] && $groupid[$i]) { $coursecontext = get_context_instance(CONTEXT_COURSE, $course[$i]->id); if (count(get_user_roles($coursecontext, $user->id))) {