* @package tool_generator * @copyright 2013 David Monllaó * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require __DIR__ . '/../../../config.php'; require_once $CFG->libdir . '/adminlib.php'; require_once $CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/testplan_backend.php'; require_once $CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/make_testplan_form.php'; // Initialise page and check permissions. admin_externalpage_setup('toolgeneratortestplan'); // Start page. echo $OUTPUT->header(); echo $OUTPUT->heading(get_string('maketestplan', 'tool_generator')); // Information message. $context = context_system::instance(); $markdownlink = '[' . tool_generator_testplan_backend::get_repourl() . '](' . tool_generator_testplan_backend::get_repourl() . ')'; echo $OUTPUT->box(format_text(get_string('testplanexplanation', 'tool_generator', $markdownlink), FORMAT_MARKDOWN, array('context' => $context))); // Check debugging is set to DEVELOPER. if (!debugging('', DEBUG_DEVELOPER)) { echo $OUTPUT->notification(get_string('error_notdebugging', 'tool_generator')); echo $OUTPUT->footer(); exit; } // Set up the form. $mform = new tool_generator_make_testplan_form('maketestplan.php'); if ($data = $mform->get_data()) { // Creating both test plan and users files. $testplanfile = tool_generator_testplan_backend::create_testplan_file($data->courseid, $data->size); $usersfile = tool_generator_testplan_backend::create_users_file($data->courseid, $data->updateuserspassword); // Test plan link. $testplanurl = moodle_url::make_pluginfile_url($testplanfile->get_contextid(), $testplanfile->get_component(), $testplanfile->get_filearea(), $testplanfile->get_itemid(), $testplanfile->get_filepath(), $testplanfile->get_filename());
* * @package tool_generator * @copyright 2013 David Monllaó * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ define('CLI_SCRIPT', true); define('NO_OUTPUT_BUFFERING', true); require dirname(__FILE__) . '/../../../../config.php'; require_once $CFG->libdir . '/clilib.php'; require_once $CFG->dirroot . '/' . $CFG->admin . '/tool/generator/classes/testplan_backend.php'; // CLI options. list($options, $unrecognized) = cli_get_params(array('help' => false, 'shortname' => false, 'size' => false, 'bypasscheck' => false, 'updateuserspassword' => false), array('h' => 'help')); $testplansizes = '* ' . implode(PHP_EOL . '* ', tool_generator_testplan_backend::get_size_choices()); // Display help. if (!empty($options['help']) || empty($options['shortname']) || empty($options['size'])) { echo get_string('testplanexplanation', 'tool_generator', tool_generator_testplan_backend::get_repourl()) . "Options:\n-h, --help Print out this help\n--shortname Shortname of the test plan's target course (required)\n--size Size of the test plan to create XS, S, M, L, XL, or XXL (required)\n--bypasscheck Bypasses the developer-mode check (be careful!)\n--updateuserspassword Updates the target course users password according to \$CFG->tool_generator_users_password\n\n{$testplansizes}\n\nConsider that, the server resources you will need to run the test plan will be higher as the test plan size is higher.\n\nExample from Moodle root directory:\n\$sudo -u www-data /usr/bin/php admin/tool/generator/cli/maketestplan.php --shortname=\"testcourse_12\" --size=S\n"; // Exit with error unless we're showing this because they asked for it. exit(empty($options['help']) ? 1 : 0); } // Check debugging is set to developer level. if (empty($options['bypasscheck']) && !debugging('', DEBUG_DEVELOPER)) { cli_error(get_string('error_notdebugging', 'tool_generator')); } // Get options. $shortname = $options['shortname']; $sizename = $options['size']; // Check size. try { $size = tool_generator_testplan_backend::size_for_name($sizename); } catch (coding_exception $e) { cli_error("Error: Invalid size ({$sizename}). Use --help for help.");