-
Notifications
You must be signed in to change notification settings - Fork 0
/
renderer.php
executable file
·67 lines (57 loc) · 2.67 KB
/
renderer.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?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/>.
/**
* Renderer for the grade user report
*
* @package gradereport_laeuser
* @copyright 2013 Bob Puffer http://www.clamp-it.org
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Custom renderer for the user grade report
*
* To get an instance of this use the following code:
* $renderer = $PAGE->get_renderer('gradereport_user');
*
* @copyright 2010 Sam Hemelryk
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class gradereport_laeuser_renderer extends plugin_renderer_base {
public function graded_users_selector($report, $course, $userid, $groupid, $includeall) {
global $USER;
$select = grade_get_graded_users_select($report, $course, $userid, $groupid, $includeall);
$output = html_writer::tag('div', $this->output->render($select), array('id'=>'graded_users_selector'));
$output .= html_writer::tag('p', '', array('style'=>'page-break-after: always;'));
return $output;
}
public function target_grades_selector($report, $course, $userid, $context, $maxpercentage, $target_letter) {
global $USER;
if (!$target_letter > 0) {
$target_letter = null;
}
$letters = grade_get_letters($context);
// cycle through letters and remove any that are greater than maxpercentage
foreach ($letters as $key => $value) {
if ($key > $maxpercentage) {
unset($letters[$key]);
}
}
$select = new single_select(new moodle_url('/grade/report/laeuser/index.php', array('id'=>$course->id)), 'target_letter', $letters, $target_letter, array('' => 'No Target'));
$output = html_writer::tag('div', 'Your desired grade... ' . $this->output->render($select) . ' WARNING: The grades listed here may not be the only graded items for this course', array('id'=>'target_grades_selector', 'class' => 'warning'));
$output .= html_writer::tag('p', '', array('style'=>'page-break-after: always;'));
return $output;
}
}