function _unenrollUserFromCourse($user, $course) { $retVal = true; echo "<br> {$username} is now going to be unenrolled from {$course->fullname}."; if (unenrollQSUser($user, $course)) { echo "<br> unenrollQSUser for {$user->username} and {$course->fullname} was successful."; if (enrollUserInCourse($user->username, $user->username, $course->fullname, false)) { echo "<br> enrollUserInCourse for {$user->username} and {$course->fullname} and false was successful."; if (!($context = get_context_instance(CONTEXT_COURSE, $course->id))) { echo "<br> Course context for {$course->fullname} is invalid"; admin_moodlefailed_email($user, 'unenrollUser', $course); $retVal = false; } echo "<br> Course context id is {$context->id}"; if (!role_unassign(0, $user->id, 0, $context->id)) { echo "An error occurred in role_unassign while trying to unenroll {$username} from vLab via auto-delete."; admin_moodlefailed_email($user, 'unenrollUser', $course); $retVal = false; } echo "<br> role_unassign for user id of {$user->id} and context id of {$context->id} was successful."; send_unenrollment_notification($course, $user); add_to_log($course->id, 'course', 'unenrol', "auto-delete", $course->id); } else { enrollQSUser($user, $course); echo "An error occurred in enrollUserInCourse while trying to unenrll {$username} from vLab via auto-delete."; admin_moodlefailed_email($user, 'unenrollUser', $course); $retVal = false; } } else { echo "An error occurred in unenrollQSUser while trying to unenroll {$username} from vLab via auto-delete."; admin_moodlefailed_email($user, 'unenrollUser', $course); $retVal = false; } return $retVal; }
$destination = "{$CFG->wwwroot}/course/view.php?id={$course->id}"; } echo "<br> \$destination is set to {$destination}"; if (!enrollQSUser($user, $course)) { //Added: 12.30.2010 echo "<br> enrollQSUser was NOT successful"; admin_webservicefailed_email($user, 'enrollUser', $course); if (!role_unassign(0, $user->id, 0, $context->id)) { // Should email the Admin if this happens error("An error occurred while trying to unenrol that person."); exit; } //admin_moodlefailed_email($user,'unenrollUser'); } else { echo "<br> enrollQSUser was successful"; if (!enrollUserInCourse($user->username, $user->username, $course->fullname, true)) { echo "<br> enrollUserInCourse was NOT successful"; if (!role_unassign(0, $user->id, 0, $context->id)) { error("An error occurred while trying to unenrol that person."); exit; } echo "<br> role_unassign was successful"; // Should email the Admin if this happens unenrollQSUser($user, $course); admin_webservicefailed_email($user, 'enrollUser', $course); } echo "<br> enrollUserInCourse was successful"; } $payload = file_get_contents($destination); send_enrollment_notification($course, $user); } else {
} send_unenrollment_notification($course, $tmpuser); // Added: 05/08/2012 add_to_log($course->id, 'course', 'unenrol', "view.php?id={$course->id}", $course->id); } else { enrollQSUser($tmpuser, $course); admin_webservicefailed_email($tmpuser, 'unenrollUser', $course); } } else { error("An error occurred while trying to unenroll that person."); } redirect($CFG->wwwroot . '/user/index.php?id=' . $course->id); } else { /// Added: Check value submitted and call calendar ws to unenrol user if (unenrollQSUser($USER, $course)) { if (enrollUserInCourse($USER->username, $USER->username, $course->fullname, false)) { if (!role_unassign(0, $USER->id, 0, $context->id)) { admin_moodlefailed_email($USER, 'unenrollUser', $course); error("An error occurred while trying to unenroll you."); } send_unenrollment_notification($course, $USER); // Added: 05/08/2012 // force a refresh of mycourses unset($USER->mycourses); add_to_log($course->id, 'course', 'unenrol', "view.php?id={$course->id}", $course->id); } else { enrollQSUser($USER, $course); admin_webservicefailed_email($USER, 'unenrollUser', $course); } } else { error("An error occurred while trying to unenroll you.");
function enrollUsersAvailCourses($requestingUser, $username) { $user = get_record('user', 'username', $username); $roles = get_records('role_assignments', 'userid', $user->id, 'timemodified ASC'); foreach ($roles as $role) { $context = get_record('context', 'id', $role->contextid, 'contextlevel', 50); $course = get_record('course', 'id', $context->instanceid); if ($course->id > 1) { enrollUserInCourse($requestingUser, $username, $course->fullname, true); } } }
/** * The other half to print_entry, this checks the form data * * This function checks that the user has completed the task on the * enrolment entry page and then enrolls them. * * @param form the form data submitted, as an object * @param course the current course, as an object */ function check_entry($form, $course) { global $CFG, $USER, $SESSION, $THEME; if (empty($form->password)) { $form->password = ''; } if (empty($course->password)) { // do not allow entry when no course password set // automatic login when manual primary, no login when secondary at all!! error('illegal enrolment attempted'); } $groupid = $this->check_group_entry($course->id, $form->password); if (stripslashes($form->password) == $course->password or $groupid !== false) { if (isguestuser()) { // only real user guest, do not use this for users with guest role $USER->enrolkey[$course->id] = true; add_to_log($course->id, 'course', 'guest', 'view.php?id=' . $course->id, getremoteaddr()); } else { /// Update or add new enrolment if (enrollUserInCourse($USER->username, $USER->username, $course->fullname, true)) { if (enrol_into_course($course, $USER, 'manual')) { // force a refresh of mycourses send_enrollment_notification($course, $USER); // Added: 05/08/2012 unset($USER->mycourses); if ($groupid !== false) { if (!groups_add_member($groupid, $USER->id)) { print_error('couldnotassigngroup'); } } if (!enrollQSUser($USER, $course)) { //Added: 01.06.2011 admin_webservicefailed_email($USER, 'enrollUser', $course); } } else { enrollUserInCourse($USER->username, $USER->username, $course->fullname, false); print_error('couldnotassignrole'); } } else { admin_webservicefailed_email($USER, 'enrollUser', $course); print_error('couldnotassignrole'); } } if ($SESSION->wantsurl) { $destination = $SESSION->wantsurl; unset($SESSION->wantsurl); } else { $destination = "{$CFG->wwwroot}/course/view.php?id={$course->id}"; } redirect($destination); } else { if (!isset($CFG->enrol_manual_showhint) or $CFG->enrol_manual_showhint) { $this->errormsg = get_string('enrolmentkeyhint', '', substr($course->password, 0, 1)); } else { $this->errormsg = get_string('enrolmentkeyerror', 'enrol_manual'); } } }