[moodle] / contrib / plugins / grade / report / visual / visualizations / visual_grades_vs_students.php Repository:

Annotation of /contrib/plugins/grade/report/visual/visualizations/visual_grades_vs_students.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (view) (download)

1 : dservos 1.1 <?php
2 :     require_once $CFG->dirroot . '/grade/report/visual/visualizations/visualization.php';
3 :    
4 :     class grades_vs_students extends visualization {
5 :    
6 :     public $colorencoder;
7 :    
8 :     public $shapeencoder;
9 :    
10 :     public $grouplegend;
11 :    
12 :     public $itemlegend;
13 :    
14 :    
15 :     public function __construct() {
16 :     parent::__construct(get_string('gradesvsstudents', 'gradereport_visual'));
17 :    
18 :     $this->layout = visualization::LAYOUT_AXIS;
19 :     $this->layoutsettings = null;
20 :    
21 :     $this->xaxis = 'student';
22 :     $this->yaxis = 'grade';
23 :    
24 :     $this->xaxislabel = get_string('student', 'gradereport_visual');
25 :     $this->yaxislabel = get_string('grade', 'gradereport_visual');
26 :     $this->title = get_string('gradesvsstudents:title', 'gradereport_visual');
27 :    
28 :     $this->capabilities = null;
29 :    
30 :     $this->colorencoder = new encoder(encoder::ENCODER_COLOR, 'item');
31 :     $this->shapeencoder = new encoder(encoder::ENCODER_SHAPE, 'group');
32 :     $this->encoders = array($this->colorencoder, $this->shapeencoder);
33 :    
34 :     $this->grouplegend = new legend($this->shapeencoder);
35 :     $this->itemlegend = new legend($this->colorencoder);
36 :     $this->legends = array($this->itemlegend, $this->grouplegend);
37 :     }
38 :    
39 :    
40 :     public function report_data($visualreport) {
41 :     $data = array();
42 :     $data['header'] = array();
43 :     $data['header']['student'] = 'student';
44 :     $data['header']['grade'] = 'grade';
45 :     $data['header']['item'] = 'item';
46 :     $data['header']['group'] = 'group';
47 :    
48 :     foreach($visualreport->grades as $itemkey=>$itemgrades) {
49 :     foreach($itemgrades as $studentkey=>$studentdata) {
50 :     if($studentdata != null && $studentdata->finalgrade != null) {
51 :     foreach(groups_get_user_groups($visualreport->courseid, $studentkey) as $grouping) {
52 :     if(count($grouping) > 0) {
53 :     foreach($grouping as $group) {
54 :     $data[$studentkey . '-' . $itemkey . '-' . $group]['student'] = $visualreport->users[$studentkey]->firstname . ' ' . $visualreport->users[$studentkey]->lastname;
55 :     $data[$studentkey . '-' . $itemkey . '-' . $group]['grade'] = $studentdata->standardise_score($studentdata->finalgrade, $visualreport->gtree->items[$itemkey]->grademin, $visualreport->gtree->items[$itemkey]->grademax, 0, 100);
56 :     $data[$studentkey . '-' . $itemkey . '-' . $group]['item'] = $visualreport->gtree->items[$itemkey]->get_name();
57 :     $data[$studentkey . '-' . $itemkey . '-' . $group]['group'] = groups_get_group_name($group);
58 :     }
59 :     } else {
60 :     $data[$studentkey . '-' . $itemkey . '-ng' ]['student'] = $visualreport->users[$studentkey]->firstname . ' ' . $visualreport->users[$studentkey]->lastname;
61 :     $data[$studentkey . '-' . $itemkey . '-ng' ]['grade'] = $studentdata->standardise_score($studentdata->finalgrade, $visualreport->gtree->items[$itemkey]->grademin, $visualreport->gtree->items[$itemkey]->grademax, 0, 100);
62 :     $data[$studentkey . '-' . $itemkey . '-ng' ]['item'] = $visualreport->gtree->items[$itemkey]->get_name();
63 :     $data[$studentkey . '-' . $itemkey . '-ng' ]['group'] = get_string('nogroup', 'gradereport_visual');
64 :     }
65 :     }
66 :     }
67 :     }
68 :     }
69 :    
70 :     return $data;
71 :     }
72 :     }
73 :    
74 :     ?>

Moodle CVS Admin
ViewVC Help
Powered by ViewVC 1.0.7