MDL-66079 assign: Switch to new gradeitem API
authorAndrew Nicols <andrew@nicols.co.uk>
Fri, 20 Sep 2019 07:07:48 +0000 (15:07 +0800)
committerMathew May <mathewm@hotmail.co.nz>
Wed, 30 Oct 2019 02:23:40 +0000 (10:23 +0800)
Part of MDL-66074

mod/assign/classes/grades/gradeitems.php [new file with mode: 0644]
mod/assign/lang/en/assign.php
mod/assign/lib.php

diff --git a/mod/assign/classes/grades/gradeitems.php b/mod/assign/classes/grades/gradeitems.php
new file mode 100644 (file)
index 0000000..5a9ffed
--- /dev/null
@@ -0,0 +1,62 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Grade item mappings for the activity.
+ *
+ * @package   mod_assign
+ * @copyright Andrew Nicols <andrew@nicols.co.uk>
+ * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+declare(strict_types = 1);
+
+namespace mod_assign\grades;
+
+use \core_grades\local\gradeitem\itemnumber_mapping;
+use \core_grades\local\gradeitem\advancedgrading_mapping;
+
+/**
+ * Grade item mappings for the activity.
+ *
+ * @package   mod_assign
+ * @copyright Andrew Nicols <andrew@nicols.co.uk>
+ * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class gradeitems implements itemnumber_mapping, advancedgrading_mapping {
+
+    /**
+     * Return the list of grade item mappings for the assign.
+     *
+     * @return array
+     */
+    public static function get_itemname_mapping_for_component(): array {
+        return [
+            0 => 'submissions',
+        ];
+    }
+
+    /**
+     * Get the list of advanced grading item names for this component.
+     *
+     * @return array
+     */
+    public static function get_advancedgrading_itemnames(): array {
+        return [
+            'submissions',
+        ];
+    }
+}
index 0c1836c..592d50b 100644 (file)
@@ -212,6 +212,7 @@ $string['fixrescalednullgrades'] = 'This assignment contains some erroneous grad
 $string['fixrescalednullgradesconfirm'] = 'Are you sure you want to fix erroneous grades? All affected grades will be removed. This may affect course totals.';
 $string['fixrescalednullgradesdone'] = 'Grades fixed.';
 $string['gradecanbechanged'] = 'Grade can be changed';
+$string['gradeitem:submissions'] = 'Submissions';
 $string['gradersubmissionupdatedtext'] = '{$a->username} has updated their assignment submission
 for \'{$a->assignment}\' at {$a->timeupdated}
 
@@ -528,7 +529,6 @@ $string['submissionreceipthtml'] = '<p>You have submitted an assignment submissi
 $string['submissionreceiptsmall'] = 'You have submitted your assignment submission for {$a->assignment}';
 $string['submissionslocked'] = 'This assignment is not accepting submissions';
 $string['submissionslockedshort'] = 'Submission changes not allowed';
-$string['submissions'] = 'Submissions';
 $string['submissionsclosed'] = 'Submissions closed';
 $string['submissionsettings'] = 'Submission settings';
 $string['submissionstatement'] = 'Submission statement';
index af12729..b6b81d3 100644 (file)
@@ -394,16 +394,6 @@ function assign_supports($feature) {
     }
 }
 
-/**
- * Lists all gradable areas for the advanced grading methods gramework
- *
- * @return array('string'=>'string') An array with area names as keys and descriptions as values
- */
-function assign_grading_areas_list() {
-    return array('submissions'=>get_string('submissions', 'assign'));
-}
-
-
 /**
  * extend an assigment navigation settings
  *