diff --git a/mod/assign/gradingtable.php b/mod/assign/gradingtable.php index 8e512ae5650..8c845892740 100644 --- a/mod/assign/gradingtable.php +++ b/mod/assign/gradingtable.php @@ -402,8 +402,6 @@ class assign_grading_table extends table_sql implements renderable { foreach ($extrauserfields as $extrafield) { $this->column_class($extrafield, $extrafield); } - // We require at least one unique column for the sort. - $this->sortable(true, 'userid'); $this->no_sorting('recordid'); $this->no_sorting('finalgrade'); $this->no_sorting('userid'); @@ -1368,6 +1366,16 @@ class assign_grading_table extends table_sql implements renderable { has_capability('moodle/grade:viewall', $context); } + /** + * Always return a valid sort - even if the userid column is missing. + * @return array column name => SORT_... constant. + */ + public function get_sort_columns() { + $result = parent::get_sort_columns(); + $result = array_merge($result, array('userid' => SORT_ASC)); + return $result; + } + /** * Override the table show_hide_link to not show for select column. *