diff --git a/mod/assign/gradingoptionsform.php b/mod/assign/gradingoptionsform.php index 4b60f5daac6..07a7b48f0c8 100644 --- a/mod/assign/gradingoptionsform.php +++ b/mod/assign/gradingoptionsform.php @@ -60,7 +60,8 @@ class mod_assign_grading_options_form extends moodleform { $options = array('' => get_string('filternone', 'assign'), ASSIGN_FILTER_NOT_SUBMITTED => get_string('filternotsubmitted', 'assign'), ASSIGN_FILTER_SUBMITTED => get_string('filtersubmitted', 'assign'), - ASSIGN_FILTER_REQUIRE_GRADING => get_string('filterrequiregrading', 'assign')); + ASSIGN_FILTER_REQUIRE_GRADING => get_string('filterrequiregrading', 'assign'), + ASSIGN_FILTER_GRANTED_EXTENSION => get_string('filtergrantedextension', 'assign')); if ($instance['submissionsenabled']) { $mform->addElement('select', 'filter', get_string('filter', 'assign'), $options, $dirtyclass); } diff --git a/mod/assign/gradingtable.php b/mod/assign/gradingtable.php index 0d605c31606..a8ab25d3f9c 100644 --- a/mod/assign/gradingtable.php +++ b/mod/assign/gradingtable.php @@ -287,6 +287,9 @@ class assign_grading_table extends table_sql implements renderable { $where .= '))'; $params['submitted'] = ASSIGN_SUBMISSION_STATUS_SUBMITTED; + } else if ($filter == ASSIGN_FILTER_GRANTED_EXTENSION) { + $where .= ' AND uf.extensionduedate > 0 '; + } else if (strpos($filter, ASSIGN_FILTER_SINGLE_USER) === 0) { $userfilter = (int) array_pop(explode('=', $filter)); $where .= ' AND (u.id = :userid)'; diff --git a/mod/assign/lang/en/assign.php b/mod/assign/lang/en/assign.php index 893b4d88e4d..8b4ae9e349a 100644 --- a/mod/assign/lang/en/assign.php +++ b/mod/assign/lang/en/assign.php @@ -232,6 +232,7 @@ $string['feedbacksettings'] = 'Feedback settings'; $string['feedbacktypes'] = 'Feedback types'; $string['filesubmissions'] = 'File submissions'; $string['filter'] = 'Filter'; +$string['filtergrantedextension'] = 'Granted extension'; $string['filternone'] = 'No filter'; $string['filternotsubmitted'] = 'Not submitted'; $string['filterrequiregrading'] = 'Requires grading'; diff --git a/mod/assign/locallib.php b/mod/assign/locallib.php index e28217b3fe5..367990e966a 100644 --- a/mod/assign/locallib.php +++ b/mod/assign/locallib.php @@ -37,6 +37,7 @@ define('ASSIGN_FILTER_SUBMITTED', 'submitted'); define('ASSIGN_FILTER_NOT_SUBMITTED', 'notsubmitted'); define('ASSIGN_FILTER_SINGLE_USER', 'singleuser'); define('ASSIGN_FILTER_REQUIRE_GRADING', 'require_grading'); +define('ASSIGN_FILTER_GRANTED_EXTENSION', 'granted_extension'); // Marker filter for grading page. define('ASSIGN_MARKER_FILTER_NO_MARKER', -1);