dirroot . '/course/request_form.php'); /// Where we came from. Used in a number of redirects. $returnurl = $CFG->wwwroot . '/course/index.php'; /// Check permissions. require_login(); if (isguestuser()) { print_error('guestsarenotallowed', '', $returnurl); } if (empty($CFG->enablecourserequests)) { print_error('courserequestdisabled', '', $returnurl); } $systemcontext = get_context_instance(CONTEXT_SYSTEM); require_capability('moodle/course:request', $systemcontext); /// Set up the form. $requestform = new course_request_form($CFG->wwwroot . '/course/request.php'); $strtitle = get_string('courserequest'); /// Standard form processing if statement. if ($requestform->is_cancelled()){ redirect($returnurl); } else if ($data = $requestform->get_data()) { print_header($strtitle, $strtitle, build_navigation($strtitle), $requestform->focus()); print_heading($strtitle); /// Record the request. $data->requester = $USER->id; if (!$DB->insert_record('course_request', $data)) { print_error('errorsavingrequest', '', $returnurl); } /// Notify the admin if required. if ($CFG->courserequestnotify) { if ($user = $user = $DB->get_record('user', array('username' => $CFG->courserequestnotify, 'mnethostid' => $CFG->mnet_localhost_id))) { $eventdata = new object(); $eventdata->modulename = 'moodle'; $eventdata->component = 'course'; $eventdata->name = 'courserequested'; $eventdata->userfrom = $USER; $eventdata->userto = $user; $eventdata->subject = get_string('courserequest'); $a = new object(); $a->link = "$CFG->wwwroot/course/pending.php"; $a->user = fullname($USER); $eventdata->fullmessage = get_string('courserequestnotifyemail', 'admin', $a); $eventdata->fullmessageformat = FORMAT_PLAIN; $eventdata->fullmessagehtml = ''; $eventdata->smallmessage = ''; events_trigger('message_send', $eventdata); } } /// and redirect back to the course listing. notice(get_string('courserequestsuccess'), $returnurl); } /// Show the request form. print_header($strtitle, $strtitle, build_navigation($strtitle), $requestform->focus()); print_heading($strtitle); $requestform->display(); print_footer(); ?>