MDL-41913 tool_generator: Refactoring make_form to make_course_form
Also: - Added a soft password for the newly generated users so we can use them to log in the site when running performance tests. - Added a method to see the courses-users relation from outside course_backend class.
This commit is contained in:
@@ -113,6 +113,15 @@ class tool_generator_course_backend extends tool_generator_backend {
|
||||
parent::__construct($size, $fixeddataset, $progress);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the relation between users and course sizes.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function get_users_per_size() {
|
||||
return self::$paramusers;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of size choices supported by this backend.
|
||||
*
|
||||
@@ -282,6 +291,8 @@ class tool_generator_course_backend extends tool_generator_backend {
|
||||
* @param int $last Number of last user
|
||||
*/
|
||||
private function create_user_accounts($first, $last) {
|
||||
global $CFG;
|
||||
|
||||
$this->log('createaccounts', (object)array('from' => $first, 'to' => $last), true);
|
||||
$count = $last - $first + 1;
|
||||
$done = 0;
|
||||
@@ -296,6 +307,12 @@ class tool_generator_course_backend extends tool_generator_backend {
|
||||
// Create user account.
|
||||
$record = array('firstname' => get_string('firstname', 'tool_generator'),
|
||||
'lastname' => $number, 'username' => $username);
|
||||
|
||||
// We add a user password if it has been specified.
|
||||
if (!empty($CFG->tool_generator_users_password)) {
|
||||
$record['password'] = $CFG->tool_generator_users_password;
|
||||
}
|
||||
|
||||
$user = $this->generator->create_user($record);
|
||||
$this->userids[$number] = (int)$user->id;
|
||||
$this->dot($done, $count);
|
||||
|
||||
+13
-1
@@ -26,8 +26,13 @@ require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/course
|
||||
* @copyright 2013 The Open University
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
class tool_generator_make_form extends moodleform {
|
||||
class tool_generator_make_course_form extends moodleform {
|
||||
|
||||
/**
|
||||
* Course generation tool form definition.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function definition() {
|
||||
$mform = $this->_form;
|
||||
|
||||
@@ -42,6 +47,13 @@ class tool_generator_make_form extends moodleform {
|
||||
$mform->addElement('submit', 'submit', get_string('createcourse', 'tool_generator'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Form validation.
|
||||
*
|
||||
* @param array $data
|
||||
* @param array $files
|
||||
* @return void
|
||||
*/
|
||||
public function validation($data, $files) {
|
||||
global $DB;
|
||||
$errors = array();
|
||||
@@ -31,10 +31,10 @@ require('../../../config.php');
|
||||
|
||||
require_once($CFG->libdir . '/adminlib.php');
|
||||
require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/course_backend.php');
|
||||
require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/make_form.php');
|
||||
require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/make_course_form.php');
|
||||
|
||||
// Initialise page and check permissions.
|
||||
admin_externalpage_setup('toolgenerator');
|
||||
admin_externalpage_setup('toolgeneratorcourse');
|
||||
|
||||
// Start page.
|
||||
echo $OUTPUT->header();
|
||||
@@ -42,7 +42,7 @@ echo $OUTPUT->heading(get_string('maketestcourse', 'tool_generator'));
|
||||
|
||||
// Information message.
|
||||
$context = context_system::instance();
|
||||
echo $OUTPUT->box(format_text(get_string('explanation', 'tool_generator'),
|
||||
echo $OUTPUT->box(format_text(get_string('courseexplanation', 'tool_generator'),
|
||||
FORMAT_MARKDOWN, array('context' => $context)));
|
||||
|
||||
// Check debugging is set to DEVELOPER.
|
||||
@@ -53,7 +53,7 @@ if (!debugging('', DEBUG_DEVELOPER)) {
|
||||
}
|
||||
|
||||
// Set up the form.
|
||||
$mform = new tool_generator_make_form('maketestcourse.php');
|
||||
$mform = new tool_generator_make_course_form('maketestcourse.php');
|
||||
if ($data = $mform->get_data()) {
|
||||
// Do actual work.
|
||||
echo $OUTPUT->heading(get_string('creating', 'tool_generator'));
|
||||
|
||||
Reference in New Issue
Block a user