$dis = RPIrro::upgradeGroups($dis, array($gr)); $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']];