本文整理汇总了PHP中quiz_access_manager::print_messages方法的典型用法代码示例。如果您正苦于以下问题:PHP quiz_access_manager::print_messages方法的具体用法?PHP quiz_access_manager::print_messages怎么用?PHP quiz_access_manager::print_messages使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类quiz_access_manager
的用法示例。
在下文中一共展示了quiz_access_manager::print_messages方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: navmenu
print_header($title, $course->fullname, $navigation, '', '', true, $buttons, navmenu($course, $cm), false, $bodytags);
/// Print heading and tabs (if there is more than one).
$currenttab = 'info';
include 'tabs.php';
/// Print quiz name and description
echo $OUTPUT->heading(format_string($quiz->name));
if (trim(strip_tags($quiz->intro))) {
echo $OUTPUT->box(format_module_intro('quiz', $quiz, $cm->id), 'generalbox', 'intro');
}
/// Display information about this quiz.
$messages = $accessmanager->describe_rules();
if ($quiz->attempts != 1) {
$messages[] = get_string('gradingmethod', 'quiz', quiz_get_grading_option_name($quiz->grademethod));
}
echo $OUTPUT->box_start('quizinfo');
$accessmanager->print_messages($messages);
echo $OUTPUT->box_end();
/// Show number of attempts summary to those who can view reports.
if (has_capability('mod/quiz:viewreports', $context)) {
if ($strattemptnum = quiz_num_attempt_summary($quiz, $cm)) {
echo '<div class="quizattemptcounts"><a href="report.php?mode=overview&id=' . $cm->id . '">' . $strattemptnum . "</a></div>\n";
}
}
/// Guests can't do a quiz, so offer them a choice of logging in or going back.
if (isguestuser()) {
echo $OUTPUT->confirm('<p>' . get_string('guestsno', 'quiz') . "</p>\n\n<p>" . get_string('liketologin') . "</p>\n", get_login_url(), get_referer(false));
echo $OUTPUT->footer();
exit;
}
/// If they are not enrolled in this course in a good enough role, tell them to enrol.
if (!($canattempt || $canpreview || $canreviewmine)) {
示例2: prepareQuizAttempt
function prepareQuizAttempt($q)
{
global $DB;
if ($id) {
if (!($cm = get_coursemodule_from_id('quiz', $id))) {
print_error('invalidcoursemodule');
}
if (!($course = $DB->get_record('course', array('id' => $cm->course)))) {
print_error('coursemisconf');
}
if (!($quiz = $DB->get_record('quiz', array('id' => $cm->instance)))) {
print_error('invalidcoursemodule');
}
} else {
if (!($quiz = $DB->get_record('quiz', array('id' => $q)))) {
print_error('invalidquizid', 'quiz');
}
if (!($course = $DB->get_record('course', array('id' => $quiz->course)))) {
print_error('invalidcourseid');
}
if (!($cm = get_coursemodule_from_instance("quiz", $quiz->id, $course->id))) {
print_error('invalidcoursemodule');
}
}
/// Check login and get context.
require_login($course->id, false, $cm);
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
require_capability('mod/quiz:view', $context);
/// Cache some other capabilites we use several times.
$canattempt = has_capability('mod/quiz:attempt', $context);
$canreviewmine = has_capability('mod/quiz:reviewmyattempts', $context);
$canpreview = has_capability('mod/quiz:preview', $context);
/// Create an object to manage all the other (non-roles) access rules.
$timenow = time();
$accessmanager = new quiz_access_manager(new quiz($quiz, $cm, $course), $timenow, has_capability('mod/quiz:ignoretimelimits', $context, NULL, false));
/// Print information about the student's best score for this quiz if possible.
$moreattempts = $unfinished || !$accessmanager->is_finished($numattempts, $lastfinishedattempt);
/// Determine if we should be showing a start/continue attempt button,
/// or a button to go back to the course page.
print_box_start('quizattempt');
$buttontext = '';
// This will be set something if as start/continue attempt button should appear.
if (!$quiz->questions) {
print_heading(get_string("noquestions", "quiz"));
} else {
if ($unfinished) {
if ($canattempt) {
$buttontext = get_string('continueattemptquiz', 'quiz');
} else {
if ($canpreview) {
$buttontext = get_string('continuepreview', 'quiz');
}
}
} else {
if ($canattempt) {
$messages = $accessmanager->prevent_new_attempt($numattempts, $lastfinishedattempt);
if ($messages) {
$accessmanager->print_messages($messages);
} else {
if ($numattempts == 0) {
$buttontext = get_string('attemptquiznow', 'quiz');
} else {
$buttontext = get_string('reattemptquiz', 'quiz');
}
}
} else {
if ($canpreview) {
$buttontext = get_string('previewquiznow', 'quiz');
}
}
}
// If, so far, we think a button should be printed, so check if they will be allowed to access it.
if ($buttontext) {
if (!$moreattempts) {
$buttontext = '';
} else {
if ($canattempt && ($messages = $accessmanager->prevent_access())) {
$accessmanager->print_messages($messages);
$buttontext = '';
}
}
}
}
/// Now actually print the appropriate button.
if ($buttontext) {
$accessmanager->print_start_attempt_button($canpreview, $buttontext, $unfinished);
} else {
print_continue($CFG->wwwroot . '/course/view.php?id=' . $course->id);
}
print_box_end();
}