From cd4cb7a7275483dee3a3712aa91bf1af6640aa05 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Mon, 13 Oct 2014 11:46:37 +1300 Subject: [PATCH] MDL-47077 report_participation: fixed pagination in groups --- report/participation/index.php | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/report/participation/index.php b/report/participation/index.php index add80ba4c2c..dac7f9b4ff6 100644 --- a/report/participation/index.php +++ b/report/participation/index.php @@ -36,7 +36,7 @@ $timefrom = optional_param('timefrom', 0, PARAM_INT); // how far back to look. $action = optional_param('action', '', PARAM_ALPHA); $page = optional_param('page', 0, PARAM_INT); // which page to show $perpage = optional_param('perpage', DEFAULT_PAGE_SIZE, PARAM_INT); // how many per page -$currentgroup = optional_param('group', 0, PARAM_INT); // Get the active group. +$currentgroup = optional_param('group', null, PARAM_INT); // Get the active group. $url = new moodle_url('/report/participation/index.php', array('id'=>$id)); if ($roleid !== 0) $url->param('roleid'); @@ -163,8 +163,15 @@ echo ''."\n"; echo html_writer::select($actionoptions,'action',$action,false); echo ''."\n\n"; -$baseurl = $CFG->wwwroot.'/report/participation/index.php?id='.$course->id.'&roleid=' - .$roleid.'&instanceid='.$instanceid.'&timefrom='.$timefrom.'&action='.$action.'&perpage='.$perpage; +$baseurl = new moodle_url('/report/participation/index.php', array( + 'id' => $course->id, + 'roleid' => $roleid, + 'instanceid' => $instanceid, + 'timefrom' => $timefrom, + 'action' => $action, + 'perpage' => $perpage, + 'group' => $currentgroup +)); $select = groups_allgroups_course_menu($course, $baseurl, true, $currentgroup); // User cannot see any group. @@ -328,10 +335,15 @@ if (!empty($instanceid) && !empty($roleid)) { $table->print_html(); if ($perpage == SHOW_ALL_PAGE_SIZE) { - echo '
'.get_string('showperpage', '', DEFAULT_PAGE_SIZE).'
'."\n"; - } - else if ($matchcount > 0 && $perpage < $matchcount) { - echo '
'.get_string('showall', '', $matchcount).'
'."\n"; + $perpageurl = new moodle_url($baseurl, array('perpage' => DEFAULT_PAGE_SIZE)); + echo html_writer::start_div('', array('id' => 'showall')); + echo html_writer::link($perpageurl, get_string('showperpage', '', DEFAULT_PAGE_SIZE)); + echo html_writer::end_div(); + } else if ($matchcount > 0 && $perpage < $matchcount) { + $perpageurl = new moodle_url($baseurl, array('perpage' => SHOW_ALL_PAGE_SIZE)); + echo html_writer::start_div('', array('id' => 'showall')); + echo html_writer::link($perpageurl, get_string('showall', '', $matchcount)); + echo html_writer::end_div(); } echo '
';