MDL-38412 fix quiz reports group mode weirdness.

Moodle currently selected group uses the session. This can cause weird
effects when you have two tabs open. This is particularly weird in the
quiz reports, where some actions like delete attempt are checked against
the currently selected group.

The solution is to put the currently selected group into the URL for all
actions like delete/regrade attempt, regrade all attempts, download and
sort table.
This commit is contained in:
Tim Hunt
2013-03-15 12:02:11 +00:00
parent 01d6191b81
commit d1fa204c0f
3 changed files with 7 additions and 3 deletions
+5 -1
View File
@@ -113,12 +113,16 @@ class mod_quiz_attempts_report_options {
* @return array URL parameter name => value.
*/
protected function get_url_params() {
return array(
$params = array(
'id' => $this->cm->id,
'mode' => $this->mode,
'attempts' => $this->attempts,
'onlygraded' => $this->onlygraded,
);
if (groups_get_activity_groupmode($this->cm, $this->course)) {
$params['group'] = $this->group;
}
return $params;
}
/**
+1 -1
View File
@@ -69,7 +69,7 @@ class quiz_overview_report extends quiz_attempts_report {
$courseshortname = format_string($course->shortname, true,
array('context' => context_course::instance($course->id)));
$table = new quiz_overview_table($quiz, $this->context, $this->qmsubselect,
$options, $groupstudents, $students, $questions, $this->get_base_url());
$options, $groupstudents, $students, $questions, $options->get_url());
$filename = quiz_report_download_filename(get_string('overviewfilename', 'quiz_overview'),
$courseshortname, $quiz->name);
$table->is_downloading($options->download, $filename,
+1 -1
View File
@@ -77,7 +77,7 @@ class quiz_responses_report extends quiz_attempts_report {
$courseshortname = format_string($course->shortname, true,
array('context' => context_course::instance($course->id)));
$table = new quiz_responses_table($quiz, $this->context, $this->qmsubselect,
$options, $groupstudents, $students, $questions, $this->get_base_url());
$options, $groupstudents, $students, $questions, $options->get_url());
$filename = quiz_report_download_filename(get_string('responsesfilename', 'quiz_responses'),
$courseshortname, $quiz->name);
$table->is_downloading($options->download, $filename,