Exemple #1
0
$dis = RPIrro::getKMS($dis, array($gr['id']));
$dis = RPU::e($dis);
//Приведение формата чисел к печатному
//Берем баллы студентов для связи ТУП+Д
$ball = RPU::e(RPIrro::getBalls($dis, array($gr['id'])));
//Взять настройки семестра
$set = RPU::getSemSet($sem, false);
//Подсчет МВБ
$dis = RPIrro::upgradeGrades($dis, $ball, RPIrro::getStudents($gr['id']), $set['week']);
$dis = RPIrro::upgradePreps($dis, true, true);
//ИР КМ
$irs_km = RPIrro::getKMIr(RPU::reshape($dis, false, 'id_link'));
foreach ($irs_km as $k => $ir) {
    $ir['link'] = RPUrl::getIrUrl($ir['link']);
    $ir = RPU::label($ir);
    $irs_km[$k] = RPU::cnt($ir);
}
$irs_km = RPU::groupBy($irs_km, 'p');
//Подготовка к печати
$nopreps = array(array('name' => 'Не назначен', 'st' => array()));
//симуляция для случаев, когда преподов нет
foreach ($dis as $i => $d) {
    //Не выводим студенту информацию о других
    $dis[$i]['grades'] = end(RPU::filterBy($d['grades'], array('numst' => $numst)));
    //Кафедра и препод
    $dis[$i]['kaf'] = $kafs[$d['id_dis']]['name'];
    //Опускаем для удобства
    $dis[$i]['kms'] = $d['kms'][$gr['id']];
    $dis[$i]['mvb'] = $d['mvb'][$gr['id']];
    $dis[$i]['mvbi'] = $d['mvbi'][$gr['id']];
    $dis[$i]['preps'] = $d['preps'][$gr['id']] ? $d['preps'][$gr['id']] : $nopreps;