}
//Взять студентов группы
$st_all = RPIrro::getStudents($gr['id']);
$stud = RPU::reshape($st_all, 'numst', 'name');
//Добавить информацию о выборе студентов
$inTitle = '';
$dis = end(RPIrro::upgradeChoise(array($dis), false, array($gr['id'])));
if ($dis['vdv']) {
    if (empty($dis['numsts'])) {
        RPH::errorPage('Ни один студент не выбрал дисциплину "' . $dis['name'] . '"');
    }
    $inTitle = ' (по выбору)';
}
$dis = end(RPIrro::upgradeGroups(array($dis), array($gr)));
/*Проверка на доступ к журналу*/
$role = RPRole::getRole();
if (stripos($role['sh'], '_pr')) {
    //Если препод - проверяем
    /*берем логин*/
    $teach = RPRole::userID();
    $dis = array($dis);
    $dis = end(RPIrro::upgradePreps($dis, false, true));
    $dis['preps'] = end(RPU::filterBy($dis['preps'][$gr['id']], array('id_tutor' => $teach)));
    if (empty($dis['preps'])) {
        RPH::errorPage('Вы не ведете предмет у этой группы');
    }
}
//Добавить информацию о перезачетах
$dis = RPIrro::upgradeOffset(array($dis), array($gr['id']));
//Берем все КМ для ТУП+Д
$dis = end(RPIrro::getKMS($dis, array($gr['id'])));