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

This commit is contained in:
Tim Hunt 2012-07-12 18:39:01 +01:00 committed by Aparup Banerjee
parent 8f8e28c0b6
commit 0e708c3476
4 changed files with 8 additions and 6 deletions

View File

@ -76,8 +76,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));
@ -120,7 +121,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;

View File

@ -52,6 +52,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.
@ -103,7 +105,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. ============================================================================

View File

@ -52,8 +52,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));
@ -89,7 +90,6 @@ $PAGE->blocks->add_fake_block($navbc, reset($regions));
$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.
echo $output->summary_page($attemptobj, $displayoptions);

View File

@ -162,7 +162,8 @@ $THEME->layouts = array(
// The pagelayout used for safebrowser and securewindow.
'secure' => array(
'file' => 'general.php',
'regions' => array(),
'regions' => array('side-pre'),
'defaultregion' => 'side-pre',
'options' => array('nofooter'=>true, 'nonavbar'=>true, 'nocustommenu'=>true, 'nologinlinks'=>true),
),
);