MDL-34257 quiz 'secure' mode: PAGE initialisation order issues.

This commit is contained in:
Tim Hunt
2012-09-27 12:35:07 +01:00
parent c5575c63b8
commit e65f54f289
3 changed files with 6 additions and 5 deletions
+2 -2
View File
@@ -75,8 +75,9 @@ if ($attemptobj->is_finished()) {
// Check the access rules.
$accessmanager = $attemptobj->get_access_manager(time());
$messages = $accessmanager->prevent_access();
$accessmanager->setup_attempt_page($PAGE);
$output = $PAGE->get_renderer('mod_quiz');
$messages = $accessmanager->prevent_access();
if (!$attemptobj->is_preview_user() && $messages) {
print_error('attempterror', 'quiz', $attemptobj->view_url(),
$output->access_messages($messages));
@@ -110,7 +111,6 @@ $title = get_string('attempt', 'quiz', $attemptobj->get_attempt_number());
$headtags = $attemptobj->get_html_head_contributions($page);
$PAGE->set_title(format_string($attemptobj->get_quiz_name()));
$PAGE->set_heading($attemptobj->get_course()->fullname);
$accessmanager->setup_attempt_page($PAGE);
if ($attemptobj->is_last_page($page)) {
$nextpage = -1;
+2 -1
View File
@@ -53,6 +53,8 @@ $attemptobj->check_review_capability();
// Create an object to manage all the other (non-roles) access rules.
$accessmanager = $attemptobj->get_access_manager(time());
$accessmanager->setup_attempt_page($PAGE);
$options = $attemptobj->get_display_options(true);
// Check permissions.
@@ -104,7 +106,6 @@ if ($attemptobj->is_preview_user() && $attemptobj->is_own_attempt()) {
$headtags = $attemptobj->get_html_head_contributions($page, $showall);
$PAGE->set_title(format_string($attemptobj->get_quiz_name()));
$PAGE->set_heading($attemptobj->get_course()->fullname);
$accessmanager->setup_attempt_page($PAGE);
// Summary table start ============================================================================
+2 -2
View File
@@ -57,8 +57,9 @@ if ($attemptobj->is_preview_user()) {
// Check access.
$accessmanager = $attemptobj->get_access_manager(time());
$messages = $accessmanager->prevent_access();
$accessmanager->setup_attempt_page($PAGE);
$output = $PAGE->get_renderer('mod_quiz');
$messages = $accessmanager->prevent_access();
if (!$attemptobj->is_preview_user() && $messages) {
print_error('attempterror', 'quiz', $attemptobj->view_url(),
$output->access_messages($messages));
@@ -86,7 +87,6 @@ $PAGE->blocks->add_fake_block($navbc, $firstregion);
$PAGE->navbar->add(get_string('summaryofattempt', 'quiz'));
$PAGE->set_title(format_string($attemptobj->get_quiz_name()));
$PAGE->set_heading($attemptobj->get_course()->fullname);
$accessmanager->setup_attempt_page($PAGE);
// Display the page.