MDL-75362 gradereport_user: Class movement

This commit is contained in:
Mathew May
2022-10-17 12:00:40 +08:00
parent 3bc792b9b8
commit 8539da6af7
6 changed files with 1142 additions and 1115 deletions
@@ -14,18 +14,22 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External grade report user API
*
* @package gradereport_user
* @copyright 2015 Juan Leyva <juan@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace gradereport_user\external;
use external_api;
use context_course;
use core_user;
use external_description;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use external_warnings;
use moodle_exception;
defined('MOODLE_INTERNAL') || die;
require_once("$CFG->libdir/externallib.php");
require_once($CFG->libdir.'/externallib.php');
/**
* External grade report API implementation
@@ -35,8 +39,7 @@ require_once("$CFG->libdir/externallib.php");
* @category external
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class gradereport_user_external extends external_api {
class user extends external_api {
/**
* Validate access permissions to the report
@@ -153,13 +156,13 @@ class gradereport_user_external extends external_api {
'courseid' => $course->id,
'courseidnumber' => $course->idnumber,
'userid' => $userid)
);
);
$reportdata = array();
// Just one user.
if ($user) {
$report = new grade_report_user($course->id, $gpr, $context, $userid);
$report = new gradereport_user\report\user($course->id, $gpr, $context, $userid);
$report->fill_table();
$gradeuserdata = array(
@@ -187,7 +190,7 @@ class gradereport_user_external extends external_api {
while ($userdata = $gui->next_user()) {
$currentuser = $userdata->user;
$report = new grade_report_user($course->id, $gpr, $context, $currentuser->id);
$report = new gradereport_user\report\user($course->id, $gpr, $context, $currentuser->id);
$report->fill_table();
$gradeuserdata = array(
@@ -367,10 +370,10 @@ class gradereport_user_external extends external_api {
require_once($CFG->dirroot . "/grade/report/user/lib.php");
$params = self::validate_parameters(self::view_grade_report_parameters(),
array(
'courseid' => $courseid,
'userid' => $userid
));
array(
'courseid' => $courseid,
'userid' => $userid
));
$warnings = array();
@@ -402,7 +405,7 @@ class gradereport_user_external extends external_api {
}
// Create a report instance. We don't need the gpr second parameter.
$report = new grade_report_user($course->id, null, $context, $userid);
$report = new gradereport_user\report\user($course->id, null, $context, $userid);
$report->viewed();
$result = array();
File diff suppressed because it is too large Load Diff
+3 -6
View File
@@ -25,27 +25,24 @@
$functions = array(
'gradereport_user_get_grades_table' => array(
'classname' => 'gradereport_user_external',
'classname' => 'gradereport_user\\external\\user',
'methodname' => 'get_grades_table',
'classpath' => 'grade/report/user/externallib.php',
'description' => 'Get the user/s report grades table for a course',
'type' => 'read',
'capabilities' => 'gradereport/user:view',
'services' => array(MOODLE_OFFICIAL_MOBILE_SERVICE),
),
'gradereport_user_view_grade_report' => array(
'classname' => 'gradereport_user_external',
'classname' => 'gradereport_user\\external\\user',
'methodname' => 'view_grade_report',
'classpath' => 'grade/report/user/externallib.php',
'description' => 'Trigger the report view event',
'type' => 'write',
'capabilities' => 'gradereport/user:view',
'services' => array(MOODLE_OFFICIAL_MOBILE_SERVICE),
),
'gradereport_user_get_grade_items' => array(
'classname' => 'gradereport_user_external',
'classname' => 'gradereport_user\\external\\user',
'methodname' => 'get_grade_items',
'classpath' => 'grade/report/user/externallib.php',
'description' => 'Returns the complete list of grade items for users in a course',
'type' => 'read',
'capabilities' => 'gradereport/user:view',
+3 -3
View File
@@ -135,7 +135,7 @@ if (has_capability('moodle/grade:viewall', $context)) { //Teachers will see all
while ($userdata = $gui->next_user()) {
$user = $userdata->user;
$report = new grade_report_user($courseid, $gpr, $context, $user->id, $viewasuser);
$report = new gradereport_user\report\user($courseid, $gpr, $context, $user->id, $viewasuser);
$studentnamelink = html_writer::link(new moodle_url('/user/view.php', array('id' => $report->user->id, 'course' => $courseid)), fullname($report->user));
echo $OUTPUT->heading($studentnamelink);
@@ -147,7 +147,7 @@ if (has_capability('moodle/grade:viewall', $context)) { //Teachers will see all
}
$gui->close();
} else { // Only show one user's report
$report = new grade_report_user($courseid, $gpr, $context, $userid, $viewasuser);
$report = new gradereport_user\report\user($courseid, $gpr, $context, $userid, $viewasuser);
$studentnamelink = html_writer::link(new moodle_url('/user/view.php', array('id' => $report->user->id, 'course' => $courseid)), fullname($report->user));
print_grade_page_head($courseid, 'report', 'user', get_string('pluginname', 'gradereport_user') . ' - ' . $studentnamelink,
@@ -173,7 +173,7 @@ if (has_capability('moodle/grade:viewall', $context)) { //Teachers will see all
} else { //Students will see just their own report
// Create a report instance
$report = new grade_report_user($courseid, $gpr, $context, $userid);
$report = new gradereport_user\report\user($courseid, $gpr, $context, $userid);
// print the page
print_grade_page_head($courseid, 'report', 'user', get_string('pluginname', 'gradereport_user'). ' - '.fullname($report->user));
+1 -1086
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2022041900; // The current plugin version (Date: YYYYMMDDXX).
$plugin->version = 2022041901; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2022041200; // Requires this Moodle version.
$plugin->component = 'gradereport_user'; // Full name of the plugin (used for diagnostics)