} if (!($course = $DB->get_record("course", array("id" => $questionnaire->course)))) { print_error('coursemisconf'); } if (!($cm = get_coursemodule_from_instance("questionnaire", $questionnaire->id, $course->id))) { print_error('invalidcoursemodule'); } // Check login and get context. require_login($courseid); $questionnaire = new questionnaire(0, $questionnaire, $course, $cm); // If you can't view the questionnaire, or can't view a specified response, error out. if (!($questionnaire->capabilities->view && ($rid == 0 || $questionnaire->can_view_response($rid)))) { // Should never happen, unless called directly by a snoop... print_error('nopermissions', 'moodle', $CFG->wwwroot . '/mod/questionnaire/view.php?id=' . $cm->id); } $blankquestionnaire = true; if ($rid != 0) { $blankquestionnaire = false; } $url = new moodle_url($CFG->wwwroot . '/mod/questionnaire/print.php'); $url->param('qid', $qid); $url->param('rid', $rid); $url->param('courseid', $courseid); $url->param('sec', $sec); $PAGE->set_url($url); $PAGE->set_title($questionnaire->survey->title); $PAGE->set_pagelayout('popup'); echo $OUTPUT->header(); $questionnaire->survey_print_render($message = '', $referer = 'print', $courseid, $rid, $blankquestionnaire); echo $OUTPUT->close_window_button(); echo $OUTPUT->footer();
$canpreview = !isset($questionnaire->capabilities) && has_capability('mod/questionnaire:manage', get_context_instance(CONTEXT_COURSE, $course->id)) || isset($questionnaire->capabilities) && $questionnaire->capabilities->editquestions && $owner; if (!$canpreview) { /// Should never happen, unless called directly by a snoop... print_error('nopermissions', 'questionnaire', $CFG->wwwroot . '/mod/questionnaire/view.php?id=' . $cm->id); } $SESSION->questionnaire->current_tab = 'preview'; $qp = get_string('preview_questionnaire', 'questionnaire'); $pq = get_string('previewing', 'questionnaire'); $currentcss = ''; if (!empty($questionnaire->survey->theme)) { $currentcss = '<link rel="stylesheet" type="text/css" href="' . $CFG->wwwroot . '/mod/questionnaire/css/' . $questionnaire->survey->theme . '" />'; } else { $currentcss = '<link rel="stylesheet" type="text/css" href="' . $CFG->wwwroot . '/mod/questionnaire/css/default.css" />'; } /// Print the page header if (!$popup) { $navigation = build_navigation($pq, $cm); } else { $navigation = ''; } print_header($qp, '', $navigation, '', $currentcss); if (!$popup) { include 'tabs.php'; } $questionnaire->survey_print_render('', '', $course->id); if ($popup) { close_window_button(); echo '</body></html>'; } else { print_footer($course); }
} // Include the needed js. $PAGE->requires->js('/mod/questionnaire/module.js'); // Print the tabs. echo $OUTPUT->header(); if (!$popup) { require 'tabs.php'; } echo $OUTPUT->heading($pq); if ($questionnaire->capabilities->printblank) { // Open print friendly as popup window. $linkname = ' ' . get_string('printblank', 'questionnaire'); $title = get_string('printblanktooltip', 'questionnaire'); $url = '/mod/questionnaire/print.php?qid=' . $questionnaire->id . '&rid=0&' . 'courseid=' . $questionnaire->course->id . '&sec=1'; $options = array('menubar' => true, 'location' => false, 'scrollbars' => true, 'resizable' => true, 'height' => 600, 'width' => 800, 'title' => $title); $name = 'popup'; $link = new moodle_url($url); $action = new popup_action('click', $link, $name, $options); $class = "floatprinticon"; echo $OUTPUT->action_link($link, $linkname, $action, array('class' => $class, 'title' => $title), new pix_icon('t/print', $title)); } $questionnaire->survey_print_render('', 'preview', $course->id, $rid = 0, $popup); if ($popup) { echo $OUTPUT->close_window_button(); } echo $OUTPUT->footer($course); // Log this questionnaire preview. $context = context_module::instance($questionnaire->cm->id); $anonymous = $questionnaire->respondenttype == 'anonymous'; $event = \mod_questionnaire\event\questionnaire_previewed::create(array('objectid' => $questionnaire->id, 'anonymous' => $anonymous, 'context' => $context)); $event->trigger();
if (!($cm = get_coursemodule_from_instance("questionnaire", $questionnaire->id, $course->id))) { print_error('invalidcoursemodule'); } // Check login and get context. require_login($courseid); $questionnaire = new questionnaire(0, $questionnaire, $course, $cm); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\previewpage()); // If you can't view the questionnaire, or can't view a specified response, error out. if (!($questionnaire->capabilities->view && ($rid == 0 || $questionnaire->can_view_response($rid)))) { // Should never happen, unless called directly by a snoop... print_error('nopermissions', 'moodle', $CFG->wwwroot . '/mod/questionnaire/view.php?id=' . $cm->id); } $blankquestionnaire = true; if ($rid != 0) { $blankquestionnaire = false; } $url = new moodle_url($CFG->wwwroot . '/mod/questionnaire/print.php'); $url->param('qid', $qid); $url->param('rid', $rid); $url->param('courseid', $courseid); $url->param('sec', $sec); $PAGE->set_url($url); $PAGE->set_title($questionnaire->survey->title); $PAGE->set_pagelayout('popup'); echo $questionnaire->renderer->header(); $questionnaire->page->add_to_page('closebutton', $questionnaire->renderer->close_window_button()); $questionnaire->survey_print_render('', 'print', $courseid, $rid, $blankquestionnaire); echo $questionnaire->renderer->render($questionnaire->page); echo $questionnaire->renderer->footer();