Parent Directory
|
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 |