. /** * Create new outage. * * @package auth_outage * @author Daniel Thee Roperto * @copyright Catalyst IT * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ use \auth_outage\outage; use \auth_outage\outageutils; use \auth_outage\outagedb; use \auth_outage\outageform; require_once('../../config.php'); require_once($CFG->libdir . '/adminlib.php'); require_once($CFG->libdir . '/formslib.php'); outageutils::pagesetup(); $mform = new outageform(); if ($mform->is_cancelled()) { redirect('/auth/outage/list.php'); } else if ($fromform = $mform->get_data()) { $fromform = outageutils::parseformdata($fromform); $outage = new outage($fromform); $id = outagedb::get()->save($outage); redirect('/auth/outage/list.php#auth_outage_id=' . $id); } $id = required_param('id', PARAM_INT); $outage = outagedb::get()->getbyid($id); if ($outage == null) { throw new invalid_parameter_exception('Outage #' . $id . ' not found.'); } $data = get_object_vars($outage); $data['description'] = ['text' => $data['description'], 'format' => '1']; $mform->set_data($data); echo $OUTPUT->header(); $mform->display(); echo $OUTPUT->footer();