MDL-79056 gradereport_user: Make column heading IDs unique
Associate column headings of user report tables to the user ID that the report is being generated for. This will prevent duplicate IDs for the report columns when multiple user report tables are displayed on the User report page.
This commit is contained in:
@@ -445,7 +445,7 @@ class user extends grade_report {
|
||||
$depth = $element['depth'];
|
||||
$gradeobject = $element['object'];
|
||||
$eid = $gradeobject->id;
|
||||
$element['userid'] = $this->user->id;
|
||||
$element['userid'] = $userid = $this->user->id;
|
||||
$fullname = $this->gtree->get_element_header($element, true, false, true, true, true);
|
||||
$data = [];
|
||||
$gradeitemdata = [];
|
||||
@@ -587,7 +587,7 @@ class user extends grade_report {
|
||||
if ($this->showweight) {
|
||||
$data['weight']['class'] = $class;
|
||||
$data['weight']['content'] = '-';
|
||||
$data['weight']['headers'] = "$headercat $headerrow weight";
|
||||
$data['weight']['headers'] = "$headercat $headerrow weight$userid";
|
||||
// Has a weight assigned, might be extra credit.
|
||||
|
||||
// This obliterates the weight because it provides a more informative description.
|
||||
@@ -674,7 +674,7 @@ class user extends grade_report {
|
||||
$gradegrade->grade_item, true);
|
||||
$gradeitemdata['graderaw'] = $gradeval;
|
||||
}
|
||||
$data['grade']['headers'] = "$headercat $headerrow grade";
|
||||
$data['grade']['headers'] = "$headercat $headerrow grade$userid";
|
||||
$gradeitemdata['gradeformatted'] = $data['grade']['content'];
|
||||
}
|
||||
|
||||
@@ -685,7 +685,7 @@ class user extends grade_report {
|
||||
GRADE_DISPLAY_TYPE_REAL,
|
||||
$this->rangedecimals
|
||||
);
|
||||
$data['range']['headers'] = "$headercat $headerrow range";
|
||||
$data['range']['headers'] = "$headercat $headerrow range$userid";
|
||||
|
||||
$gradeitemdata['rangeformatted'] = $data['range']['content'];
|
||||
$gradeitemdata['grademin'] = $gradegrade->grade_item->grademin;
|
||||
@@ -717,7 +717,7 @@ class user extends grade_report {
|
||||
GRADE_DISPLAY_TYPE_PERCENTAGE
|
||||
);
|
||||
}
|
||||
$data['percentage']['headers'] = "$headercat $headerrow percentage";
|
||||
$data['percentage']['headers'] = "$headercat $headerrow percentage$userid";
|
||||
$gradeitemdata['percentageformatted'] = $data['percentage']['content'];
|
||||
}
|
||||
|
||||
@@ -747,7 +747,7 @@ class user extends grade_report {
|
||||
GRADE_DISPLAY_TYPE_LETTER
|
||||
);
|
||||
}
|
||||
$data['lettergrade']['headers'] = "$headercat $headerrow lettergrade";
|
||||
$data['lettergrade']['headers'] = "$headercat $headerrow lettergrade$userid";
|
||||
$gradeitemdata['lettergradeformatted'] = $data['lettergrade']['content'];
|
||||
}
|
||||
|
||||
@@ -781,7 +781,7 @@ class user extends grade_report {
|
||||
$gradeitemdata['rank'] = $rank;
|
||||
$gradeitemdata['numusers'] = $numusers;
|
||||
}
|
||||
$data['rank']['headers'] = "$headercat $headerrow rank";
|
||||
$data['rank']['headers'] = "$headercat $headerrow rank$userid";
|
||||
}
|
||||
|
||||
// Average.
|
||||
@@ -795,7 +795,7 @@ class user extends grade_report {
|
||||
} else {
|
||||
$data['average']['content'] = '-';
|
||||
}
|
||||
$data['average']['headers'] = "$headercat $headerrow average";
|
||||
$data['average']['headers'] = "$headercat $headerrow average$userid";
|
||||
}
|
||||
|
||||
// Feedback.
|
||||
@@ -829,13 +829,13 @@ class user extends grade_report {
|
||||
['context' => $gradegrade->get_context()]);
|
||||
$gradeitemdata['feedback'] = $gradegrade->feedback;
|
||||
}
|
||||
$data['feedback']['headers'] = "$headercat $headerrow feedback";
|
||||
$data['feedback']['headers'] = "$headercat $headerrow feedback$userid";
|
||||
}
|
||||
// Contribution to the course total column.
|
||||
if ($this->showcontributiontocoursetotal) {
|
||||
$data['contributiontocoursetotal']['class'] = $class;
|
||||
$data['contributiontocoursetotal']['content'] = '-';
|
||||
$data['contributiontocoursetotal']['headers'] = "$headercat $headerrow contributiontocoursetotal";
|
||||
$data['contributiontocoursetotal']['headers'] = "$headercat $headerrow contributiontocoursetotal$userid";
|
||||
|
||||
}
|
||||
$this->gradeitemsdata[] = $gradeitemdata;
|
||||
@@ -1017,9 +1017,10 @@ class user extends grade_report {
|
||||
];
|
||||
|
||||
// Set the table headings.
|
||||
$userid = $this->user->id;
|
||||
foreach ($this->tableheaders as $index => $heading) {
|
||||
$headingcell = new \html_table_cell($heading);
|
||||
$headingcell->attributes['id'] = $this->tablecolumns[$index];
|
||||
$headingcell->attributes['id'] = $this->tablecolumns[$index] . $userid;
|
||||
$headingcell->attributes['class'] = "header column-{$this->tablecolumns[$index]}";
|
||||
if ($index == 0) {
|
||||
$headingcell->colspan = $this->maxdepth;
|
||||
|
||||
Reference in New Issue
Block a user