diff --git a/report/progress/classes/output/renderer.php b/report/progress/classes/output/renderer.php index 09de8d085fc50..19d32fbf2c57d 100644 --- a/report/progress/classes/output/renderer.php +++ b/report/progress/classes/output/renderer.php @@ -47,7 +47,7 @@ public function render_include_activity_select(\moodle_url $url, array $activity ); $activityincludeselect->set_label(get_string('include', 'report_progress')); return \html_writer::div($this->output->render($activityincludeselect), - 'include-activity-selector d-inline-block ml-3' ); + 'include-activity-selector d-inline-block mr-3' ); } /** @@ -69,7 +69,26 @@ public function render_activity_order_select(\moodle_url $url, string $activityo ); $sorttable->set_label(get_string('activityorder', 'report_progress')); return \html_writer::div($this->output->render($sorttable), - 'activity-order-selector include-activity-selector d-inline-block ml-3'); + 'activity-order-selector include-activity-selector d-inline-block'); + } + + /** + * Render groups single select box. + * + * @param \moodle_url $url The base url. + * @param \stdClass $course Current course. + * @return string HTML + */ + public function render_groups_select(\moodle_url $url, \stdClass $course): string { + $groupurl = fullclone($url); + $groupurl->remove_params(['page', 'group']); + $groupoutput = groups_print_course_menu($course, $groupurl, true); + + if (empty($groupoutput)) { + return $groupoutput; + } + + return \html_writer::div($groupoutput, 'd-inline-block mr-3'); } /** diff --git a/report/progress/index.php b/report/progress/index.php index 6a8a12e106963..6456ff2512ad4 100644 --- a/report/progress/index.php +++ b/report/progress/index.php @@ -200,9 +200,7 @@ function csv_quote($value) { $PAGE->requires->js_call_amd('report_progress/completion_override', 'init', [fullname($USER)]); // Handle groups (if enabled). - $groupurl = fullclone($url); - $groupurl->remove_params(['page', 'group']); - groups_print_course_menu($course, $groupurl); + echo $output->render_groups_select($url, $course); // Display include activity filter. echo $output->render_include_activity_select($url, $activitytypes, $activityinclude);