Ejemplo n.º 1
0
<?php 
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
$APPLICATION->AddHeadScript('/libs/js/angular.min.js');
$APPLICATION->AddHeadScript('/libs/js/jquery.floatThead.min.js');
$APPLICATION->AddHeadScript('/libs/js/underscore-min.js');
$APPLICATION->AddHeadScript('/libs/js/jquery.excelExport.js');
$APPLICATION->AddHeadScript('/bitrix/components/rpk/journal/ctrl.js');
$APPLICATION->AddHeadScript('/bitrix/components/rpk/journal/gettableToExcel.js');
global $USER;
if (!RPRole::getPermitOne('journal')) {
    RPH::errorPage("Ошибка доступа");
}
$MsSQL = RPDB::connect();
$link = (int) $_GET['tupd'];
$gr['id'] = (int) $_GET['gr'];
$iup = $_GET['iup'] ? (int) $_GET['iup'] : false;
//Взять информацию о группе
$gr = end(RPIrro::getGroups($gr['id'], 'group', true));
if (empty($gr)) {
    RPH::errorPage('Не найдена информация о группе');
}
//Взять информацию о дисциплине
$dis = end(RPIrro::upDises($link, 'tpd'));
if ($gr['tup_id'] != $dis['pid']) {
    RPH::errorPage('Выбранная группа не изучает эту дисциплину');
}
//Взять студентов группы
$st_all = RPIrro::getStudents($gr['id']);
$stud = RPU::reshape($st_all, 'numst', 'name');
Ejemplo n.º 2
0
<?php

if (!RPRole::getPermitOne('journal_edit')) {
    RPH::errorPage("Ошибка доступа");
}
$myPost = json_decode(file_get_contents('php://input'), true);
$numst = RPU::reshape($myPost, 'numst', 'numst');
$id_km = RPU::reshape($myPost, 'id_km', 'id_km');
$MsSQL = RPDB::connect();
//Получаем существующие баллы в БД для измененных КМ и студентов
$result = $MsSQL->prepare('select * from st_ball where id_km IN (' . RPU::plas($id_km) . ') and numst IN (' . RPU::plas($numst) . ')');
if (!$result->execute(array_merge($id_km, $numst))) {
    throw new Exception("Ошибка получения баллов");
}
$balls = $result->fetchAll(PDO::FETCH_ASSOC);
foreach ($myPost as $val) {
    // Убрано после новости о том, что можно удалять балл
    //if($val['ball']==='') continue;
    if ($val['ball'] === 'н') {
        $val['ball'] = -1;
    }
    $b = RPU::filterBy($balls, array('id_km' => $val['id_km'], 'numst' => $val['numst']));
    if (!empty($b)) {
        if ($b['ball'] === $val['ball']) {
            continue;
        }
        $where = $val;
        unset($where['ball']);
        if ($val['ball'] === '') {
            if (!RPDB::delete('st_ball', $where)) {
                throw new Exception("Ошибка удаления бала");