예제 #1
0
 /**
  * Form validation.
  *
  * @param array $data
  * @param array $files
  * @return void
  */
 public function validation($data, $files)
 {
     global $DB;
     $errors = array();
     // Check course doesn't already exist.
     if (!empty($data['shortname'])) {
         // Check shortname.
         $error = tool_generator_course_backend::check_shortname_available($data['shortname']);
         if ($error) {
             $errors['shortname'] = $error;
         }
     }
     return $errors;
 }
예제 #2
0
    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'];
$fullname = $options['fullname'];
$summary = $options['summary'];
$sizename = $options['size'];
$fixeddataset = $options['fixeddataset'];
$filesizelimit = $options['filesizelimit'];
// Check size.
try {
    $size = tool_generator_course_backend::size_for_name($sizename);
} catch (coding_exception $e) {
    cli_error("Invalid size ({$sizename}). Use --help for help.");
}
// Check shortname.
if ($error = tool_generator_course_backend::check_shortname_available($shortname)) {
    cli_error($error);
}
// Switch to admin user account.
\core\session\manager::set_user(get_admin());
// Do backend code to generate course.
$backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, $filesizelimit, empty($options['quiet']), $fullname, $summary, FORMAT_HTML);
$id = $backend->make();
if (empty($options['quiet'])) {
    echo PHP_EOL . 'Generated course: ' . course_get_url($id) . PHP_EOL;
}