1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 17 /** 18 * Test plan form. 19 * 20 * @package tool_generator 21 * @copyright 2013 David MonllaĆ³ 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 defined('MOODLE_INTERNAL') || die(); 26 27 require_once($CFG->libdir . '/formslib.php'); 28 29 /** 30 * Form with options for creating large course. 31 * 32 * @package tool_generator 33 * @copyright 2013 David MonllaĆ³ 34 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 35 */ 36 class tool_generator_make_testplan_form extends moodleform { 37 38 /** 39 * Test plan form definition. 40 * 41 * @return void 42 */ 43 public function definition() { 44 $mform = $this->_form; 45 46 $mform->addElement('select', 'size', get_string('size', 'tool_generator'), 47 tool_generator_testplan_backend::get_size_choices()); 48 $mform->setDefault('size', tool_generator_testplan_backend::DEFAULT_SIZE); 49 50 $mform->addElement('course', 'courseid', get_string('targetcourse', 'tool_generator')); 51 52 $mform->addElement('advcheckbox', 'updateuserspassword', get_string('updateuserspassword', 'tool_generator')); 53 $mform->addHelpButton('updateuserspassword', 'updateuserspassword', 'tool_generator'); 54 55 $mform->addElement('submit', 'submit', get_string('createtestplan', 'tool_generator')); 56 } 57 58 /** 59 * Checks that the submitted data allows us to create a test plan. 60 * 61 * @param array $data 62 * @param array $files 63 * @return array An array of errors 64 */ 65 public function validation($data, $files) { 66 global $CFG; 67 68 $errors = array(); 69 if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { 70 $errors['updateuserspassword'] = get_string('error_nouserspassword', 'tool_generator'); 71 } 72 73 // Better to repeat here the query than to do it afterwards and end up with an exception. 74 if ($courseerrors = tool_generator_testplan_backend::has_selected_course_any_problem($data['courseid'], $data['size'])) { 75 $errors = array_merge($errors, $courseerrors); 76 } 77 78 return $errors; 79 } 80 81 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body