. /** * Handles loading a htmlcert template. * * @package mod_htmlcert * @copyright 2013 Mark Nelson , 2021 Klaus-Uwe Mitterer * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once('../../config.php'); $tid = required_param('tid', PARAM_INT); $ltid = required_param('ltid', PARAM_INT); // The template to load. $confirm = optional_param('confirm', 0, PARAM_INT); $template = $DB->get_record('htmlcert_templates', array('id' => $tid), '*', MUST_EXIST); $template = new \mod_htmlcert\template($template); $loadtemplate = $DB->get_record('htmlcert_templates', array('id' => $ltid), '*', MUST_EXIST); $loadtemplate = new \mod_htmlcert\template($loadtemplate); if ($cm = $template->get_cm()) { require_login($cm->course, false, $cm); } else { require_login(); } $template->require_manage(); if ($template->get_context()->contextlevel == CONTEXT_MODULE) { $htmlcert = $DB->get_record('htmlcert', ['id' => $cm->instance], '*', MUST_EXIST); $title = $htmlcert->name; $heading = format_string($title); } else { $title = $SITE->fullname; $heading = $title; } // Check that they have confirmed they wish to load the template. if ($confirm && confirm_sesskey()) { // Copy the items across. $loadtemplate->copy_to_template($template->get_id()); // Redirect. $url = new moodle_url('/mod/htmlcert/edit.php', array('tid' => $tid)); redirect($url); } // Create the link options. $nourl = new moodle_url('/mod/htmlcert/edit.php', array('tid' => $tid)); $yesurl = new moodle_url('/mod/htmlcert/load_template.php', array('tid' => $tid, 'ltid' => $ltid, 'confirm' => 1, 'sesskey' => sesskey())); $pageurl = new moodle_url('/mod/htmlcert/load_template.php', array('tid' => $tid, 'ltid' => $ltid)); \mod_htmlcert\page_helper::page_setup($pageurl, $template->get_context(), $title); $str = get_string('edithtmlcert', 'htmlcert'); $link = new moodle_url('/mod/htmlcert/edit.php', array('tid' => $template->get_id())); $PAGE->navbar->add($str, new \action_link($link, $str)); $PAGE->navbar->add(get_string('loadtemplate', 'htmlcert')); // Show a confirmation page. echo $OUTPUT->header(); echo $OUTPUT->heading($heading); echo $OUTPUT->confirm(get_string('loadtemplatemsg', 'htmlcert'), $yesurl, $nourl); echo $OUTPUT->footer();