Merge branch 'MDL-68070-39_messaging_fix' of https://github.com/beenet-dev/moodle...
[moodle.git] / mod / h5pactivity / grade.php
blobf4b30e4c9554ab13685ec847ac87cf6a0a509368
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
17 /**
18 * Redirect the user to the appropiate submission related page.
20 * @package mod_h5pactivity
21 * @category grade
22 * @copyright 2020 Ferran Recio <ferran@moodle.com>
23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
26 use mod_h5pactivity\local\manager;
28 require(__DIR__.'/../../config.php');
30 // Course module ID.
31 $id = required_param('id', PARAM_INT);
33 // Item number may be != 0 for activities that allow more than one grade per user.
34 $itemnumber = optional_param('itemnumber', 0, PARAM_INT);
36 // Graded user ID (optional).
37 $userid = optional_param('userid', 0, PARAM_INT);
39 list ($course, $cm) = get_course_and_cm_from_cmid($id, 'h5pactivity');
41 require_login($course, true, $cm);
43 $manager = manager::create_from_coursemodule($cm);
45 if (!$manager->can_view_all_attempts() && !$manager->can_view_own_attempts()) {
46 redirect(new moodle_url('/mod/h5pactivity/view.php', ['id' => $id]));
49 $moduleinstance = $manager->get_instance();
51 $params = [
52 'a' => $moduleinstance->id,
53 'userid' => $userid,
56 $scores = $manager->get_users_scaled_score($userid);
57 $score = $scores[$userid] ?? null;
58 if (!empty($score->attemptid)) {
59 $params['attemptid'] = $score->attemptid;
62 redirect(new moodle_url('/mod/h5pactivity/report.php', $params));