Merge branch 'MDL-59169-master' of https://github.com/nwp90/moodle

This commit is contained in:
Andrew Nicols 2018-08-27 09:43:30 +08:00
commit 16159f2223
7 changed files with 127 additions and 18 deletions

View file

@ -65,7 +65,14 @@ require_capability('gradereport/grader:view', $context);
require_capability('moodle/grade:viewall', $context);
// return tracking object
$gpr = new grade_plugin_return(array('type'=>'report', 'plugin'=>'grader', 'courseid'=>$courseid, 'page'=>$page));
$gpr = new grade_plugin_return(
array(
'type' => 'report',
'plugin' => 'grader',
'course' => $course,
'page' => $page
)
);
// last selected report session tracking
if (!isset($USER->grade_last_report)) {
@ -187,6 +194,7 @@ if ($USER->gradeediting[$course->id] && ($report->get_pref('showquickfeedback')
echo '<input type="hidden" value="'.time().'" name="timepageload" />';
echo '<input type="hidden" value="grader" name="report"/>';
echo '<input type="hidden" value="'.$page.'" name="page"/>';
echo $gpr->get_form_fields();
echo $reporthtml;
echo '<div class="submit"><input type="submit" id="gradersubmit" class="btn btn-primary"
value="'.s(get_string('savechanges')).'" /></div>';

View file

@ -366,13 +366,16 @@ abstract class grade_report {
protected function setup_groups() {
// find out current groups mode
if ($this->groupmode = groups_get_course_groupmode($this->course)) {
$this->currentgroup = groups_get_course_group($this->course, true);
if (empty($this->gpr->groupid)) {
$this->currentgroup = groups_get_course_group($this->course, true);
} else {
$this->currentgroup = $this->gpr->groupid;
}
$this->group_selector = groups_print_course_menu($this->course, $this->pbarurl, true);
if ($this->groupmode == SEPARATEGROUPS and !$this->currentgroup and !has_capability('moodle/site:accessallgroups', $this->context)) {
$this->currentgroup = -2; // means can not access any groups at all
}
if ($this->currentgroup) {
$group = groups_get_group($this->currentgroup);
$this->currentgroupname = $group->name;

View file

@ -93,7 +93,7 @@ grade_regrade_final_grades_if_required($course);
if (has_capability('moodle/grade:viewall', $context) && $courseid != SITEID) {
// Please note this would be extremely slow if we wanted to implement this properly for all teachers.
$groupmode = groups_get_course_groupmode($course); // Groups are being used
$currentgroup = groups_get_course_group($course, true);
$currentgroup = $gpr->groupid;
if (!$currentgroup) { // To make some other functions work better later
$currentgroup = NULL;

View file

@ -286,7 +286,7 @@ class grade_report_overview extends grade_report {
'user' => $this->user->id)), $coursename);
} else {
$courselink = html_writer::link(new moodle_url('/grade/report/user/index.php', array('id' => $course->id,
'userid' => $this->user->id)), $coursename);
'userid' => $this->user->id, 'group' => $this->gpr->groupid)), $coursename);
}
$data = array($courselink, grade_format_gradevalue($finalgrade, $courseitem, true));

View file

@ -91,7 +91,7 @@ grade_regrade_final_grades_if_required($course);
if (has_capability('moodle/grade:viewall', $context)) { //Teachers will see all student reports
$groupmode = groups_get_course_groupmode($course); // Groups are being used
$currentgroup = groups_get_course_group($course, true);
$currentgroup = $gpr->groupid;
if (!$currentgroup) { // To make some other functions work better later
$currentgroup = NULL;