Example #1
0
if ($CFG->version < 2011120100) {
    $context = get_context_instance(CONTEXT_MODULE, $cm->id);
} else {
    $context = context_module::instance($cm->id);
}
$PAGE->set_context($context);
if (!has_capability('mod/realtimequiz:attempt', $context)) {
    realtimequiz_send_error(get_string('notallowedattempt', 'realtimequiz'));
    realtimequiz_end_response();
    die;
}
$status = $realtimequiz->status;
if ($status === false) {
    realtimequiz_send_error(get_string('badquizid', 'realtimequiz') . $quizid);
} else {
    $status = realtimequiz_update_status($quizid, $status);
    // Check if the current status should change due to a timeout
    if ($requesttype == 'quizrunning') {
        if ($status == REALTIMEQUIZ_STATUS_NOTRUNNING || $status == REALTIMEQUIZ_STATUS_FINALRESULTS) {
            // Not running / finished
            realtimequiz_send_not_running();
        } else {
            realtimequiz_send_running();
        }
    } else {
        if ($requesttype == 'startquiz') {
            if (has_capability('mod/realtimequiz:control', $context)) {
                $session = new Object();
                $session->timestamp = time();
                $session->name = optional_param('sessionname', '', PARAM_CLEAN);
                $session->quizid = $quizid;
Example #2
0
}
$questioncount = $DB->count_records('realtimequiz_question', array('quizid' => $realtimequiz->id));
if ($questioncount == 0 && has_capability('mod/realtimequiz:editquestions', $context)) {
    redirect('edit.php?id=' . $id);
}
require_capability('mod/realtimequiz:attempt', $context);
if ($CFG->version > 2014051200) {
    // Moodle 2.7+
    $params = array('context' => $context, 'objectid' => $realtimequiz->id);
    $event = \mod_realtimequiz\event\course_module_viewed::create($params);
    $event->add_record_snapshot('realtimequiz', $realtimequiz);
    $event->trigger();
} else {
    add_to_log($course->id, 'realtimequiz', 'view all', "index.php?id={$course->id}", "");
}
$quizstatus = realtimequiz_update_status($realtimequiz->id, $realtimequiz->status);
/// Print the page header
$strrealtimequizzes = get_string("modulenameplural", "realtimequiz");
$strrealtimequiz = get_string("modulename", "realtimequiz");
$PAGE->set_title(strip_tags($course->shortname . ': ' . $strrealtimequiz . ': ' . format_string($realtimequiz->name, true)));
$PAGE->set_heading($course->fullname);
echo $OUTPUT->header();
echo $OUTPUT->heading(format_string($realtimequiz->name));
realtimequiz_view_tabs('view', $cm->id, $context);
echo format_text($realtimequiz->intro, $realtimequiz->introformat);
/// Print the main part of the page
if ($CFG->version < 2013111800) {
    $tickimg = $OUTPUT->pix_url('i/tick_green_big');
    $crossimg = $OUTPUT->pix_url('i/cross_red_big');
} else {
    $tickimg = $OUTPUT->pix_url('i/grade_correct');