Newer
Older
<?php defined('SYSPATH') or die('No direct script access.');
class Controller_Teacher_Rating extends Controller_UserEnvi {
public function action_edit()
{
$id = $this->request->param('id');
// Шапка: модули и подмодули
Антон Шалимов
committed
$discipline = $db->GetMapForDiscipline($this->UserInfo['TeacherID'], $id);
if($discipline->count() == 0)
throw HTTP_Exception::factory (404, "Для дисциплины с ID $id не создана УКД или такой дисциплины не существует!");
$disciplineHandled = array();
$maxRate = 0; $i = 0; $module = 0;
foreach($discipline as $row)
if($row['ModuleID'] != $module)
{
$i++;
$module = $row['ModuleID'];
}
if ($i == 1)
$disciplineHandled['SubjectName'] = $row['SubjectName'];
if(!isset($disciplineHandled[$i]['SubmodulesCount']))
{
$disciplineHandled[$i]['SubmodulesCount'] = 0;
$disciplineHandled[$i]['MaxRate'] = 0;
}
$j = $disciplineHandled[$i]['SubmodulesCount'] += 1;
$disciplineHandled[$i]['MaxRate'] += (int) $row['MaxRate'];
$disciplineHandled[$i]['ModuleTitle'] = $row['ModuleName'];
$disciplineHandled[$i]['ModuleType'] = $row['ModuleType'];
$disciplineHandled[$i][$j]['SubmoduleID'] = $row['SubmoduleID'];
$disciplineHandled[$i][$j]['Title'] = $row['SubModuleName'];
$disciplineHandled[$i][$j]['Description'] = $row['SubmoduleDescription'];
$disciplineHandled[$i][$j]['MaxRate'] = (int) $row['MaxRate'];
$maxRate += $row['MaxRate'];
}
$disciplineHandled['ModulesCount'] = $i;
$disciplineHandled['MaxRate'] = (int) $maxRate;
//echo debug::vars($disciplineHandled);
$twig->headerRate = $disciplineHandled;
// Студенты и баллы
$students = $db->GetStudentsForRating($this->UserInfo['TeacherID'], $id);
$studentsHandled = array();
foreach($students as $row) {
$i++;
$studentsHandled[$i]['StudentID'] = $row['StudentID'];
$studentsHandled[$i]['LastName'] = $row['LastName'];
$studentsHandled[$i]['FirstName'] = $row['FirstName'];
$studentsHandled[$i]['SecondName'] = $row['SecondName'];
$studentsHandled[$i]['Grade'] = $row['Grade'];
if ($row['Degree'] == 'bachelor')
$studentsHandled[$i]['GradeTitle'] = $row['Grade'].' курс';
if ($row['Degree'] == 'specialist')
$studentsHandled[$i]['GradeTitle'] = $row['Grade'].' курс';
if ($row['Grade'] == 'master')
$studentsHandled[$i]['GradeTitle'] = 'Магистратура, '.$row['Grade'].' год';
$studentsHandled[$i]['isAttached'] = $row['isAttached'];
$rate = $db->getMapForStudent($row['StudentID'], $id);
$j = 0;
foreach($rate as $r) {
$j += 1;
$studentsHandled[$i][$j]['SubmoduleID'] = $r['SubmoduleID'];
$studentsHandled[$i][$j]['Rate'] = $r['Rate'];
}
$twig->tableRate = $studentsHandled;