3574 lines
154 KiB
PHP
3574 lines
154 KiB
PHP
<?php
|
||
error_reporting(1);
|
||
session_start();
|
||
header('Content-Type: text/html; charset=utf-8');
|
||
date_default_timezone_set('Europe/Moscow');
|
||
include 'inc/_db.php';
|
||
include 'config.php';
|
||
include 'inc/functions.php';
|
||
include 'inc/class_SECUR.php';
|
||
//$cSECUR = new class_SECUR();
|
||
|
||
//file_put_contents('jsonlogupl.log',print_r($_FILES,1),FILE_APPEND);
|
||
//file_put_contents('jsonlogupl.log',print_r($_POST,1),FILE_APPEND);
|
||
if(isset($_POST['ajdes'])){
|
||
$out=array();
|
||
if($_POST['ajdes']=='fk_att_tek_set') {//Выставление эллективные курсы текущей аттестации
|
||
//iduser idgrupp idteacher ocenka propusk
|
||
include_once 'inc/teach.php';
|
||
$out = fk_attest_set($_POST);
|
||
}
|
||
if($_POST['ajdes']=='fk_att_pro_set') {//Выставление эллективные курсы промеж аттестации
|
||
//iduser idgrupp idteacher ocenka propusk
|
||
include_once 'inc/teach.php';
|
||
$out = fk_attest_set($_POST);
|
||
}
|
||
if($_POST['ajdes']=='dekanat_stud_grupp_del') {//Удаление студента из группы
|
||
$id_user = (int)$_POST['id_user'];
|
||
$id_grupp = (int)$_POST['id_grupp'];
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_students WHERE id_user='.$id_user.' AND id_grupp='.$id_grupp.' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
$out['err'] = 0;
|
||
save_logs('Удаление студента №пользователя '.$id_user.' из группы №'.$id_grupp);
|
||
}
|
||
if($_POST['ajdes']=='polls_teachers_manual_del'){//ОПРОС Удаляем добавленных преподавателей
|
||
$id = (int)$_POST['id'];
|
||
$idgrupp = (int)$_POST['idgrupp'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_teacher_evalution WHERE id='.$id.' AND id_grupp='.$idgrupp.' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
$out['err'] = 0;
|
||
save_logs('Оценка дисциплины и преподавателя - удаление пункта №'.$id.' группы №'.$idgrupp.' для опроса');
|
||
}
|
||
if($_POST['ajdes']=='notes_show'){//Подгружаем заметки пользователя
|
||
if(isset($_SESSION['user'])) {
|
||
include_once 'inc/class_NOTE.php';
|
||
$class = new class_NOTE();
|
||
$filter['order'] = ' data_c DESC';
|
||
$filter['limit']['start'] = 0;
|
||
$filter['limit']['step'] = 5;
|
||
$html = $class->itemsHTML($filter);
|
||
$out['err']=0; $out['html'] = $html;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='teacher_ocenki_fakultet_setdatac'){//сохраняем выбранную дату начала периода с которого отображать оценки для зав.каф.в фиксации уч.проц.
|
||
if(isset($_SESSION['user'])){
|
||
$arr = explode('-',trim($_POST['datac']));//2019-12-13
|
||
$data_c1 = mktime(0,0,0,$arr[1],$arr[2],$arr[0]);
|
||
$file = 'tmp/ocenki/dataC_'.$_SESSION['user']['id'];
|
||
file_put_contents($file,$data_c1);
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='pm_set_status'){//ставим статус личного сообщения в прочтенный
|
||
if(isset($_SESSION['user'])){
|
||
$id = (int)$_POST['id'];
|
||
$DB->QUR('UPDATE '.$ST['dbpf'].'_pm SET to_status=2 WHERE to_user='.$_SESSION['user']['id'].' AND id='.$id.' LIMIT 1');
|
||
}
|
||
}
|
||
if ($_POST['ajdes'] == 'read_all'){ //прочитать все сообщения одним скопом
|
||
if(isset($_SESSION['user'])){
|
||
$DB->QUR('UPDATE '.$ST['dbpf'].'_pm SET to_status=2 WHERE to_user='.$_SESSION['user']['id'].' AND to_status=1 ');
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt2_dele_item'){//рейтинг вторая половина дня удаляем
|
||
$id=(int)$_POST['id'];
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejt2_items WHERE id_user='.$_SESSION['user']['id'].' AND id='.$id.' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
$out['err']=1;
|
||
if(!$rez1['err']){
|
||
$out['err']=0;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt2_edit_item'){//рейтинг вторая половина дня берем данные для редактирования
|
||
$id=(int)$_POST['id'];
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejt2_items WHERE id_user='.$_SESSION['user']['id'].' AND id='.$id.' LIMIT 1';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
$out['err']=1;
|
||
if($rez1){
|
||
$out['err']=0;
|
||
$out['id']=$rez1[1]['id'];
|
||
$out['name']=$rez1[1]['name'];
|
||
$out['hour_plan']=$rez1[1]['hour_plan'];
|
||
$out['hour_fakt']=$rez1[1]['hour_fakt'];
|
||
$out['status']=$rez1[1]['status'];
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt2_editi_item'){//рейтинг вторая половина дня редактирвоание записываем в бд
|
||
$id=(int)$_POST['item_id'];
|
||
$name=$_POST['name'];
|
||
$hour_plan=str_replace(',','.',$_POST['hour_plan']); if($hour_plan=='') $hour_plan=0;
|
||
$hour_fakt=str_replace(',','.',$_POST['hour_fakt']); if($hour_fakt=='') $hour_fakt=0;
|
||
$status=(int)$_POST['status']; if($status=='') $status=0;
|
||
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejt2_items SET name="'.addslashes($name).'",hour_plan='.$hour_plan.',hour_fakt='.$hour_fakt.',status='.$status.' WHERE id_user='.$_SESSION['user']['id'].' AND id='.$id.' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
$out['err']=1;
|
||
if(!$rez1['err']){
|
||
$out['err']=0;
|
||
$out['id']=$id;
|
||
$out['name']=$name;
|
||
$out['hour_plan']=$hour_plan;
|
||
$out['hour_fakt']=$hour_fakt;
|
||
$out['status']=$status;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt2_save_item'){//рейтинг вторая половина дня добавляем
|
||
$name=$_POST['name'];
|
||
$hour_plan=str_replace(',','.',$_POST['hour_plan']); if($hour_plan=='') $hour_plan=0;
|
||
$hour_fakt=str_replace(',','.',$_POST['hour_fakt']); if($hour_fakt=='') $hour_fakt=0;
|
||
$status=(int)$_POST['status']; if($status=='') $status=0;
|
||
$id_razdel=0; //пока не нужно но чувствую что потребуется(
|
||
$data_s=0; //пока не нужно но чувствую что потребуется(
|
||
$data_e=0; //пока не нужно но чувствую что потребуется(
|
||
$sql1 = 'INSERT INTO '.$ST['dbpf'].'_rejt2_items VALUES (0,'.$_SESSION['user']['id'].','.$id_razdel.','.time().','.$data_s.','.$data_e.',"'.addslashes($name).'",'.$hour_plan.','.$hour_fakt.',0,'.$status.');';
|
||
$rez1 = $DB->QUR($sql1);
|
||
$out['err']=1;
|
||
if(!$rez1['err']){
|
||
$out['err']=0;
|
||
//$out['id']=mysql_insert_id();
|
||
//$out['id']=$DB->lastinsertID();
|
||
$out['id']=$rez1['id'];
|
||
}
|
||
}
|
||
|
||
if($_POST['ajdes']=='rejt_dele'){//рейтинг удаление элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num']-1;
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['info'] = '<span class="label label-info">ошибка</span>';
|
||
$out['err'] = 2;
|
||
|
||
$sql = 'SELECT id,value FROM '.$ST['dbpf'].'_rejt_saves WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos='.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].')';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){
|
||
foreach($rez as $key => $val)if($key){
|
||
$file = str_replace('/upload/rejt/'.$id_user.'/','',$val['value']);
|
||
$file1 = './upload/rejt/'.$id_user.'/'.$file;
|
||
if(file_exists($file1)){ unlink($file1); }
|
||
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejt_saves WHERE id='.$val['id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
}
|
||
|
||
//надо поле pos обновить в остальных записях
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejt_saves SET pos=pos-1 WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos>'.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') ORDER BY pos';
|
||
$rez1 = $DB->QUR($sql1);
|
||
|
||
$out['formuls'] = rejt_raschet($i,$_SESSION['user']['id']);
|
||
rejt_savesballs($r,$i,$_SESSION['user']['id'],$out['formuls']['itogo'],'dele');
|
||
$out['info'] = '<span class="label label-success">удалили</span>';
|
||
$out['err'] = 0;
|
||
}else{
|
||
//TODO проблема с пустыми запиясми бывает, если из середины удалять то потом pos сбивается 25 записи есть 26 нет, 27 есть...
|
||
$out['info'] = '<span class="label label-important">не удалили</span>';
|
||
$out['err'] = 1;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt_save_files'){//рейтинг сохранение элементов с файлами
|
||
$r = $id_razdel = (int)$_POST['r'];
|
||
$i = $id_items = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][3]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][3]['data_s1']&&$data_c<=$_SESSION['otchgods'][3]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][3]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$ff=array(); $uploaddir = './upload/rejt/'.$_SESSION['user']['id'].'/';
|
||
if(!file_exists($uploaddir)) mkdir($uploaddir);
|
||
if(count($_FILES)){
|
||
include_once 'inc/class_SYSTEM.php';
|
||
$SYSTEMclass = new SYSTEMclass();
|
||
foreach($_FILES['an']['name'][$r][$i] as $k => $afile){
|
||
$pos = ($num-1);
|
||
$f1 = $afile[$pos]; $t = explode('.',$f1);
|
||
$fx=$t[count($t)-1]; unset($t[count($t)-1]); $fn = implode('.',$t);
|
||
$rf=translit($fn).'.'.$fx;
|
||
$uploadfile = $uploaddir . $rf;
|
||
if(file_exists($uploadfile)){
|
||
$rf=translit($fn).'_'.time().'.'.$fx;
|
||
$uploadfile = $uploaddir . $rf;
|
||
}
|
||
//if (move_uploaded_file($_FILES['an']['tmp_name'][$r][$i][$k][$pos], $uploadfile)) {
|
||
if ($SYSTEMclass->sysUPLOAD($_FILES['an']['tmp_name'][$r][$i][$k][$pos], $uploadfile)) {
|
||
$ff['file'][$k] = $rf;
|
||
$ff['path'][$k] = $uploaddir;
|
||
$ff['err'][$k] = 0;
|
||
$ff['msg'][$k] = 'файл загрузили';
|
||
$id_itemspolyas = $k;
|
||
$uploadfile = str_replace('./','/',$uploadfile);
|
||
//нужно определить отчетный период! $_SESSION['otchgods'][3]
|
||
$sql = 'SELECT id,value FROM '.$ST['dbpf'].'_rejt_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){//обновляем
|
||
if(file_exists('.'.$rez[1]['value'])){
|
||
unlink('.'.$rez[1]['value']);
|
||
}
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejt_saves SET value="'.addslashes($uploadfile).'",data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejt_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.',0,"'.addslashes($uploadfile).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
}
|
||
|
||
} else {
|
||
$ff['file'][$k] = '';
|
||
$ff['path'][$k] = $uploaddir;
|
||
$ff['err'][$k] = 1;
|
||
$ff['msg'][$k] = 'файл не загрузили ';
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejt_save'){//рейтинг сохранение элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
$zkedit = (int)$_POST['zkedit'];//1-завкаф редактирует пользователя
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][3]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][3]['data_s1']&&$data_c<=$_SESSION['otchgods'][3]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][3]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
$suc1=0;$err1=0;
|
||
$suc2=0;$err2=0;
|
||
//сохраняем данные
|
||
foreach($_POST['an'] as $id_razdel => $itemsy){
|
||
//$out['info'] .= '1:'.$id_razdel.' == '.$r.'|';
|
||
if($id_razdel == $r){
|
||
foreach($itemsy as $id_items => $ritps){
|
||
if($id_items == $i){
|
||
//$out['info'] .= '2:'.$id_items.' == '.$i.'|';
|
||
//$out['info'] .= '$ritps:'.print_r($ritps,1).'|';
|
||
foreach($ritps as $id_itemspolyas => $dans){//$dans - массив с количеством данных!
|
||
//$out['info'] .= '$dans:'.print_r($dans,1).'|';
|
||
//Array([0] => Название проекта 1[1] => Проект 2)
|
||
if(!is_array($dans)){
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejt_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos=0 AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql); //$out['info'] .= $sql.print_r($rez,1);
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejt_saves SET value="'.addslashes($dans).'",id_polyas=0,data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
//$out['info'] .= $sql.print_r($rez,1);
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejt_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.',0,"'.addslashes($dans).'",0);';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
//$out['info'] .= $sql.print_r($rez,1);
|
||
}
|
||
}else{
|
||
foreach($dans as $pos => $value){
|
||
//$out['info'] .= '3:'.$pos.' == '.($num-1).'|';
|
||
if($pos == ($num-1)){//сохраняем только нужные номера
|
||
//нужно определить отчетный период! $_SESSION['otchgods'][3]
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejt_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
//$out['info'] .= $sql.print_r($rez,1);
|
||
if(mb_strpos($value, '|')!==false){
|
||
$t=explode('|',$value);
|
||
$id_polyas=$t[0];
|
||
$value=$t[1];
|
||
}else{
|
||
$id_polyas=0;
|
||
}
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejt_saves SET value="'.addslashes($value).'",id_polyas='.$id_polyas.',data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
//$out['info'] .= $sql.print_r($rez,1);
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejt_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.','.$id_polyas.',"'.addslashes($value).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
//$out['info'] .= $sql.print_r($rez,1);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['formuls'] = rejt_raschet($i,$_SESSION['user']['id']);
|
||
rejt_savesballs($r,$i,$_SESSION['user']['id'],$out['formuls']['itogo'],'save',$data_c);
|
||
if($out['formuls']['itogo']==0){
|
||
$out['info'] .= 'подсчет баллов, будет после обновления страницы';
|
||
}else{
|
||
$out['info'] .= 'Баллов: '.$out['formuls']['itogo'].', текущая запись: '.$out['formuls'][($num-1)].' ';
|
||
$out['info'] .= 'Позицию '.($num).': ';
|
||
if($suc1!=0){
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc1.'</span>/<span class="text-error">'.$err1.'</span>';
|
||
}
|
||
if($suc2!=0){
|
||
if($suc1!=0) $out['info'] .= ' | ';
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc2.'</span>/<span class="text-error">'.$err2.'</span>';
|
||
}
|
||
}
|
||
//$out['info'] = 'Upd:'.$suc1.'/'.$err1.' Save:'.$suc2.'/'.$err2;
|
||
//$out['info'] .= '<pre>'.print_r($_POST,1).'</pre>';
|
||
//$out['info'] .= '<pre>'.print_r($_FILES,1).'</pre>';
|
||
}
|
||
if($_POST['ajdes']=='rejt_pba'){//рейтинг добавление элементов в анкету
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//выбираем поля и формируем форму для отправки
|
||
$items=array();
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejt_items WHERE id_razdel='.$r.' AND id='.$i.'';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['itemspolyas']=array();
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_rejt_itemspolyas WHERE id_item='.$val1['id'].' ORDER BY pos';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
foreach($rez2 as $key2 => $val2)if($key2){
|
||
$val2['polyas']=array();
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_rejt_polyas WHERE id_item='.$val2['id'].' ORDER BY pos';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
foreach($rez3 as $key3 => $val3)if($key3){
|
||
$val2['polyas'][]=$val3;
|
||
}
|
||
}
|
||
$val1['itemspolyas'][]=$val2;
|
||
}
|
||
}
|
||
$items=$val1;
|
||
}
|
||
}
|
||
if(count($items['itemspolyas'])){
|
||
$html = '<table class="table table-striped table-advance table-hover table-mini">';
|
||
$html .= '<tbody>';
|
||
foreach($items['itemspolyas'] as $key => $val){
|
||
$html .= '<tr>';
|
||
$html .= '<td style="width:50%;text-align:right;padding-right:10px;">'.$val['name'].'</td>';
|
||
$html .= '<td style="width:50%;" nowrap>';
|
||
if(count($val['polyas'])>1){
|
||
$html .= '<select name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Выберите значение">';
|
||
$html .= '<option value="0">Выберите</option>';
|
||
foreach($val['polyas'] as $key1 => $val1){
|
||
$html .= '<option value="'.$val1['id'].'|'.$val1['value'].'">'.$val1['name'].'</option>';
|
||
}
|
||
$html .= '</select>';
|
||
}else{
|
||
if ($val['value']=='file'){
|
||
$html .= '<input type="file" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span6 tooltips files_'.$items['id_razdel'].'_'.$items['id'].'_'.$num.'" id="files_'.$items['id_razdel'].'_'.$items['id'].'_'.$num.'_'.$val['id'].'" data-trigger="hover" data-original-title="Файл не более 500 Кб"><span class="span6" id="filesrez_'.$items['id_razdel'].'_'.$items['id'].'_'.$num.'_'.$val['id'].'"></span>';
|
||
}else{
|
||
$html .= '<input type="TEXT" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Введите значение" value="">';
|
||
}
|
||
}
|
||
$html .= '</td>';
|
||
$html .= '</tr>';
|
||
}
|
||
$html .= '</tbody>';
|
||
$html .= '</table>';
|
||
$html .= '<table class="table table-striped table-advance table-hover table-mini">
|
||
<tbody>
|
||
<tr>
|
||
<td style="width:100%;text-align:right;">
|
||
<span id="pbomes_'.$r.'_'.$i.'_'.$num.'"></span>
|
||
<a href="#" class="btn btn-danger tooltips panels_body_dele" id="pbod_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Удалить из базы данных текущую информацию в блоке"><i class="icon-trash"></i></a>
|
||
<a href="#" class="btn btn-success tooltips panels_body_save" id="pbos_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Записать в базу данных текущую информацию в блоке"><i class="icon-save"></i></a>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>';
|
||
}
|
||
$out['html'] = $html;
|
||
}
|
||
|
||
if($_POST['ajdes']=='rejtdek_dele'){//рейтинг удаление элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num']-1;
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['info'] = '<span class="label label-info">ошибка</span>';
|
||
$out['err'] = 2;
|
||
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtdek_saves WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos='.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][1]['data_s1'].' AND '.$_SESSION['otchgods'][1]['data_s2'].')';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){
|
||
foreach($rez as $key => $val)if($key){
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejtdek_saves WHERE id='.$val['id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
}
|
||
|
||
//надо поле pos обновить в остальных записях
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejtdek_saves SET pos=pos-1 WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos>'.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][1]['data_s1'].' AND '.$_SESSION['otchgods'][1]['data_s2'].') ORDER BY pos';
|
||
$rez1 = $DB->QUR($sql1);
|
||
|
||
$out['info'] = '<span class="label label-success">удалили</span>';
|
||
$out['err'] = 0;
|
||
}else{
|
||
$out['info'] = '<span class="label label-important">не удалили</span>';
|
||
$out['err'] = 1;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejtdek_save'){//рейтинг сохранение элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][1]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][1]['data_s1']&&$data_c<=$_SESSION['otchgods'][1]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][1]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
$suc1=0;$err1=0;
|
||
$suc2=0;$err2=0;
|
||
//сохраняем данные
|
||
foreach($_POST['an'] as $id_razdel => $itemsy){
|
||
if($id_razdel == $r){
|
||
foreach($itemsy as $id_items => $ritps){
|
||
if($id_items == $i){
|
||
foreach($ritps as $id_itemspolyas => $dans){//$dans - массив с количеством данных!
|
||
//Array([0] => Название проекта 1[1] => Проект 2)
|
||
foreach($dans as $pos => $value){
|
||
if($pos == ($num-1)){//сохраняем только нужные номера
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtdek_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][1]['data_s1'].' AND '.$_SESSION['otchgods'][1]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if(mb_strpos($value, '|')!==false){
|
||
$t=explode('|',$value);
|
||
$id_polyas=$t[0];
|
||
$value=$t[1];
|
||
}else{
|
||
$id_polyas=0;
|
||
}
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejtdek_saves SET value="'.addslashes($value).'",id_polyas='.$id_polyas.',data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejtdek_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.','.$id_polyas.',"'.addslashes($value).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['formuls'] = rejtdek_raschet($i,$_SESSION['user']['id']);
|
||
$out['info'] .= 'Баллов: '.$out['formuls']['itogo'].', текущая запись: '.$out['formuls'][($num-1)].' ';
|
||
$out['info'] .= 'Позицию '.($num).': ';
|
||
if($suc1!=0){
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc1.'</span>/<span class="text-error">'.$err1.'</span>';
|
||
}
|
||
if($suc2!=0){
|
||
if($suc1!=0) $out['info'] .= ' | ';
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc2.'</span>/<span class="text-error">'.$err2.'</span>';
|
||
}
|
||
//$out['info'] = 'Upd:'.$suc1.'/'.$err1.' Save:'.$suc2.'/'.$err2;
|
||
}
|
||
if($_POST['ajdes']=='rejtdek_pba'){//рейтинг добавление элементов в анкету
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//выбираем поля и формируем форму для отправки
|
||
$items=array();
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejtdek_items WHERE id_razdel='.$r.' AND id='.$i.'';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['itemspolyas']=array();
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_rejtdek_itemspolyas WHERE id_item='.$val1['id'].' ORDER BY pos';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
foreach($rez2 as $key2 => $val2)if($key2){
|
||
$val2['polyas']=array();
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_rejtdek_polyas WHERE id_item='.$val2['id'].' ORDER BY pos';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
foreach($rez3 as $key3 => $val3)if($key3){
|
||
$val2['polyas'][]=$val3;
|
||
}
|
||
}
|
||
$val1['itemspolyas'][]=$val2;
|
||
}
|
||
}
|
||
$items=$val1;
|
||
}
|
||
}
|
||
if(count($items['itemspolyas'])){
|
||
$html = '<table class="table table-striped table-advance table-hover table-mini">';
|
||
$html .= '<tbody>';
|
||
foreach($items['itemspolyas'] as $key => $val){
|
||
$html .= '<tr>';
|
||
$html .= '<td style="width:50%;">'.$val['name'].'</td>';
|
||
$html .= '<td style="width:50%;" nowrap>';
|
||
if(count($val['polyas'])>1){
|
||
$html .= '<select name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Выберите значение">';
|
||
$html .= '<option value="0">Выберите</option>';
|
||
foreach($val['polyas'] as $key1 => $val1){
|
||
$html .= '<option value="'.$val1['id'].'|'.$val1['value'].'">'.$val1['name'].'</option>';
|
||
}
|
||
$html .= '</select>';
|
||
}else{
|
||
$html .= '<input type="TEXT" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Введите значение" value="">';
|
||
}
|
||
$html .= '</td>';
|
||
$html .= '</tr>';
|
||
}
|
||
$html .= '</tbody>';
|
||
$html .= '</table>';
|
||
$html .= '<table class="table table-striped table-advance table-hover table-mini">
|
||
<tbody>
|
||
<tr>
|
||
<td style="width:100%;text-align:right;">
|
||
<span id="pbomes_'.$r.'_'.$i.'_'.$num.'"></span>
|
||
<a href="#" class="btn btn-danger tooltips panels_body_dele" id="pbod_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Удалить из базы данных текущую информацию в блоке"><i class="icon-trash"></i></a>
|
||
<a href="#" class="btn btn-success tooltips panels_body_save" id="pbos_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Записать в базу данных текущую информацию в блоке"><i class="icon-save"></i></a>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>';
|
||
}
|
||
$out['html'] = $html;
|
||
}
|
||
|
||
if($_POST['ajdes']=='rejtkaf_dele'){//рейтинг удаление элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num']-1;
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['info'] = '<span class="label label-info">ошибка</span>';
|
||
$out['err'] = 2;
|
||
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtkaf_saves WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos='.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][2]['data_s1'].' AND '.$_SESSION['otchgods'][2]['data_s2'].')';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){
|
||
foreach($rez as $key => $val)if($key){
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejtkaf_saves WHERE id='.$val['id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
}
|
||
|
||
//надо поле pos обновить в остальных записях
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejtkaf_saves SET pos=pos-1 WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos>'.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][2]['data_s1'].' AND '.$_SESSION['otchgods'][2]['data_s2'].') ORDER BY pos';
|
||
$rez1 = $DB->QUR($sql1);
|
||
|
||
$out['info'] = '<span class="label label-success">удалили</span>';
|
||
$out['err'] = 0;
|
||
}else{
|
||
$out['info'] = '<span class="label label-important">не удалили</span>';
|
||
$out['err'] = 1;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejtkaf_save'){//рейтинг сохранение элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][2]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][2]['data_s1']&&$data_c<=$_SESSION['otchgods'][2]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][2]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
$suc1=0;$err1=0;
|
||
$suc2=0;$err2=0;
|
||
//сохраняем данные
|
||
foreach($_POST['an'] as $id_razdel => $itemsy){
|
||
if($id_razdel == $r){
|
||
foreach($itemsy as $id_items => $ritps){
|
||
if($id_items == $i){
|
||
foreach($ritps as $id_itemspolyas => $dans){//$dans - массив с количеством данных!
|
||
//Array([0] => Название проекта 1[1] => Проект 2)
|
||
foreach($dans as $pos => $value){
|
||
if($pos == ($num-1)){//сохраняем только нужные номера
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtkaf_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][2]['data_s1'].' AND '.$_SESSION['otchgods'][2]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if(mb_strpos($value, '|')!==false){
|
||
$t=explode('|',$value);
|
||
$id_polyas=$t[0];
|
||
$value=$t[1];
|
||
}else{
|
||
$id_polyas=0;
|
||
}
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejtkaf_saves SET value="'.addslashes($value).'",id_polyas='.$id_polyas.',data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejtkaf_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.','.$id_polyas.',"'.addslashes($value).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['formuls'] = rejtkaf_raschet($i,$_SESSION['user']['id']);
|
||
$out['info'] .= 'Баллов: '.$out['formuls']['itogo'].', текущая запись: '.$out['formuls'][($num-1)].' ';
|
||
$out['info'] .= 'Позицию '.($num).': ';
|
||
if($suc1!=0){
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc1.'</span>/<span class="text-error">'.$err1.'</span>';
|
||
}
|
||
if($suc2!=0){
|
||
if($suc1!=0) $out['info'] .= ' | ';
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc2.'</span>/<span class="text-error">'.$err2.'</span>';
|
||
}
|
||
//$out['info'] = 'Upd:'.$suc1.'/'.$err1.' Save:'.$suc2.'/'.$err2;
|
||
}
|
||
if($_POST['ajdes']=='rejtkaf_pba'){//рейтинг добавление элементов в анкету
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//выбираем поля и формируем форму для отправки
|
||
$items=array();
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejtkaf_items WHERE id_razdel='.$r.' AND id='.$i.'';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['itemspolyas']=array();
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_rejtkaf_itemspolyas WHERE id_item='.$val1['id'].' ORDER BY pos';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
foreach($rez2 as $key2 => $val2)if($key2){
|
||
$val2['polyas']=array();
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_rejtkaf_polyas WHERE id_item='.$val2['id'].' ORDER BY pos';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
foreach($rez3 as $key3 => $val3)if($key3){
|
||
$val2['polyas'][]=$val3;
|
||
}
|
||
}
|
||
$val1['itemspolyas'][]=$val2;
|
||
}
|
||
}
|
||
$items=$val1;
|
||
}
|
||
}
|
||
if(count($items['itemspolyas'])){
|
||
$html = '<table class="table table-striped table-advance table-hover table-mini">';
|
||
$html .= '<tbody>';
|
||
foreach($items['itemspolyas'] as $key => $val){
|
||
$html .= '<tr>';
|
||
$html .= '<td style="width:50%;">'.$val['name'].'</td>';
|
||
$html .= '<td style="width:50%;" nowrap>';
|
||
if(count($val['polyas'])>1){
|
||
$html .= '<select name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Выберите значение">';
|
||
$html .= '<option value="0">Выберите</option>';
|
||
foreach($val['polyas'] as $key1 => $val1){
|
||
$html .= '<option value="'.$val1['id'].'|'.$val1['value'].'">'.$val1['name'].'</option>';
|
||
}
|
||
$html .= '</select>';
|
||
}else{
|
||
$html .= '<input type="TEXT" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Введите значение" value="">';
|
||
}
|
||
$html .= '</td>';
|
||
$html .= '</tr>';
|
||
}
|
||
$html .= '</tbody>';
|
||
$html .= '</table>';
|
||
$html .= '<table class="table table-striped table-advance table-hover table-mini">
|
||
<tbody>
|
||
<tr>
|
||
<td style="width:100%;text-align:right;">
|
||
<span id="pbomes_'.$r.'_'.$i.'_'.$num.'"></span>
|
||
<a href="#" class="btn btn-danger tooltips panels_body_dele" id="pbod_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Удалить из базы данных текущую информацию в блоке"><i class="icon-trash"></i></a>
|
||
<a href="#" class="btn btn-success tooltips panels_body_save" id="pbos_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Записать в базу данных текущую информацию в блоке"><i class="icon-save"></i></a>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>';
|
||
}
|
||
$out['html'] = $html;
|
||
}
|
||
|
||
if($_POST['ajdes']=='rejtnpr_dele'){//рейтинг удаление элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num']-1;
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['info'] = '<span class="label label-info">ошибка</span>';
|
||
$out['err'] = 2;
|
||
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtnpr_saves WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos='.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].')';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){
|
||
foreach($rez as $key => $val)if($key){
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejtnpr_saves WHERE id='.$val['id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
}
|
||
|
||
//надо поле pos обновить в остальных записях
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejtnpr_saves SET pos=pos-1 WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos>'.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') ORDER BY pos';
|
||
$rez1 = $DB->QUR($sql1);
|
||
|
||
$out['info'] = '<span class="label label-success">удалили</span>';
|
||
$out['err'] = 0;
|
||
}else{
|
||
$out['info'] = '<span class="label label-important">не удалили</span>';
|
||
$out['err'] = 1;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejtnpr_save'){//рейтинг сохранение элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][2]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][3]['data_s1']&&$data_c<=$_SESSION['otchgods'][3]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][3]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
$suc1=0;$err1=0;
|
||
$suc2=0;$err2=0;
|
||
//сохраняем данные
|
||
foreach($_POST['an'] as $id_razdel => $itemsy){
|
||
if($id_razdel == $r){
|
||
foreach($itemsy as $id_items => $ritps){
|
||
if($id_items == $i){
|
||
foreach($ritps as $id_itemspolyas => $dans){//$dans - массив с количеством данных!
|
||
//Array([0] => Название проекта 1[1] => Проект 2)
|
||
foreach($dans as $pos => $value){
|
||
if($pos == ($num-1)){//сохраняем только нужные номера
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtnpr_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if(mb_strpos($value, '|')!==false){
|
||
$t=explode('|',$value);
|
||
$id_polyas=$t[0];
|
||
$value=$t[1];
|
||
}else{
|
||
$id_polyas=0;
|
||
}
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejtnpr_saves SET value="'.addslashes($value).'",id_polyas='.$id_polyas.',data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejtnpr_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.','.$id_polyas.',"'.addslashes($value).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['formuls'] = rejtnpr_raschet($i,$_SESSION['user']['id']);
|
||
$out['info'] .= 'Баллов: '.$out['formuls']['itogo'].', текущая запись: '.$out['formuls'][($num-1)].' ';
|
||
$out['info'] .= 'Позицию '.($num).': ';
|
||
if($suc1!=0){
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc1.'</span>/<span class="text-error">'.$err1.'</span>';
|
||
}
|
||
if($suc2!=0){
|
||
if($suc1!=0) $out['info'] .= ' | ';
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc2.'</span>/<span class="text-error">'.$err2.'</span>';
|
||
}
|
||
//$out['info'] = 'Upd:'.$suc1.'/'.$err1.' Save:'.$suc2.'/'.$err2;
|
||
}
|
||
if($_POST['ajdes']=='rejtnpr_pba'){//рейтинг добавление элементов в анкету
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//выбираем поля и формируем форму для отправки
|
||
$items=array();
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnpr_items WHERE id_razdel='.$r.' AND id='.$i.'';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['itemspolyas']=array();
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnpr_itemspolyas WHERE id_item='.$val1['id'].' ORDER BY pos';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
foreach($rez2 as $key2 => $val2)if($key2){
|
||
$val2['polyas']=array();
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnpr_polyas WHERE id_item='.$val2['id'].' ORDER BY pos';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
foreach($rez3 as $key3 => $val3)if($key3){
|
||
$val2['polyas'][]=$val3;
|
||
}
|
||
}
|
||
$val1['itemspolyas'][]=$val2;
|
||
}
|
||
}
|
||
$items=$val1;
|
||
}
|
||
}
|
||
if(count($items['itemspolyas'])){
|
||
$html = '<table class="table table-striped table-advance table-hover table-mini">';
|
||
$html .= '<tbody>';
|
||
foreach($items['itemspolyas'] as $key => $val){
|
||
$html .= '<tr>';
|
||
$html .= '<td style="width:50%;">'.$val['name'].'</td>';
|
||
$html .= '<td style="width:50%;" nowrap>';
|
||
if(count($val['polyas'])>1){
|
||
$html .= '<select name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Выберите значение">';
|
||
$html .= '<option value="0">Выберите</option>';
|
||
foreach($val['polyas'] as $key1 => $val1){
|
||
$html .= '<option value="'.$val1['id'].'|'.$val1['value'].'">'.$val1['name'].'</option>';
|
||
}
|
||
$html .= '</select>';
|
||
}else{
|
||
$html .= '<input type="TEXT" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Введите значение" value="">';
|
||
}
|
||
$html .= '</td>';
|
||
$html .= '</tr>';
|
||
}
|
||
$html .= '</tbody>';
|
||
$html .= '</table>';
|
||
$html .= '<table class="table table-striped table-advance table-hover table-mini">
|
||
<tbody>
|
||
<tr>
|
||
<td style="width:100%;text-align:right;">
|
||
<span id="pbomes_'.$r.'_'.$i.'_'.$num.'"></span>
|
||
<a href="#" class="btn btn-danger tooltips panels_body_dele" id="pbod_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Удалить из базы данных текущую информацию в блоке"><i class="icon-trash"></i></a>
|
||
<a href="#" class="btn btn-success tooltips panels_body_save" id="pbos_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Записать в базу данных текущую информацию в блоке"><i class="icon-save"></i></a>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>';
|
||
}
|
||
$out['html'] = $html;
|
||
}
|
||
|
||
if($_POST['ajdes']=='rejtnr_dele'){//рейтинг удаление элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num']-1;
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['info'] = '<span class="label label-info">ошибка</span>';
|
||
$out['err'] = 2;
|
||
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtnr_saves WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos='.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].')';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]){
|
||
foreach($rez as $key => $val)if($key){
|
||
$sql1 = 'DELETE FROM '.$ST['dbpf'].'_rejtnr_saves WHERE id='.$val['id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR($sql1);
|
||
}
|
||
|
||
//надо поле pos обновить в остальных записях
|
||
$sql1 = 'UPDATE '.$ST['dbpf'].'_rejtnr_saves SET pos=pos-1 WHERE id_user='.$id_user.' AND id_razdel='.$r.' AND id_items='.$i.' AND pos>'.$num.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') ORDER BY pos';
|
||
$rez1 = $DB->QUR($sql1);
|
||
|
||
$out['info'] = '<span class="label label-success">удалили</span>';
|
||
$out['err'] = 0;
|
||
}else{
|
||
$out['info'] = '<span class="label label-important">не удалили</span>';
|
||
$out['err'] = 1;
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='rejtnr_save'){//рейтинг сохранение элемента
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//надо определить дату по отчетному периоду! $_SESSION['otchgods'][2]['data_s1']
|
||
$data_c = time();
|
||
if($data_c>=$_SESSION['otchgods'][3]['data_s1']&&$data_c<=$_SESSION['otchgods'][3]['data_s2']){
|
||
//дата попадает в отчетный период
|
||
}else{//дата не попадает в отчетный период! надо крректировать
|
||
$data_c=$_SESSION['otchgods'][3]['data_s2'] - (60*60*24);// вычтем из периода сутки и сохраним
|
||
}
|
||
$id_user = $_SESSION['user']['id'];
|
||
$suc1=0;$err1=0;
|
||
$suc2=0;$err2=0;
|
||
//сохраняем данные
|
||
foreach($_POST['an'] as $id_razdel => $itemsy){
|
||
if($id_razdel == $r){
|
||
foreach($itemsy as $id_items => $ritps){
|
||
if($id_items == $i){
|
||
foreach($ritps as $id_itemspolyas => $dans){//$dans - массив с количеством данных!
|
||
//Array([0] => Название проекта 1[1] => Проект 2)
|
||
foreach($dans as $pos => $value){
|
||
if($pos == ($num-1)){//сохраняем только нужные номера
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_rejtnr_saves WHERE id_user='.$id_user.' AND id_razdel='.$id_razdel.' AND id_items='.$id_items.' AND id_itemspolyas='.$id_itemspolyas.' AND pos='.$pos.' AND (data_c BETWEEN '.$_SESSION['otchgods'][3]['data_s1'].' AND '.$_SESSION['otchgods'][3]['data_s2'].') LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if(mb_strpos($value, '|')!==false){
|
||
$t=explode('|',$value);
|
||
$id_polyas=$t[0];
|
||
$value=$t[1];
|
||
}else{
|
||
$id_polyas=0;
|
||
}
|
||
if($rez&&$rez[0]){//обновляем
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_rejtnr_saves SET value="'.addslashes($value).'",id_polyas='.$id_polyas.',data_c='.$data_c.' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc1++; else $err1++;
|
||
}else{//вставляем
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_rejtnr_saves VALUES(0,'.$data_c.','.$id_user.','.$id_razdel.','.$id_items.','.$id_itemspolyas.','.$id_polyas.',"'.addslashes($value).'",'.$pos.');';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $suc2++; else $err2++;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['formuls'] = rejtnr_raschet($i,$_SESSION['user']['id']);
|
||
$out['info'] .= 'Баллов: '.$out['formuls']['itogo'].', текущая запись: '.$out['formuls'][($num-1)].' ';
|
||
$out['info'] .= 'Позицию '.($num).': ';
|
||
if($suc1!=0){
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc1.'</span>/<span class="text-error">'.$err1.'</span>';
|
||
}
|
||
if($suc2!=0){
|
||
if($suc1!=0) $out['info'] .= ' | ';
|
||
$out['info'] .= 'Обновили. <span class="text-success">'.$suc2.'</span>/<span class="text-error">'.$err2.'</span>';
|
||
}
|
||
//$out['info'] = 'Upd:'.$suc1.'/'.$err1.' Save:'.$suc2.'/'.$err2;
|
||
}
|
||
if($_POST['ajdes']=='rejtnr_pba'){//рейтинг добавление элементов в анкету
|
||
$r = (int)$_POST['r'];
|
||
$i = (int)$_POST['i'];
|
||
$num = (int)$_POST['num'];
|
||
|
||
//выбираем поля и формируем форму для отправки
|
||
$items=array();
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnr_items WHERE id_razdel='.$r.' AND id='.$i.'';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['itemspolyas']=array();
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnr_itemspolyas WHERE id_item='.$val1['id'].' ORDER BY pos';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
foreach($rez2 as $key2 => $val2)if($key2){
|
||
$val2['polyas']=array();
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_rejtnr_polyas WHERE id_item='.$val2['id'].' ORDER BY pos';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
foreach($rez3 as $key3 => $val3)if($key3){
|
||
$val2['polyas'][]=$val3;
|
||
}
|
||
}
|
||
$val1['itemspolyas'][]=$val2;
|
||
}
|
||
}
|
||
$items=$val1;
|
||
}
|
||
}
|
||
if(count($items['itemspolyas'])){
|
||
$html = '<table class="table table-striped table-advance table-hover table-mini">';
|
||
$html .= '<tbody>';
|
||
foreach($items['itemspolyas'] as $key => $val){
|
||
$html .= '<tr>';
|
||
$html .= '<td style="width:50%;">'.$val['name'].'</td>';
|
||
$html .= '<td style="width:50%;" nowrap>';
|
||
if(count($val['polyas'])>1){
|
||
$html .= '<select name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Выберите значение">';
|
||
$html .= '<option value="0">Выберите</option>';
|
||
foreach($val['polyas'] as $key1 => $val1){
|
||
$html .= '<option value="'.$val1['id'].'|'.$val1['value'].'">'.$val1['name'].'</option>';
|
||
}
|
||
$html .= '</select>';
|
||
}else{
|
||
$html .= '<input type="TEXT" name="an['.$items['id_razdel'].']['.$items['id'].']['.$val['id'].'][]" class="span12 tooltips" data-trigger="hover" data-original-title="Введите значение" value="">';
|
||
}
|
||
$html .= '</td>';
|
||
$html .= '</tr>';
|
||
}
|
||
$html .= '</tbody>';
|
||
$html .= '</table>';
|
||
$html .= '<table class="table table-striped table-advance table-hover table-mini">
|
||
<tbody>
|
||
<tr>
|
||
<td style="width:100%;text-align:right;">
|
||
<span id="pbomes_'.$r.'_'.$i.'_'.$num.'"></span>
|
||
<a href="#" class="btn btn-danger tooltips panels_body_dele" id="pbod_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Удалить из базы данных текущую информацию в блоке"><i class="icon-trash"></i></a>
|
||
<a href="#" class="btn btn-success tooltips panels_body_save" id="pbos_'.$r.'_'.$i.'_'.$num.'" data-trigger="hover" data-original-title="Записать в базу данных текущую информацию в блоке"><i class="icon-save"></i></a>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>';
|
||
}
|
||
$out['html'] = $html;
|
||
}
|
||
|
||
if($_POST['ajdes']=='studkadr_save'){//студ кадры сохраняют договор дату и номер
|
||
$id=(int)$_POST['id'];
|
||
$nomer=addslashes(htmlspecialchars($_POST['nomer']));
|
||
$data=addslashes(htmlspecialchars($_POST['data']));
|
||
$out['err']=1;
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_studkadr WHERE id_studentzayavks='.$id.' LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_iup_studkadr SET nomer="'.$nomer.'",`data`="'.$data.'" WHERE id_studentzayavks='.$id.'';
|
||
$rez = $DB->QUR($sql); //$out['d']=$sql.print_r($rez,1);
|
||
if($rez){ $out['err']=0; }else $out['err']=1;
|
||
}else{
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_iup_studkadr VALUES(0,'.time().','.$id.','.$_SESSION['user']['id'].',"'.$nomer.'","'.$data.'")';
|
||
$rez = $DB->QUR($sql);
|
||
if($rez){ $out['err']=0; }else $out['err']=1;
|
||
}
|
||
}
|
||
|
||
if($_POST['ajdes']=='zamdekan_change_plan'){//замдекана меняет учебный план
|
||
if(isset($_POST['id_zayavka'])&&isset($_POST['id_plan'])){
|
||
$is_change = 0;
|
||
$id_zayavka=(int)$_POST['id_zayavka'];
|
||
$id_plan=(int)$_POST['id_plan'];
|
||
//acs_iup_zayavka_plan: id, data_c, id_user, id_zayavka, id_plan
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_iup_zayavka_plan WHERE id_zayavka='.$id_zayavka.'';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_iup_zayavka_plan WHERE id_zayavka='.$id_zayavka.' AND id_plan='.$id_plan.' LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez) {
|
||
$zp = $rez[1];
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_iup_zayavka_plan SET id_plan = '.$id_plan.' WHERE id='.$zp['id'].' LIMIT 1';
|
||
$rez = $DB->QUR($sql);
|
||
if ($rez) $is_change = 1;
|
||
}else{
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_iup_zayavka_plan VALUES (0,'.time().','.$_SESSION['user']['id'].','.$id_zayavka.','.$id_plan.')';
|
||
$rez = $DB->QUR($sql);
|
||
if ($rez) $is_change = 1;
|
||
}
|
||
if($is_change==1){
|
||
|
||
}
|
||
}
|
||
}
|
||
|
||
if($_POST['ajdes']=='zamdekan_delediscip'){//замдекана удаляет дисциплину
|
||
if(isset($_POST['id_zayavka'])){
|
||
$id_zayavka=(int)$_POST['id_zayavka'];
|
||
$cc = iup_DelCacheFile_zamDek($id_zayavka);//НАДО УДАЛЯТЬ КЭШ!
|
||
}
|
||
$id=(int)$_POST['id'];
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE id='.$id.'';
|
||
$rez = $DB->QUR($sql);
|
||
if($rez){
|
||
$out['err']=0;
|
||
}else $out['err']=1;
|
||
}
|
||
if($_POST['ajdes']=='zamdekan_copydiscip'){//замдекана компирует дисциплину
|
||
$tmp=array();
|
||
$tmp['err']='';
|
||
if(isset($_POST['id_zayavka'])){
|
||
$id_zayavka=(int)$_POST['id_zayavka'];
|
||
$cc = iup_DelCacheFile_zamDek($id_zayavka);//НАДО УДАЛЯТЬ КЭШ!
|
||
//tmp/iup/json_get_predmets_a02c88e023da30181951973e21638bca.json
|
||
//tmp/iup/json_get_predmets_e29c038b0443705d3fdda3015a7d0d4e.json
|
||
/*
|
||
$fakultet=Факультет аграрных технологий; $spec=ЗУ:Землеустройство и кадастры:Землеустройство:Бакалавриат; $kurs=5; $fo=заочная; $file=tmp/iup/json_get_predmets_e29c038b0443705d3fdda3015a7d0d4e.json
|
||
|
||
"cc": {
|
||
"fakultet": "Факультет аграрных технологий",
|
||
"spec": "ЗУ:Землеустройство и кадастры:Землеустройство:Бакалавриат",
|
||
"kurs": "5",
|
||
"fo": "заочная",
|
||
"file": "tmp/iup/json_get_predmets_e29c038b0443705d3fdda3015a7d0d4e.json",
|
||
"exist": 1
|
||
}
|
||
}
|
||
*/
|
||
}
|
||
$id=(int)$_POST['id'];
|
||
$ze=(int)$_POST['ze'];
|
||
$sem=(int)$_POST['sem'];
|
||
$form=$_POST['form'];
|
||
|
||
//сначала выбирем и продублируем
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE id='.$id.'';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$s = $rez[1];
|
||
$s['discip'] = $s['discip'].'(дубл)';
|
||
if($sem!='') $s['sem'] = (int)$sem;
|
||
if($ze!='') $s['zet'] = $ze;
|
||
if($s['sem']==1||$s['sem']==2) $s['kurs']=1;
|
||
if($s['sem']==3||$s['sem']==4) $s['kurs']=2;
|
||
if($s['sem']==5||$s['sem']==6) $s['kurs']=3;
|
||
if($s['sem']==7||$s['sem']==8) $s['kurs']=4;
|
||
if($s['sem']==9||$s['sem']==10) $s['kurs']=5;
|
||
$s['ekz']='';
|
||
$s['zach']='';
|
||
$s['krab']='';
|
||
$s['kpro']='';
|
||
if($form=='Э') $s['ekz']='1';
|
||
if($form=='З') $s['zach']='1';
|
||
if($form=='КР') $s['krab']='1';
|
||
if($form=='КП') $s['kpro']='1';
|
||
$sqlu1 = 'INSERT INTO '.$ST['dbpf'].'_iup_shahtplans_stroki VALUES(0,'.$s['id_plans'].',"'.$s['discip'].'","'.$s['discid'].'","'.$s['kurs'].'","'.$s['sem'].'","'.$s['lek'].'","'.$s['lab'].'","'.$s['pr'].'","'.$s['srs'].'","'.$s['chasekz'].'","'.$s['zet'].'","'.$s['ekz'].'","'.$s['zach'].'","'.$s['vidkontr'].'","'.$s['kontrab'].'","'.$s['kontr'].'","'.$s['sessiya'].'","'.$s['dispovyb'].'","'.$s['kpro'].'","'.$s['krab'].'");';
|
||
$rezu1 = $DB->QUR($sqlu1);
|
||
if(!$rezu1['err']){
|
||
$sql = 'SELECT
|
||
file.id as fid,
|
||
file.godob,
|
||
plan.id as pid,
|
||
stroka.id as sid,
|
||
stroka.discip,
|
||
stroka.discid,
|
||
stroka.kurs,
|
||
stroka.sem,
|
||
stroka.ekz,
|
||
stroka.zach,
|
||
stroka.zet,
|
||
stroka.dispovyb,
|
||
stroka.kpro,
|
||
stroka.krab
|
||
FROM
|
||
'.$ST['dbpf'].'_iup_shahtplans as file,
|
||
'.$ST['dbpf'].'_iup_shahtplans_plans as plan,
|
||
'.$ST['dbpf'].'_iup_shahtplans_stroki as stroka
|
||
WHERE
|
||
stroka.id='.$id.' AND
|
||
plan.id_file=file.id AND
|
||
stroka.id_plans=plan.id';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$v=$rez[1];
|
||
|
||
$tmp['id']=$v['sid'];
|
||
$tmp['name_disp']=$v['discip'];
|
||
$tmp['discid']=$v['discid'];
|
||
|
||
$tmp['kurs']=$v['kurs'];
|
||
$tmp['sem']=$v['sem'];
|
||
$tmp['ekz']=$v['ekz'];
|
||
$tmp['zach']=$v['zach'];
|
||
$tmp['zet']=$v['zet'];
|
||
$tmp['godob']=$v['godob'];
|
||
$tmp['dispovyb']=$v['dispovyb'];
|
||
$tmp['kpro']=$v['kpro'];
|
||
$tmp['krab']=$v['krab'];
|
||
}else $tmp['err']='Ошибка выбора дубликата дисциплины';
|
||
}else $tmp['err']='Ошибка создания дубликата дисциплины';
|
||
}else $tmp['err']='Ошибка выбора оригинала дисциплины';
|
||
$tmp['cc'] = $cc;
|
||
$out = $tmp;
|
||
}
|
||
if($_POST['ajdes']=='write_razrab_send'){//отправка отзывов
|
||
$mess = htmlspecialchars($_POST['mess']);
|
||
//acs_otzyvy id data_c mess page session json
|
||
$page = htmlspecialchars($_POST['loca']);
|
||
|
||
$json = json_encode(array('refer'=>$_SERVER['HTTP_REFERER'],'ua'=>$_SERVER['HTTP_USER_AGENT'],));
|
||
$session = json_encode($_SESSION);
|
||
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_otzyvy VALUES(0,'.time().',"'.addslashes($mess).'","'.addslashes($page).'","'.addslashes($session).'","'.addslashes($json).'");';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $out['html'].='<span class="label label-success">отправили</span>'; else $out['html'].='<span class="label label-danger">ошибка</span>';
|
||
}
|
||
if($_POST['ajdes']=='change_iup_users'){//смена прав доступа для преподов
|
||
$out['html']='';
|
||
$id_user=(int)$_POST['fioid'];
|
||
$fakultet=addslashes($_POST['fakultet']);
|
||
$kafedra=addslashes($_POST['kafedra']);
|
||
$statuses=implode(',',$_POST['statuses']);
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_teachers SET fakultet="'.$fakultet.'",kafedra="'.$kafedra.'" WHERE id_user='.$id_user.'';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $out['html'].='<span class="label label-success">OK'; else $out['html'].='<span class="label label-danger">NO</span>';
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_users_statuses SET statuses="'.$statuses.'" WHERE id_user='.$id_user.'';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']) $out['html'].=',<span class="label label-success">OK</span>'; else $out['html'].=',<span class="label label-danger">NO</span>';
|
||
}
|
||
if($_POST['ajdes']=='iup_check_time'){//проверка назначенного времени для студента
|
||
$idz=(int)$_POST['id_z'];
|
||
$idp=(int)$_POST['id_p'];
|
||
$date=mysql_escape_string($_POST['date']); $t1=explode('.',$date);
|
||
$time=mysql_escape_string($_POST['time']); $t2=explode(':',$time);
|
||
$timestap1=mktime($t2[0],$t2[1]-10,0,$t1[1],$t1[0],$t1[2]);
|
||
$timestap2=mktime($t2[0],$t2[1]+10,0,$t1[1],$t1[0],$t1[2]);
|
||
//проверим занятость времени студента -10+10 мин
|
||
$sql = 'SELECT predmet ,data_time FROM '.$ST['dbpf'].'_iup_ocenki WHERE id_studentzayavks='.$idz.' AND (data_time>='.$timestap1.' AND data_time<='.$timestap2.') AND id_predmet!='.$idp.' ORDER BY data_c';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]>0){
|
||
$out['html']='<span class="text-error">Студент занят:<br>';
|
||
foreach($rez as $key => $val)if($key){
|
||
$out['html'].=date('H:i d.m.Y',$val['data_time']).' - '.$val['predmet'].'<br>';
|
||
}
|
||
$out['html'].='</span>';
|
||
}else{
|
||
$out['html']='<span class="text-success">студент свободен</span>';
|
||
}
|
||
//проверим занятость преподавателя
|
||
$sql = 'SELECT prepod_id FROM '.$ST['dbpf'].'_iup_zamdekan WHERE id_studentzayavks='.$idz.' AND predmet_id='.$idp.' LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]>0){
|
||
$sql = 'SELECT predmet,data_time FROM '.$ST['dbpf'].'_iup_ocenki WHERE (data_time>='.$timestap1.' AND data_time<='.$timestap2.') AND id_user='.$rez[1]['prepod_id'].' ORDER BY data_c';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]>0){
|
||
$out['html'].='<span class="text-error">Вы заняты:<br>';
|
||
foreach($rez as $key => $val)if($key){
|
||
$out['html'].=date('H:i d.m.Y',$val['data_time']).' - '.$val['predmet'].'<br>';
|
||
}
|
||
$out['html'].='</span>';
|
||
}else{
|
||
$out['html'].='<span class="text-success">вы свободны</span>';
|
||
}
|
||
}
|
||
|
||
|
||
$out['idz']=$idz;
|
||
$out['idp']=$idp;
|
||
//$out['sql']=$sql;//SELECT predmet ,data_time FROM acs_iup_ocenki WHERE id_studentzayavks=6385 AND (data_time>=1543294200 AND data_time<=1543295400) ORDER BY data_c
|
||
}
|
||
if($_POST['ajdes']=='change_email'){//смена емаил у пользователя
|
||
$email = mysql_escape_string($_POST['email']);
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_users WHERE email="'.$email.'"';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]>0){
|
||
$out['err']='1';
|
||
$out['html']='Указанный вами адрес <b>уже существует в базе</b>. Напишите письмо на адрес it@mkgtu.ru, укажите ваше ФИО и логин(под которым вы авторизуетесь) и укажите какой у вас рабочий емаил, мы исправим ошибку.';
|
||
}else{
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_users_emails WHERE email="'.$email.'"';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez&&$rez[0]>0){
|
||
$out['err']='2';
|
||
$out['html']='Указанный вами адрес <b>уже кто то указал как свой рабочий</b>. Проверьте свою почту на наличие письма с сайта learn-mkgtu.ru(возможно попало в СПАМ), и пройдите по ссылке указанной в письме. Напишите письмо на адрес it@mkgtu.ru, укажите ваше ФИО и логин(под которым вы авторизуетесь) и укажите какой у вас рабочий емаил, мы исправим ошибку.';
|
||
}else{
|
||
$md5 = md5(implode('::',$_SESSION['user']));
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_users_emails VALUES(0,'.time().','.$_SESSION['user']['id'].',"'.$email.'",0,"'.$md5.'")';
|
||
$rez = $DB->QUR($sql);
|
||
if(!$rez['err']){
|
||
$url = 'http://'.$_SERVER['HTTP_HOST'].'/chemail/'.$md5.'/';
|
||
$out['err']='0';
|
||
$out['html']='Проверьте свою почту на наличие письма с сайта learn-mkgtu.ru(возможно попало в СПАМ), и пройдите по ссылке указанной в письме. После этого смениться ваш емаил адрес!';
|
||
$mess='Вы указали емаил на сайте http://'.$_SERVER['HTTP_HOST'].'/ как рабочий электронный адрес.'."<br>\n";
|
||
$mess.='Ваш новый логин: '.$email.', теперь надо его указывать при входе на сайт!'."<br>\n";
|
||
$mess.='Для внесения изменения необходимо пройти по ссылке <a href="'.$url.'">'.$url.'</a>'."<br>\n";
|
||
send_email('Изменение email на сайте электронно информационо-образовательной среды',$mess,$email);
|
||
}else{
|
||
$out['err']='3';
|
||
$out['html']='Произошла ошибка сохранения данных. Напишите письмо на адрес it@mkgtu.ru, укажите ваше ФИО и логин(под которым вы авторизуетесь) и укажите какой у вас рабочий емаил, мы исправим ошибку.';
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if($_POST['ajdes']=='search_prepod'){//поиск препода по ФИО
|
||
$fio = mysql_escape_string($_POST['fio']);
|
||
$sql = 'SELECT u.id as uid,u.fio, t.id as tid FROM '.$ST['dbpf'].'_users as u,'.$ST['dbpf'].'_teachers as t WHERE fio LIKE "%'.$fio.'%" AND t.status = 1 AND u.id=t.id_user AND u.status!=-1 LIMIT 10';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
foreach($rez as $key => $val)if ($key){
|
||
$out['prepods'][]=array('id'=>$val['tid'],'fio'=>$val['fio'],'uid'=>$val['uid']);
|
||
}
|
||
}
|
||
}
|
||
|
||
if ($_POST['ajdes'] == 'save_optionally'){ //дисциплины по выбору
|
||
$str = $DB->rescape($_POST["str"]);
|
||
$id_user = $_SESSION['user']['id'];
|
||
|
||
$out['error'] = 0; //сначала ошибок нет
|
||
|
||
if ((stripos($str, 'undefined')) === false){
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_optionally (`id_user`, `id_predmets`) VALUES ("'.$id_user.'", "'.$str.'");';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
save_logs('Студент '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' выбрал предметы');
|
||
}
|
||
else{
|
||
$out['error'] = 1;
|
||
}
|
||
|
||
}
|
||
|
||
if ($_POST['ajdes'] == 'student_zayvka_view'){ //дисциплины по выбору - заф кафедрой выбрал студента, чтобы посмотреть выбранные им предметы
|
||
$out['html'] = '';
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_optionally WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
$i = 0;
|
||
$pr = explode(",", $rez[1]['id_predmets']);
|
||
//$out['html'] .= '<p>123'.$rez[1]['id_predmets'].'</p>';
|
||
|
||
//перебираем ид предметов, которые выбрал студент
|
||
while ($i <= count($pr)){
|
||
|
||
//достаем название предмета
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE `id` = "'.$pr[$i].'" ';
|
||
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
|
||
$out['html'] .= $rez2[1]['discip'].'<br />';
|
||
|
||
$i++;
|
||
}
|
||
|
||
|
||
}
|
||
|
||
//TEACH ПРАКТИКА
|
||
function practices_table(){
|
||
GLOBAL $DB, $ST;
|
||
|
||
$str = '';
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_practices';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$i++;
|
||
//направление (профиль) подготовки
|
||
$sql_start = 'SELECT * FROM '.$ST['dbpf'].'_profile_start WHERE `id` = "'.$val["id_start"].'"';
|
||
$rez_start = $DB->QUR_SEL($sql_start); //year start education
|
||
//profile education
|
||
$sql_profile = 'SELECT * FROM '.$ST['dbpf'].'_profile WHERE `id` = "'.$rez_start[1]["id_profile"].'"';
|
||
$rez_profile = $DB->QUR_SEL($sql_profile);
|
||
//areas education
|
||
$sql_area = 'SELECT * FROM '.$ST['dbpf'].'_areas WHERE `id` = "'.$rez_profile[1]["id_areas"].'"';
|
||
$rez_area = $DB->QUR_SEL($sql_area);
|
||
|
||
//код направления - профиль направления
|
||
$val['id_start'] = $rez_area[1]["code"]." ".$rez_profile[1]["name"];
|
||
|
||
//год подготовки
|
||
$val['year'] = $rez_start[1]["year"];
|
||
|
||
//форма обучения
|
||
$val['forma'] = $rez_start[1]["forma"];
|
||
if ($val["forma"] == 1) $val["forma"] = "очная";
|
||
else $val["forma"] = "заочная";
|
||
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["id_start"].'</td><td>'.$val["year"].'</td><td>'.$val["forma"].'</td><td>'.$val["semestr"].'</td><td>'.$val["type"].'</td><td>'.$val["name"].'</td><td>'.$val["count_ze"].'</td><td>'.$val["duration"].'</td><td>'.$val["control"].'</td><td>'.$val["reporting"].'</td><td><span class="btn btn-danger delete-pract" data-id="'.$val["id"].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//добавление практики
|
||
if ($_POST['ajdes'] == 'add_practic'){
|
||
$out['html'] = '==';
|
||
|
||
$error = 0;
|
||
|
||
//принимаем поля
|
||
$start = $_POST["start"];
|
||
$semestr = $_POST["semestr"];
|
||
$type = $_POST["type"];
|
||
$name = $DB->rescape($_POST["name"]);
|
||
$count_ze = $_POST["count_ze"];
|
||
$duration = $_POST["duration"];
|
||
$control = $_POST["control"];
|
||
$reporting = $_POST["reporting"];
|
||
|
||
//проверяем,нет ли ошибок
|
||
if ($start == '') $error = 1;
|
||
if ($semestr == '') $error = 1;
|
||
if ($type == '') $error = 1;
|
||
if ($name == '') $error = 1;
|
||
if ($count_ze == '') $error = 1;
|
||
if ($duration == '') $error = 1;
|
||
if ($control == '') $error = 1;
|
||
if ($reporting == '') $error = 1;
|
||
|
||
if ($error == 0){
|
||
//дополнительная проверка, нет ли такой практики
|
||
$sql_is = 'SELECT * FROM '.$ST['dbpf'].'_practices WHERE `id_start` = "'.$start.'" AND `name` = "'.$name.'" ';
|
||
$rez_is = $DB->QUR_SEL($sql_is);//исправить SQL иньекцию!!!
|
||
|
||
if ($rez_is[0] == 0){
|
||
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_practices (`id_start`, `semestr`, `type`, `name`, `count_ze`, `duration`, `control`, `reporting`) VALUES ("'.$start.'", "'.$semestr.'", "'.$type.'", "'.$name.'", "'.$count_ze.'", "'.$duration.'", "'.$control.'", "'.$reporting.'")';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out['html'] = practices_table();
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
//кнопка я онлайн
|
||
if ($_POST['ajdes'] == 'active_online'){
|
||
if(isset($_SESSION['user'])){
|
||
save_logs('Я online '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].'');
|
||
$_SESSION['iamonline']=time();
|
||
}
|
||
}
|
||
|
||
//ПУСТОЙ - ДА, ИМЕННО ТАК - ДЛЯ тестов, например
|
||
if ($_POST['ajdes'] == 'empty_post'){/**/}
|
||
|
||
//просмотр анкеты 2020 - опрос о качестве дистанционного обучения
|
||
if ($_POST['ajdes'] == 'anketa2020'){
|
||
$id = (int)$DB->rescape($_POST['id']);
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_anketes WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
if ($rez){
|
||
$fio = get_user($rez[1]['id_user']);
|
||
$out['id'] = $rez[1]['id'];
|
||
$out['html'] = $rez[1]['content'];
|
||
}
|
||
|
||
|
||
$out['fio'] = $fio['fio'];
|
||
|
||
}
|
||
|
||
//отмечаем анкету просмотренной
|
||
if ($_POST['ajdes'] == 'anketa2020_ok'){
|
||
$id = (int)$DB->rescape($_POST['id']);
|
||
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_anketes SET status = "1" WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = '';
|
||
}
|
||
|
||
//удаление анкеты
|
||
if ($_POST['ajdes'] == 'anketa2020_del'){
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_anketes WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
$out['html'] = '';
|
||
|
||
}
|
||
|
||
//ОБХОДНЫЕ ЛИСТЫ
|
||
//вывод списка необходимых студентов
|
||
if ($_POST['ajdes'] == 'show_students_obh'){
|
||
$id = (int) $_POST['id_grupp'];
|
||
|
||
|
||
$content = '';
|
||
//$sql = 'SELECT us.*, stud.* FROM '.$ST['dbpf'].'_users as us, '.$ST['dbpf'].'_students as stud WHERE stud.id_grupp = "'.$id.'" AND us.id = stud.id_user AND us.status>-1 AND stud.status>-1';
|
||
$sql = 'SELECT us.*, stud.* FROM '.$ST['dbpf'].'_users as us, '.$ST['dbpf'].'_students as stud WHERE stud.id_grupp = "'.$id.'" AND us.id = stud.id_user AND us.status>-1 AND stud.status>-1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
$content .= '<table class="table table-bordered">';
|
||
$content .= '<tr style="font-size: 14px;"><th>№</th><th>ФИО студента</th><th>Общежитие</th><th>Библиотека</th><th>БФУ</th><th>Трудоустройство</th></tr>';
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key) {
|
||
|
||
|
||
//проверяем есть ли уже обходной у выпускника, если есть, то не создаем
|
||
$sql_obh = 'SELECT * FROM '.$ST['dbpf'].'_obhods WHERE id_user = "'.$val['id_user'].'"';
|
||
$rez_obh = $DB->QUR_SEL($sql_obh);
|
||
if ($rez_obh){}
|
||
|
||
if ($rez_obh[0] == 0){
|
||
$i++;
|
||
$gr = get_student($val['id_user']);
|
||
$content .= '<tr style="font-size: 14px;" class="stud-obhod"><td>'.$i.'</td><td><input type="checkbox" name="vib" data-id="'.$val['id_user'].'" value="1" /> '.$val['fio'].' (Группа: '.$gr['sokr'].'-'.$gr['kurs'].$gr['num_grupp'].' '.$gr['fo'].')</td><td><input type="checkbox" name="obj" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="lib" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="bfu" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="trud" data-id="'.$val['id_user'].'" value="1"/></td></tr>';
|
||
//$content .= '<tr style="font-size: 14px;" class="stud-obhod"><td>'.$i.'</td><td><input type="checkbox" name="vib" data-id="'.$val['id_user'].'" value="1" /> '.$val['fio'].' (Группа: '.$gr['sokr'].'-'.$gr['kurs'].$gr['num_grupp'].' '.$gr['fo'].')</td><td><input type="checkbox" name="obj" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="lib" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="bfu" data-id="'.$val['id_user'].'" value="1" /></td><td><input type="checkbox" name="trud" data-id="'.$val['id_user'].'" value="1"/></td></tr>';
|
||
//$content .= '<label><input type="checkbox" name="students[]" value="'.$val['id'].'" /> '.$val['fio'].' (Группа: '.$gr['sokr'].'-'.$gr['kurs'].$gr['num_grupp'].' '.$gr['fo'].') </label>';
|
||
} else{
|
||
/*$gr = get_student($val['id_user']);
|
||
$content .= '<tr style="font-size: 14px;"><td>'.$i.'</td><td>'.$val['fio'].' (Группа: '.$gr['sokr'].'-'.$gr['kurs'].$gr['num_grupp'].' '.$gr['fo'].')</td><td colspan="4"><span style="color:red;">Уже есть обходной!</span></td></tr>';*/
|
||
}
|
||
|
||
//}
|
||
|
||
|
||
|
||
}
|
||
}
|
||
$content .= '<tr style="font-size: 14px;" class="stud-obhod"><td colspan="6"></td></tr>';
|
||
$content .= '</table>';
|
||
|
||
$out['html'] = $content;
|
||
}
|
||
|
||
//создание обходных листов
|
||
if ($_POST['ajdes'] == 'add_obhod'){
|
||
$user = (int) $_POST['user'];
|
||
|
||
$vib = $_POST['vib'];
|
||
$obj = $_POST['obj'];
|
||
$lib = $_POST['lib'];
|
||
$bfu = $_POST['bfu'];
|
||
$trud = $_POST['trud'];
|
||
|
||
$vib = ($vib == 'checked') ? 1 : 0;
|
||
$obj = ($obj == 'checked') ? 0 : 1;
|
||
$lib = ($lib == 'checked') ? 0 : 1;
|
||
$bfu = ($bfu == 'checked') ? 0 : 1;
|
||
$trud = ($trud == 'checked') ? 0 : 1;
|
||
/**/
|
||
$fak = $_POST['fak'];
|
||
$kaf = $_POST['kaf'];
|
||
|
||
if (($vib == 1) && ($user != 0)){
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_obhods (id_user, pl_fakult, pl_obj, pl_lib, pl_kaf, pl_bfu, pl_trud, comments, dekanat, kafedra) VALUES ("'.$user.'","0","'.$obj.'","'.$lib.'","0","'.$bfu.'","'.$trud.'"," ","'.$fak.'","'.$kaf.'" )';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Создан новый обходный лист для студента '.$user);
|
||
}
|
||
|
||
}
|
||
|
||
//подтверждение обходного
|
||
if ($_POST['ajdes'] == 'obhod_ok'){
|
||
$place = (int)$_POST['place'];
|
||
$id = (int)$_POST['id'];
|
||
$ww='';
|
||
if ($place == 0) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_fakult = "1" WHERE id = "'.$id.'" ';
|
||
$ww='fakult';
|
||
}
|
||
if ($place == 1) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_obj = "1" WHERE id = "'.$id.'" ';
|
||
$ww='obj';
|
||
}
|
||
if ($place == 2) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_lib = "1" WHERE id = "'.$id.'" ';
|
||
$ww='lib';
|
||
}
|
||
if ($place == 3) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_kaf = "1" WHERE id = "'.$id.'" ';
|
||
$ww='kaf';
|
||
}
|
||
if ($place == 4) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_bfu = "1" WHERE id = "'.$id.'" ';
|
||
$ww='bfu';
|
||
}
|
||
if ($place == 5) {
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_trud = "1" WHERE id = "'.$id.'" ';
|
||
$ww='trud';
|
||
}
|
||
|
||
$rez = $DB->QUR($sql);
|
||
save_logs('Одобрение ('.$ww.') обходного №'.$id);
|
||
}
|
||
|
||
//полное удаление обходного листа
|
||
if ($_POST['ajdes'] == 'obhod_delete'){
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_obhods WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
save_logs('Полное удаление обходного №'.$id);
|
||
}
|
||
|
||
//отклонение обходного
|
||
if ($_POST['ajdes'] == 'obhod_no'){
|
||
$comm = $_POST['comm'];
|
||
$place = $_POST['place'];
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_obhods WHERE `id` = "'.$id.'" ';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if ($rez1){
|
||
//$comm .= $rez[1]['comm'].'<br />';
|
||
if ($place == 0) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Деканат:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_fakult = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
if ($place == 1) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Общежитие:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_obj = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
if ($place == 2) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Библиотека:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_lib = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
if ($place == 3) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Выпускающая кафедра:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_kaf = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
if ($place == 4) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Бюджетно-финансовое управление:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_bfu = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
if ($place == 5) {
|
||
$comm = $rez1[1]['comments'].'<br /><b>Трудоустройство:</b> '.$comm;
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_obhods SET pl_trud = "-1", comments = "'.$comm.'" WHERE id = "'.$id.'" ';
|
||
}
|
||
}
|
||
|
||
|
||
$rez = $DB->QUR($sql);
|
||
save_logs('Отклонение обходного №'.$id);
|
||
}
|
||
|
||
//**************************//
|
||
|
||
if($_POST['ajdes']=='liquidation_ved_filter'){
|
||
if($_POST['filter']!='all') $_SESSION['liquidation_ved_filter_fo'] = $_POST['filter'];
|
||
else unset($_SESSION['liquidation_ved_filter_fo']);
|
||
}
|
||
if($_POST['ajdes']=='liquidation_ved_filter_year'){
|
||
if($_POST['filter']!='all') $_SESSION['liquidation_ved_filter_year'] = $_POST['filter'];
|
||
else unset($_SESSION['liquidation_ved_filter_year']);
|
||
}
|
||
if($_POST['ajdes']=='liquidation_ved_filter_yearnab'){
|
||
if($_POST['filter']!='all') $_SESSION['liquidation_ved_filter_yearnab'] = $_POST['filter'];
|
||
else unset($_SESSION['liquidation_ved_filter_yearnab']);
|
||
}
|
||
|
||
//ЛИКВИДАЦИЯ ЗАДОЛЖЕННОСТЕЙ
|
||
//вывод списка необходимых студентов
|
||
if ($_POST['ajdes'] == 'show_students'){
|
||
$id = (int)$_POST['id_grupp']; //преобразовываем к целому типу
|
||
|
||
//$content = '<option>123</option>';
|
||
$content = '';
|
||
$sql = 'SELECT us.*, stud.* FROM '.$ST['dbpf'].'_users as us, '.$ST['dbpf'].'_students as stud WHERE stud.id_grupp = "'.$id.'" AND us.id = stud.id_user AND us.status>-1 AND stud.status>0 ORDER BY us.fio';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
foreach ($rez as $key => $val) if ($key) {
|
||
$content .= '<option value="'.$val['id'].'">'.$val['fio'].'</option>';
|
||
}
|
||
}
|
||
|
||
$out['html'] = $content;
|
||
|
||
|
||
}
|
||
|
||
//вывод списка необходимых студентов
|
||
if ($_POST['ajdes'] == 'show_students_v'){
|
||
$id = (int)$_POST['id_grupp'];
|
||
|
||
//$content = '<option>123</option>';
|
||
$content = '';
|
||
$sql = 'SELECT us.*, stud.* FROM '.$ST['dbpf'].'_users as us, '.$ST['dbpf'].'_students as stud WHERE stud.id_grupp = "'.$id.'" AND us.id = stud.id_user AND us.status>-1 AND stud.status>0 ORDER BY us.fio';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
foreach ($rez as $key => $val) if ($key) {
|
||
$gr = get_student($val['id_user']);
|
||
$content .= '<label><input type="checkbox" name="students[]" value="'.$val['id'].'" data-num="'.$gr['num_grupp'].'" /> '.$val['fio'].' (Группа: '.$gr['sokr'].'-'.$gr['kurs'].$gr['num_grupp'].' '.$gr['fo'].') </label>';
|
||
}
|
||
}
|
||
|
||
$out['html'] = $content;
|
||
|
||
/*РАБОТАЕМ С УЧЕБНЫМ ПЛАНОМ*/
|
||
//теперь подхватываем дисциплины из учебного плана
|
||
$content = '';
|
||
|
||
$grupp = get_grupp($id); //информация о группе
|
||
if ($grupp['fo'] == 'ОФО') $fo = 'очная'; elseif ($grupp['fo'] == 'ЗФО') $fo = 'заочная'; else $fo = 'очно-заочная';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_plans WHERE shifr1 = "'.$grupp['specialnost'].'" AND godnap="'.$grupp['year_start'].'" AND forobu = "'.$fo.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
//$out['sql1'] = $sql;
|
||
//$out['rez1'] = $rez;
|
||
//sql1:"SELECT * FROM acs_iup_shahtplans_plans WHERE shifr1 = \"\" AND godnap=\"2023\" AND forobu = \"заочная\" "
|
||
$id_plans = '';
|
||
if ($rez) foreach ($rez as $key => $val) if ($key) $id_plans .= $val['id'].',';
|
||
$id_plans .= '0';
|
||
|
||
//теперь обходим дисциплины плана или планов, если их было несколько
|
||
//$sql_str = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE id_plans = "'.$rez[1]['id'].'" GROUP BY discip ORDER BY discip LIMIT 250 ';
|
||
$sql_str = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE id_plans IN ('.$id_plans.') GROUP BY discip ORDER BY discip LIMIT 500 ';
|
||
//$content .= '<option>'.$id_plans.'</option>';
|
||
$content .= '<option value="">Выберите или впишите вручную</option>';
|
||
$rez_str = $DB->QUR_SEL($sql_str);
|
||
//$out['sql2'] = $sql_str;
|
||
//$out['rez2'] = $rez_str;
|
||
//sql2:"SELECT * FROM acs_iup_shahtplans_stroki WHERE id_plans IN (0) GROUP BY discip ORDER BY discip LIMIT 500 "
|
||
if ($rez_str){
|
||
foreach ($rez_str as $key => $val) if ($key){
|
||
$content .= '<option value="'.$val['discip'].'">'.$val['discip'].'</option>';
|
||
}
|
||
}
|
||
$out['predmets'] = $content;
|
||
}
|
||
|
||
//выставление оценки по направлению
|
||
if ($_POST['ajdes'] == 'mark_liq'){
|
||
$id = (int)$_POST['id'];
|
||
$mark = $_POST['mark'];
|
||
$date = date("U");
|
||
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_liquidation SET mark = "'.$mark.'", date_mark = "'.$date.'" WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Преподаватель выставил оценку по направлению №'.$id);
|
||
}
|
||
|
||
//выставление оценок в ведомость
|
||
if ($_POST['ajdes'] == 'mark_stat'){
|
||
$id = $_POST['id'];
|
||
$result = $_POST['result'];
|
||
$pass = $_POST['pass'];
|
||
$date = date("U");
|
||
|
||
include_once 'inc/ps01salt.php';
|
||
$pass = md5($ps01salt[1].$pass.$ps01salt[2]);
|
||
|
||
$out['error'] = 0; //совпадает ли пароль (1 - да, 0 - нет)
|
||
|
||
$id_user = $_SESSION['user']['id'];
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_users WHERE id = "'.$id_user.'" AND pass = "'.$pass.'" LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
if ($rez){
|
||
$out['error']=$rez[0];
|
||
}
|
||
|
||
$out['error'] = 1; //на пароль забиваем, он теперь не нужен
|
||
|
||
if ($out['error'] == 1){
|
||
|
||
$part = explode(';', $result);
|
||
$i = 0;
|
||
while ($i <= count($part)){
|
||
|
||
$ch = explode('-', $part[$i]);
|
||
|
||
if ($ch[0] != '0'){
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_liquidation SET mark = "'.$ch[0].'", date_mark = "'.$date.'" WHERE id = "'.$ch[1].'" ';
|
||
$rez = $DB->QUR($sql);
|
||
}
|
||
$i++;
|
||
}
|
||
|
||
save_logs('Преподаватель заполнил зачетно-экзаменнационную ведомость №'.$id);
|
||
}
|
||
}
|
||
|
||
//удаление направления
|
||
if ($_POST['ajdes'] == 'del_napr'){
|
||
$id = (int)$_POST['id'];
|
||
//21.12.2023 закоментил
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_liquidation WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удалено направление №'.$id);
|
||
$out['html'] = '';
|
||
}
|
||
|
||
//убрать оценку
|
||
if ($_POST['ajdes'] == 'zero_napr'){
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_liquidation SET mark = NULL and date_mark = NULL WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удалена оценка по направлению №'.$id);
|
||
$out['html'] = '';
|
||
}
|
||
|
||
//удаление ведомости
|
||
if ($_POST['ajdes'] == 'del_stat'){
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_statement WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_liquidation WHERE `id_stat` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удалена ведомость №'.$id);
|
||
$out['html'] = '';
|
||
}
|
||
//редактирование ведомости
|
||
if ($_POST['ajdes'] == 'edt_stat'){
|
||
$id = (int)$_POST['id'];
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_statement WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$out['statement'] = $rez[1];
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_liquidation WHERE `id_stat` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez) {
|
||
foreach($rez as $k => $v)if($k!=0) {
|
||
$v['date_end'] = date('Y-m-d',$v['date_end']);
|
||
$out['liquidation'][] = $v;
|
||
}
|
||
}
|
||
}
|
||
//{
|
||
// "statement": {
|
||
// "id": "55977",
|
||
// "date_create": "1694604778",
|
||
// "fakultet": "Технологический факультет",
|
||
// "print_st": "0",
|
||
// "id_grupp": "334"
|
||
// },
|
||
// "liquidation": [
|
||
// {
|
||
// "id": "750389", "id_student": "6726", "id_teacher": "7089", "fakultet": "Технологический факультет",
|
||
// "type": "2", "iup": "0", "name": "Проектная практика", "control": "6", "date_create": "1694604778",
|
||
// "date_end": "1701291600", "semestr": "8", "mark": null, "date_mark": null, "id_stat": "55977",
|
||
// "print": "0", "id_user": "7967"
|
||
// },
|
||
// {
|
||
// "id": "750387", "id_student": "9746", "id_teacher": "7089", "fakultet": "Технологический факультет",
|
||
// "type": "2", "iup": "0", "name": "Проектная практика", "control": "6", "date_create": "1694604778",
|
||
// "date_end": "1701291600", "semestr": "8", "mark": null, "date_mark": null, "id_stat": "55977",
|
||
// "print": "0", "id_user": "11588"
|
||
// },
|
||
// ],
|
||
// "html": ""
|
||
//}
|
||
$out['html'] = '';
|
||
}
|
||
|
||
//очистка ведомости
|
||
if ($_POST['ajdes'] == 'clear_stat'){
|
||
$id = (int)$_POST['id'];
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_liquidation SET mark = NULL and date_mark = NULL WHERE `id_stat` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Очищена от оценок ведомость №'.$id);
|
||
$out['html'] = '';
|
||
}
|
||
|
||
|
||
/*********************/
|
||
|
||
//активность преподавателей
|
||
if ($_POST['ajdes'] == 'active_prepod'){
|
||
|
||
$id_kaf = $_POST['id_kaf'];
|
||
$date_d = strtotime($_POST['date_d']);
|
||
|
||
|
||
//день недели
|
||
$week = date("W",$date_d);
|
||
$day = date("w",$date_d);
|
||
|
||
$content = '<tr style="background: #E6E6FA;">
|
||
<th>№ п/п</th>
|
||
<th>ФИО преподавателя</th>
|
||
<th>1 пара <br />(8.00 - 9.30)</th>
|
||
<th>2 пара <br />(9.40 - 11.10)</th>
|
||
<th>3 пара <br />(11.30 - 13.00)</th>
|
||
<th>4 пара <br />(13.10 - 14.40)</th>
|
||
<th>5 пара <br />(15.00 - 16.30)</th>
|
||
<th>6 пара <br />(16.40 - 18.10)</th>
|
||
<th>7 пара <br />(18.20 - 19.50)</th>
|
||
<th>8 пара <br />(20.00 - 21.30)</th>
|
||
</tr>';
|
||
|
||
if ($id_kaf != 'Политехнический колледж МГТУ') $sql = 'SELECT teach.*, kaf.*, us.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_kafedres as kaf, '.$ST['dbpf'].'_users as us WHERE teach.kafedra = kaf.name AND kaf.id = "'.$id_kaf.'" AND us.id = teach.id_user';
|
||
else $sql = 'SELECT teach.*, us.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as us WHERE teach.kafedra = "Политехнический колледж МГТУ" AND us.id = teach.id_user';
|
||
|
||
//неточности
|
||
if ($id_kaf == 7) $sql = 'SELECT teach.*, us.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as us WHERE teach.kafedra LIKE "%Маркетинга%" AND us.id = teach.id_user';
|
||
if ($id_kaf == 4) $sql = 'SELECT teach.*, us.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as us WHERE teach.kafedra LIKE "%Автомобильного%" AND us.id = teach.id_user';
|
||
if ($id_kaf == 21) $sql = 'SELECT teach.*, us.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as us WHERE teach.kafedra LIKE "%Фармац%" AND us.id = teach.id_user ';
|
||
|
||
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
|
||
//записываем названия пар
|
||
$url = 'http://local.mkgtu.ru/calchour_2020/get_json.php?json=get_raspis_prepod&fio='.urlencode($val['fio']).' ';
|
||
$json = file_get_contents($url);
|
||
$json1 = json_decode($json,1);
|
||
|
||
//список дисциплин по расписанию, который заполнять будем
|
||
$predmet1 = '';
|
||
$predmet2 = '';
|
||
$predmet3 = '';
|
||
$predmet4 = '';
|
||
$predmet5 = '';
|
||
$predmet6 = '';
|
||
$predmet7 = '';
|
||
$predmet8 = '';
|
||
|
||
//список групп
|
||
$gr1 = '';
|
||
$gr2 = '';
|
||
$gr3 = '';
|
||
$gr4 = '';
|
||
$gr5 = '';
|
||
$gr6 = '';
|
||
$gr7 = '';
|
||
$gr8 = '';
|
||
|
||
$k = 0;
|
||
//foreach ($json1[2] as $kk => $v) if ($kk){
|
||
while ($k <= count($json1[2])){
|
||
if ($json1[2][$k]['week1'] == (($week % 2)+1)) if ($json1[2][$k]['day1'] == $day ){
|
||
//какая аудитория
|
||
$aud = $json1[2][$k]['name_audit'];
|
||
if ($aud == 'ЭИОС') $aud = '<span class="badge badge-warning">'.$aud.'</span>';
|
||
elseif ($aud == 'ZOOM') $aud = '<span class="badge badge-info">'.$aud.'</span>';
|
||
else $aud = '<span class="badge badge-primary">'.$aud.'</span>';
|
||
|
||
//само расписание
|
||
if ($json1[2][$k]['time1'] == 1) $predmet1 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 2) $predmet2 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 3) $predmet3 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 4) $predmet4 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 5) $predmet5 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 6) $predmet6 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 7) $predmet7 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
if ($json1[2][$k]['time1'] == 8) $predmet8 = $aud.'<br />'.$json1[2][$k]['predmet'].' <i>(группа: '.$json1[2][$k]['name_grupp'].'-'.$json1[2][$k]['numer'].')</i>';
|
||
}
|
||
$k++;
|
||
}
|
||
|
||
//Расписание пар
|
||
$p1 = $date_d + 8*60*60;
|
||
$p2 = $date_d + 9*60*60 + 40*60;
|
||
$p3 = $date_d + 11*60*60 + 30*60;
|
||
$p4 = $date_d + 13*60*60 + 10*60;
|
||
$p5 = $date_d + 15*60*60;
|
||
$p6 = $date_d + 16*60*60 + 40*60;
|
||
$p7 = $date_d + 18*60*60 + 20*60;
|
||
$p8 = $date_d + 20*60*60;
|
||
|
||
//ПРОВЕРКА ПОСЕЩАЕМОСТИ ОПТИМИЗИРОВАННАЯ
|
||
$sql_check = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE NOT (message LIKE "%Вошел%") AND message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$date_d.'" AND data_c <= "'.($date_d * 24*60*60).'" ';
|
||
//$sql_check = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$date_d.'" AND data_c <= "'.($date_d * 24*60*60).'" ';
|
||
$rez_check = $DB->QUR_SEL($sql_check);
|
||
|
||
if ($rez_check){
|
||
$is1 = 0;
|
||
$is2 = 0;
|
||
$is3 = 0;
|
||
$is4 = 0;
|
||
$is5 = 0;
|
||
$is6 = 0;
|
||
$is7 = 0;
|
||
$is8 = 0;
|
||
|
||
foreach ($rez_check as $kk => $v) if ($kk){
|
||
if (($v['data_c'] >= $p1)&&($v['data_c'] <= ($p1 + 90*60))) $is1++;
|
||
if (($v['data_c'] >= $p2)&&($v['data_c'] <= ($p2 + 90*60))) $is2++;
|
||
if (($v['data_c'] >= $p3)&&($v['data_c'] <= ($p3 + 90*60))) $is3++;
|
||
if (($v['data_c'] >= $p4)&&($v['data_c'] <= ($p4 + 90*60))) $is4++;
|
||
if (($v['data_c'] >= $p5)&&($v['data_c'] <= ($p5 + 90*60))) $is5++;
|
||
if (($v['data_c'] >= $p6)&&($v['data_c'] <= ($p6 + 90*60))) $is6++;
|
||
if (($v['data_c'] >= $p7)&&($v['data_c'] <= ($p7 + 90*60))) $is7++;
|
||
if (($v['data_c'] >= $p8)&&($v['data_c'] <= ($p8 + 90*60))) $is8++;
|
||
}
|
||
}
|
||
|
||
|
||
/*
|
||
$sql_p1 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p1.'" AND data_c <= "'.($p1 + 90*60).'" ';
|
||
$rez_p1 = $DB->QUR_SEL($sql_p1);
|
||
|
||
$sql_p2 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p2.'" AND data_c <= "'.($p2 + 90*60).'" ';
|
||
$rez_p2 = $DB->QUR_SEL($sql_p2);
|
||
|
||
$sql_p3 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p3.'" AND data_c <= "'.($p3 + 90*60).'" ';
|
||
$rez_p3 = $DB->QUR_SEL($sql_p3);
|
||
|
||
$sql_p4 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p4.'" AND data_c <= "'.($p4 + 90*60).'" ';
|
||
$rez_p4 = $DB->QUR_SEL($sql_p4);
|
||
|
||
$sql_p5 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p5.'" AND data_c <= "'.($p5 + 90*60).'" ';
|
||
$rez_p5 = $DB->QUR_SEL($sql_p5);
|
||
|
||
$sql_p6 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p6.'" AND data_c <= "'.($p6 + 90*60).'" ';
|
||
$rez_p6 = $DB->QUR_SEL($sql_p6);
|
||
|
||
$sql_p7 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p7.'" AND data_c <= "'.($p7 + 90*60).'" ';
|
||
$rez_p7 = $DB->QUR_SEL($sql_p7);
|
||
|
||
$sql_p8 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= "'.$p8.'" AND data_c <= "'.($p8 + 90*60).'" ';
|
||
$rez_p8 = $DB->QUR_SEL($sql_p8);
|
||
*/
|
||
|
||
$i++;
|
||
$content .= '<tr>
|
||
<td>'.$i.'</td>
|
||
<td>'.$val['fio'].'</td>';
|
||
/*if ($is1 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is2 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is3 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is4 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is5 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is6 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is7 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>';
|
||
if ($is8 > 0) $content .= '<td style="background: #87bb33;"></td>'; else $content .= '<td style="background: #dc5d3a;"></td>'; */
|
||
|
||
if ($is1 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet1.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet1.'</td>';
|
||
if ($is2 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet2.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet2.'</td>';
|
||
if ($is3 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet3.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet3.'</td>';
|
||
if ($is4 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet4.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet4.'</td>';
|
||
if ($is5 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet5.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet5.'</td>';
|
||
if ($is6 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet6.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet6.'</td>';
|
||
if ($is7 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet7.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet7.'</td>';
|
||
if ($is8 > 0) $content .= '<td style="background: #87bb33;" width="10%">'.$predmet8.'</td>'; else $content .= '<td style="background: #dc5d3a;" width="10%">'.$predmet8.'</td>';
|
||
|
||
/*if ($rez_p1[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p2[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p3[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p4[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p5[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p6[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p7[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';
|
||
if ($rez_p8[0] > 0) $content .= '<td style="background: #87bb33;">1</td>'; else $content .= '<td style="background: #dc5d3a;">0</td>';*/
|
||
$content .='</tr>';
|
||
}
|
||
}
|
||
|
||
|
||
$out['html'] = $content;
|
||
}
|
||
|
||
//активность студентов
|
||
if ($_POST['ajdes'] == 'active_stud'){
|
||
|
||
$id_grupp = $_POST['id_grupp'];
|
||
$podgrupp = $_POST['podgrupp'];
|
||
|
||
$content = '';
|
||
|
||
/****/
|
||
$users=array();
|
||
$m1=array('Вошел пользователь');
|
||
$m2=array('Вход');
|
||
if ($podgrupp!='') $podgrupp_sql = ' AND s.num_grupp = "'.$podgrupp.'"';
|
||
$sql = 'SELECT u.id as uid,u.fio,u.email,u.foto,s.* FROM '.$ST['dbpf'].'_students as s,'.$ST['dbpf'].'_users as u WHERE s.id_user=u.id '.$podgrupp_sql.' AND s.id_grupp = "'.$id_grupp.'" AND u.status>-1 ORDER BY u.fio';
|
||
|
||
//$content = $sql;
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
$content = print_r($rez,1);
|
||
if($rez){
|
||
foreach($rez as $key => $val)if($key){
|
||
//$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" ORDER BY data_c DESC';
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= 1693515600 ORDER BY data_c DESC';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['data_c'] = date('H:i <b>d.m.Y</b>',$val1['data_c']);
|
||
$val1['message'] = str_replace($m1,$m2,$val1['message']);
|
||
$val1['message'] = str_replace($val['fio'],'',$val1['message']);
|
||
$val1['message'] = str_replace($val['uid'],'',$val1['message']);
|
||
$val1['message'] = str_replace('id:','',$val1['message']);
|
||
$val1['message'] = str_replace('-: ','',$val1['message']);
|
||
$val1['message'] = str_replace(' :','',$val1['message']);
|
||
$val['logs'][] = $val1;
|
||
}
|
||
}
|
||
$users[] = $val;
|
||
}
|
||
}
|
||
|
||
$i = 0;
|
||
foreach ($users as $key => $val) if ($key){
|
||
$i++;
|
||
if ($i % 3 == 1) $content .= '<tr>';
|
||
$content .= '<td width="33%"><h4 align="center">'.$val['fio'].'</h4><p style="max-width: 350px; word-wrap: break-word;">';
|
||
|
||
foreach ($val['logs'] as $key2 => $val2) if ($key2){
|
||
$content .= $val2['data_c'].': '.$val2['message'].'<br />';
|
||
}
|
||
|
||
$content .= '</p></td>';
|
||
if ($i % 3 == 0) $content .= '</tr>';
|
||
}
|
||
if ($i % 3 != 0) $content .= '</tr>';
|
||
|
||
$out['html'] = $content;
|
||
}
|
||
|
||
//активность кафедры
|
||
if ($_POST['ajdes'] == 'active_kaf'){
|
||
$kafedra = $_POST['kafedra'];
|
||
$date_start = strtotime($_POST['date_start']);
|
||
$date_end = strtotime($_POST['date_end']);
|
||
$part = $_POST['part'];
|
||
//echo date('H:i:s d.m.Y',$date_start).' - '.date('H:i:s d.m.Y',$date_end);
|
||
//00:00:00 25.04.2020 - 00:00:00 25.04.2020
|
||
$content = '';
|
||
|
||
/*****/
|
||
$users=array();
|
||
$m1=array('Вошел пользователь');
|
||
$m2=array('Вход');
|
||
if ($part == 0) $sql = 'SELECT u.id as uid,u.fio,u.email,u.foto,t.* FROM '.$ST['dbpf'].'_teachers as t,'.$ST['dbpf'].'_users as u WHERE t.id_user=u.id AND t.kafedra="'.$kafedra.'" AND NOT (u.fio = "") AND u.status>-1 AND t.status>-1 ORDER BY u.fio ';
|
||
else {
|
||
if ($part == 1) $sql = 'SELECT u.id as uid,u.fio,u.email,u.foto,t.* FROM '.$ST['dbpf'].'_teachers as t,'.$ST['dbpf'].'_users as u WHERE t.id_user=u.id AND t.kafedra="'.$kafedra.'" AND u.status>-1 AND t.status>-1 AND NOT (u.fio = "") ORDER BY u.fio LIMIT 15';
|
||
else {
|
||
$c = ($part-1) * 14;
|
||
$sql = 'SELECT u.id as uid,u.fio,u.email,u.foto,t.* FROM '.$ST['dbpf'].'_teachers as t,'.$ST['dbpf'].'_users as u WHERE t.id_user=u.id AND t.kafedra="'.$kafedra.'" AND u.status>-1 AND t.status>-1 AND NOT (u.fio = "") ORDER BY u.fio LIMIT '.$c.',15';
|
||
}
|
||
|
||
}
|
||
//echo $sql;
|
||
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
//echo $sql.'<pre>'.print_r($rez,1).'</pre>';
|
||
if($rez){
|
||
foreach($rez as $key => $val)if($key){
|
||
//$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" ORDER BY data_c DESC';
|
||
$sql1 = 'SELECT * FROM '.$ST['dbpf'].'_logs WHERE message LIKE "%'.$val['fio'].'%" AND data_c >= '.$date_start.' AND data_c <= '.$date_end.' ORDER BY data_c DESC';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
//echo $sql1.'<pre>'.print_r($rez1,1).'</pre>';
|
||
if($rez1){
|
||
foreach($rez1 as $key1 => $val1)if($key1){
|
||
$val1['data_c'] = date('H:i <b>d.m.Y</b>',$val1['data_c']);
|
||
$val1['message'] = str_replace($m1,$m2,$val1['message']);
|
||
$val1['message'] = str_replace($val['fio'],'',$val1['message']);
|
||
$val1['message'] = str_replace($val['uid'],'',$val1['message']);
|
||
$val1['message'] = str_replace('id:','',$val1['message']);
|
||
$val1['message'] = str_replace('-: ','',$val1['message']);
|
||
$val1['message'] = str_replace(' :','',$val1['message']);
|
||
$val['logs'][] = $val1;
|
||
}
|
||
}
|
||
$users[] = $val;
|
||
}
|
||
}
|
||
|
||
$i = 0;
|
||
foreach ($users as $key => $val){
|
||
$i++;
|
||
if ($i % 3 == 1) $content .= '<tr>';
|
||
$content .= '<td width="33%"><h4 align="center">'.$val['fio'].'</h4><p style="max-width: 350px; word-wrap: break-word;">';
|
||
|
||
foreach ($val['logs'] as $key2 => $val2) if ($key2){
|
||
$content .= $val2['data_c'].': '.$val2['message'].'<br />';
|
||
}
|
||
|
||
$content .= '</p></td>';
|
||
if ($i % 3 == 0) $content .= '</tr>';
|
||
}
|
||
if ($i % 3 != 0) $content .= '</tr>';
|
||
|
||
|
||
//$content = '12222212312312323';
|
||
$out['html'] = $content;
|
||
|
||
}
|
||
|
||
//СВЕДЕНИЯ О НАУЧНО-ПЕДАГОГИЧЕСКОМ РАБОТНИКЕ
|
||
//удаление информации об образовании
|
||
if ($_POST['ajdes'] == 'del_education'){
|
||
$out['html'];
|
||
|
||
$id = (int) $_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_education WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
}
|
||
|
||
//удаление информации о повышении квалифицации
|
||
if ($_POST['ajdes'] == 'del_skill'){
|
||
$out['html'];
|
||
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_skills_qual WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);
|
||
}
|
||
|
||
//обновление информации о повышении квалификации
|
||
if ($_POST['ajdes'] == 'save_skill'){
|
||
$out['html'];
|
||
|
||
$id = (int) $_POST['id'];
|
||
|
||
$name = $_POST['name'];
|
||
$place = $_POST['place'];
|
||
$organization = $_POST['organization'];
|
||
$docs = $_POST['docs'];
|
||
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_skills_qual SET name = "'.$name.'", place = "'.$place.'", organization = "'.$organization.'", number_docs = "'.$docs.'" WHERE id = '.$id.'';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
}
|
||
|
||
//ALNEO UNIVERSITY
|
||
|
||
//функция, возвращаюся все учебные заведения в табличной форме
|
||
function schools_table(){
|
||
GLOBAL $DB, $ST;
|
||
|
||
$str = '';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_schools';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach($rez as $key => $val) if ($key){
|
||
$i++;
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["name"].'</td><td><span class="btn btn-danger delete-school" data-id="'.$val["id"].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//функция - возврат всех факультетов в табличной форме
|
||
function faculties_table(){
|
||
GLOBAL $DB, $ST;
|
||
|
||
$str = '';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_faculties';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$i++;
|
||
|
||
$sql_school = 'SELECT * FROM '.$ST['dbpf'].'_schools WHERE `id` = "'.$val["id_school"].'"';
|
||
$rez_school = $DB->QUR_SEL($sql_school);
|
||
$val['id_school'] = $rez_school[1]["name"];
|
||
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["name"].'</td><td>'.$val['id_school'].'</td><td><span class="btn btn-danger delete-school" data-id="'.$val['id'].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//возврат всех кафедр в табличной форме
|
||
function kafedres_table(){
|
||
GLOBAL $DB, $ST;
|
||
$str = '';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_kafedres';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$i++;
|
||
|
||
$sql_facult = 'SELECT * FROM '.$ST['dbpf'].'_faculties WHERE `id` = "'.$val["id_facult"].'"';
|
||
$rez_facult = $DB->QUR_SEL($sql_facult);
|
||
$val['id_facult'] = $rez_facult[1]["name"];
|
||
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["name"].'</td><td>'.$val['id_facult'].'</td><td>'.$val['code'].'</td><td><span class="btn btn-danger delete-kafedra" data-id="'.$val['id'].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//функция, возвращая строку все направления подготовки в табличной форме
|
||
function areas_table(){
|
||
GLOBAL $DB, $ST;
|
||
|
||
$str = '';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_areas ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$i = 0;
|
||
foreach($rez as $key => $val)if($key){
|
||
$i++;
|
||
|
||
$sql_kafedra = 'SELECT * FROM '.$ST['dbpf'].'_kafedres WHERE `id` = "'.$val["id_kafedra"].'"';
|
||
$rez_kafedra = $DB->QUR_SEL($sql_kafedra);
|
||
$val["id_kafedra"] = $rez_kafedra[1]["name"];
|
||
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["code"].'</td><td>'.$val["name"].'</td><td>'.$val["id_kafedra"].'</td><td><span class="btn btn-danger delete-area" data-id="'.$val["id"].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//функция возврата всех профилей подготовки
|
||
function profiles_table(){
|
||
GLOBAL $DB, $ST;
|
||
|
||
$str = '';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_profile ORDER BY `id_areas`';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
//направление подготовки расписываем более подробно
|
||
$sql_area = 'SELECT * FROM '.$ST['dbpf'].'_areas WHERE `id` = "'.$val["id_areas"].'"';
|
||
$rez_area = $DB->QUR_SEL($sql_area);
|
||
$val['id_areas'] = $rez_area[1]['name'];
|
||
|
||
$str .= '<tr><td>'.$key.'</td><td>'.$val["name"].'</td><td>'.$val['id_areas'].'</td><td><span class="btn btn-danger delete-profile" data-id="'.$val["id"].'">Удалить</span></td>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//функция возврата всех годов и форм обучения в табличной форме
|
||
function start_profile_table(){
|
||
GLOBAL $DB, $ST;
|
||
$str = '';
|
||
//года и форма обучения
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_profile_start ORDER BY `id_profile`';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$i++;
|
||
//выводим профиль подготовки
|
||
$sql_profile = 'SELECT * FROM '.$ST['dbpf'].'_profile WHERE `id` = "'.$val["id_profile"].'"';
|
||
$rez_profile = $DB->QUR_SEL($sql_profile);
|
||
$val['id_profile'] = $rez_profile[1]["name"];
|
||
|
||
if ($val["forma"] == 1) $val["forma"] = "очная";
|
||
else $val["forma"] = "заочная";
|
||
|
||
$str .= '<tr><td>'.$i.'</td><td>'.$val["id_profile"].'</td><td>'.$val["year"].' ('.$val["forma"].')</td><td><span class="btn btn-danger delete-profile-start" data-id="'.$val["id"].'">Удалить</span></td></tr>';
|
||
}
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//добавление нового учебного заведения
|
||
if ($_POST["ajdes"] == "add_school"){
|
||
$out["html"] = '';
|
||
|
||
$error = 0;
|
||
//принимаем значения
|
||
$name = $DB->rescape($_POST["name"]);
|
||
|
||
if ($name == '') $error = 1;
|
||
if ($error == 0){ //если нет ошибок, то продолжаем работу дальше
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_schools (`name`) VALUES ("'.$name.'")';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = schools_table();
|
||
}
|
||
}
|
||
|
||
//удаление учебного заведения
|
||
if ($_POST["ajdes"] == "delete_school"){
|
||
$out['html'] = '';
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_schools WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = schools_table();
|
||
}
|
||
|
||
//добавление нового факультета
|
||
if ($_POST["ajdes"] == "add_facult"){
|
||
$out['html'] = '';
|
||
|
||
$error = 0;
|
||
|
||
$school = (int) $_POST["school"];
|
||
$name = $_POST["name"];
|
||
if ($school == '') $error = 1;
|
||
if ($name == '') $error = 1;
|
||
|
||
if ($error == 0){ //если нет ошибок
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_faculties (`id_school`, `name`) VALUES ("'.$school.'", "'.$name.'")';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out['html'] = faculties_table();
|
||
}
|
||
|
||
}
|
||
|
||
//удаление факультета
|
||
if ($_POST["ajdes"] == "delete_facult"){
|
||
$out['html'] = '';
|
||
|
||
$id = (int) $_POST["id"];
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_faculties WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out['html'] = faculties_table();
|
||
}
|
||
|
||
//добавление новой кафедры
|
||
if ($_POST["ajdes"] == "add_kaf"){
|
||
$out['html'] = '';
|
||
|
||
$error = 0;
|
||
|
||
$name = $_POST["name"];
|
||
$facult = (int)$_POST["facult"];
|
||
$code = $_POST["code"];
|
||
|
||
if ($name == '') $error = 1;
|
||
if ($facult == '') $error = 1;
|
||
if ($code == '') $error = 1;
|
||
|
||
//если нет ошибок
|
||
if ($error == 0){
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_kafedres (`id_facult`, `name`, `code`) VALUES ("'.$facult.'", "'.$name.'", "'.$code.'")';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out['html'] = kafedres_table();
|
||
}
|
||
}
|
||
//удаление кафедры
|
||
if ($_POST["ajdes"] == "delete_kafedra"){
|
||
$out["html"] = '';
|
||
|
||
$id = (int)$_POST["id"];
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_kafedres WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql); //исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = kafedres_table();
|
||
}
|
||
//редактирование кафедры
|
||
if ($_POST["ajdes"] == "edit_kafedra"){
|
||
$out["html"] = '';
|
||
$id = (int)$_POST["id"];
|
||
$fak_new = (int)$_POST["fak_new"];
|
||
$kod_new = $DB->rescape($_POST["kod_new"]);
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_kafedres SET id_facult='.$fak_new.',code="'.$kod_new.'" WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);
|
||
//$out['html'] = print_r($rez,1);
|
||
}
|
||
|
||
//добавление направлений подготовки
|
||
if ($_POST["ajdes"] == "add_areas"){
|
||
$out['html'] = '';
|
||
|
||
$error = 0;
|
||
//принимаем все значения
|
||
$code = $DB->rescape($_POST["code"]);
|
||
$name = $DB->rescape($_POST["name"]);
|
||
$kafedra = (int)$_POST["kafedra"];
|
||
|
||
if ($code == '') $error = 1;
|
||
if ($name == '') $error = 1;
|
||
if ($kafedra == '') $error = 1;
|
||
if ($error == 0){ //если ошибок нет, то продолжаем работу дальше
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_areas (`code`, `name`, `id_kafedra`) VALUES ("'.$code.'", "'.$name.'", "'.$kafedra.'")';
|
||
$rez = $DB->QUR($sql); //добавляем в базу исправить SQL иньекцию!!!
|
||
|
||
//для экономии времени заполнения - дублируем название направления подготовки и профиля подготовки.
|
||
//в начале достаем айдишник последней добавленной записи
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_areas ORDER BY `id` DESC LIMIT 1';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
$id_areas = $rez[1]['id'];
|
||
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_profile (`id_areas`, `name`) VALUES ("'.$id_areas.'", "'.$name.'")';
|
||
$rez = $DB->QUR($sql); //добавляем в базу
|
||
|
||
|
||
//теперь делаем выборку данных и выводим информацию
|
||
$out['html'] = areas_table();
|
||
$out['profiles'] = profiles_table();
|
||
|
||
}
|
||
}
|
||
|
||
//удаление направления подготовки
|
||
if ($_POST["ajdes"] == "delete_area"){
|
||
$out['html'] = '';
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_areas WHERE `id` = '.$id.' ';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = areas_table();
|
||
}
|
||
|
||
//добавление профиля подготовки
|
||
if ($_POST['ajdes'] == 'add_areas_profile'){
|
||
$out['html'] = '';
|
||
|
||
$error = 0;
|
||
$name = $DB->rescape($_POST['name']);
|
||
$profile = $DB->rescape($_POST['profile']);
|
||
|
||
if ($name == '') $error = 1;
|
||
if ($profile == '') $error = 1;
|
||
if ($error == 0){
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_profile (`id_areas`, `name`) VALUES ("'.$profile.'", "'.$name.'")';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = profiles_table();
|
||
}
|
||
}
|
||
|
||
//удаление профиля подготовки
|
||
if ($_POST['ajdes'] == 'delete_profile'){
|
||
$out['html'] = '';
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_profile WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = profiles_table();
|
||
}
|
||
|
||
//добавление годов набора и формы обучения
|
||
if ($_POST['ajdes'] == "add_profile_start"){
|
||
$out['html'] = '';
|
||
|
||
$error = 0;
|
||
$profile = $_POST["profile"];
|
||
$years = $_POST["years"];
|
||
$forms = $_POST["forms"];
|
||
if ($profile == '') $error = 1;
|
||
if ($years == '') $error = 1;
|
||
if ($forms == '') $error = 1;
|
||
if ($error == 0){
|
||
//в начале делаем перебор по годам
|
||
$year = explode(",", $years);
|
||
$i = 0;
|
||
while ($i < (count($year)-1)){
|
||
//после делаем перебор по формам обучения
|
||
$form = explode(",", $forms);
|
||
$j = 0;
|
||
while ($j < (count($form)-1)){
|
||
//предварительно делаем проверку, есть ли такая запись уже в таблице
|
||
$sql_is = 'SELECT * FROM '.$ST['dbpf'].'_profile_start WHERE `id_profile` = "'.$profile.'" AND `year` = "'.$year[$i].'" AND `forma` = "'.$form[$j].'"';
|
||
$rez_is = $DB->QUR_SEL($sql_is);//исправить SQL иньекцию!!!
|
||
|
||
if ($rez_is[0] == 0){ //если таких записей нет, то добавляем, тем самым избавляемся от дублей
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_profile_start (`id_profile`, `year`, `forma`) VALUES ("'.$profile.'", "'.$year[$i].'", "'.$form[$j].'")';
|
||
$rez = $DB->QUR($sql);
|
||
}
|
||
|
||
$j++;
|
||
}
|
||
$i++;
|
||
}
|
||
|
||
}
|
||
|
||
$out['html'] = start_profile_table();
|
||
}
|
||
|
||
//удаление данной формы и года начала обучения
|
||
if ($_POST["ajdes"] == "delete_profile_start"){
|
||
$out['html'] = '';
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_profile_start WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = start_profile_table();
|
||
}
|
||
|
||
//функция возвращающая в табличном виде №п/п,группу, руководителя и возможные операции
|
||
function fixed_table($id_pract){
|
||
GLOBAL $DB, $ST;
|
||
$str = '';
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_practice_teachers WHERE `id_pract` = "'.$id_pract.'"';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
$i = 0;
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$i++;
|
||
|
||
$sql_gr = 'SELECT * FROM '.$ST['dbpf'].'_grupp WHERE `id` = "'.$val["id_group"].'"';
|
||
$rez_gr = $DB->QUR_SEL($sql_gr);
|
||
$grupp = $rez_gr[1]["sokr"].'-'.$rez_gr[1]["kurs"].$val["num"].' '.$rez_gr["fo"];
|
||
|
||
$sql_prepod = 'SELECT * FROM'.$ST['dbpf'].'_teachers WHERE `id` = "'.$val["id_prepod"].'"';
|
||
$rez_prepod = $DB->QUR_SEL($sql_prepod);
|
||
$fio = $rez_prepod[1]["fio"];
|
||
|
||
$str .= $id_pract;
|
||
//$str .= '<tr><td>'.$i.'</td><td>'.$grupp.'</td><td>'.$fio.'</td><td></td></tr>';
|
||
}
|
||
|
||
return $str;
|
||
}
|
||
|
||
//закрепление групп студентов за руководителями
|
||
if ($_POST["ajdes"] == "fixing_group"){
|
||
$out['html'] = '';
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
|
||
//$sql = 'SELECT * FROM '.$ST['dbpf'].'_practices WHERE `id` = "'.$id.'"';
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_stroki WHERE `id` = "'.$id.'"';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
$out['semestr'] = $rez[1]['sem'];
|
||
//$out['semestr'] = $rez[1]["semestr"];
|
||
$out['name'] = $rez[1]["discip"];
|
||
|
||
$string = $rez[1]['discid'];
|
||
if (stripos($string, '(У)')) $out['type'] = 'Учебная';
|
||
elseif (stripos($string, '(П)')) $out['type'] = 'Производственная';
|
||
else $out['type'] = 'Преддипломная';
|
||
$out['duration'] = $rez[1]["zet"]*2/3;
|
||
|
||
if ($rez[1]['ekz'] == '1') $out['control'] = 'экзамен';
|
||
else $out['control'] = 'зачет';
|
||
|
||
$out['reporting'] = $rez[1]["reporting"];
|
||
$id_start = $rez[1]["id_start"];
|
||
|
||
|
||
$id = $rez[1]['id_plans'];
|
||
$sql_plans = 'SELECT * FROM '.$ST['dbpf'].'_iup_shahtplans_plans WHERE `id` = "'.$id.'"';
|
||
$rez_plans = $DB->QUR_SEL($sql_plans);
|
||
|
||
$forma = $rez_plans[1]["forobu"];
|
||
$year = $rez_plans[1]["godnap"];
|
||
|
||
$out['area'] = $rez_plans[1]['nappodgo'];
|
||
|
||
//отдельно еще раз формируем список групп
|
||
$out['year'] = $year.' '.$forma;
|
||
$sql_grupps = 'SELECT * FROM '.$ST['dbpf'].'_grupp';
|
||
$rez_grupps = $DB->QUR_SEL($sql_grupps);
|
||
foreach ($rez_grupps as $key_gr => $value_gr) if ($key_gr){
|
||
$str .= '<option value="'.$value_gr["id"].'">'.$value_gr["sokr"].'-'.$value_gr["kurs"].' '.$value_gr["fo"].'</option>';
|
||
}
|
||
$out['html'] .= $str;
|
||
|
||
//достаем список преподавателей кафедры
|
||
$id_profile = $rez_profile_start[1]["id_profile"];
|
||
$sql_profile = 'SELECT * FROM '.$ST['dbpf'].'_profile WHERE `id` = "'.$id_profile.'"';
|
||
$rez_profile = $DB->QUR_SEL($sql_profile);
|
||
|
||
$id_area = $rez_profile[1]["id_areas"];
|
||
$sql_area = 'SELECT * FROM '.$ST['dbpf'].'_areas WHERE `id` = "'.$id_area.'"';
|
||
$rez_area = $DB->QUR_SEL($sql_area);
|
||
|
||
//$out['area'] = $rez_area[1]["code"].' '.$rez_profile[1]["name"];
|
||
|
||
$id_kaf = $rez_area[1]["id_kafedra"];
|
||
$sql_kafedra = 'SELECT * FROM '.$ST['dbpf'].'_kafedres WHERE `id` = "'.$id_kaf.'"';
|
||
$rez_kafedra = $DB->QUR_SEL($sql_kafedra);
|
||
|
||
$name = $rez_kafedra[1]["name"];
|
||
$prepods = '';
|
||
$sql_teach = 'SELECT * FROM '.$ST['dbpf'].'_teachers WHERE `kafedra` LIKE "%'.$name.'%"';
|
||
$rez_teach = $DB->QUR_SEL($sql_teach);
|
||
foreach ($rez_teach as $key => $value) if ($key){
|
||
$sql_pr = 'SELECT * FROM '.$ST['dbpf'].'_users WHERE `id` = "'.$value["id_user"].'"';
|
||
$rez_pr = $DB->QUR_SEL($sql_pr);
|
||
$prepods .= '<option value="'.$rez_pr[1]["id"].'">'.$rez_pr[1]["fio"].'</option>';
|
||
}
|
||
$out['prepods'] = $prepods;
|
||
|
||
$id = $_POST["id"];
|
||
//$out['table'] = fixed_table($id);
|
||
$out['table'] = $id;
|
||
}
|
||
|
||
//закрепление по кнопке
|
||
if ($_POST["ajdes"] == "fixed_grupp"){
|
||
$id = $_POST["id"];
|
||
$grupp = $_POST["grupp"];
|
||
$num = $_POST["num"];
|
||
$teacher = $_POST["teacher"];
|
||
|
||
$error = 0;
|
||
if ($id == '') $error = 1;
|
||
if ($grupp == '') $error = 1;
|
||
if ($num == '') $error = 1;
|
||
if ($teacher == '') $error = 1;
|
||
|
||
if ($error == 0){
|
||
//дополнительная проверка
|
||
$sql_is = 'SELECT * FROM '.$ST['dbpf'].'_practice_teachers WHERE `id_pract` = "'.$id.'" AND `id_prepod` = "'.$teacher.'" AND `id_group` = "'.$grupp.'" AND `num` = "'.$num.'"';
|
||
$rez_is = $DB->QUR_SEL($sql_is);//исправить SQL иньекцию!!!
|
||
|
||
if ($rez_is[0] == 0){
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_practice_teachers (`id_pract`, `id_prepod`, `id_group`, `num`) VALUES ("'.$id.'", "'.$teacher.'", "'.$grupp.'", "'.$num.'")';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out["table"] = fixed_table($id);
|
||
}
|
||
|
||
}
|
||
}
|
||
|
||
//АККРЕДИТАЦИЯ
|
||
if ($_POST["ajdes"] == "delete_accredit"){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_accredit WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
//$out['test'] = '/'.;
|
||
if ($rez){
|
||
unlink($rez[1]['file_pasport']);
|
||
unlink($rez[1]['file_edu']);
|
||
unlink($rez[1]['file_vb']);
|
||
unlink($rez[1]['file_snils']);
|
||
unlink($rez[1]['file_zayv']);
|
||
}
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_accredit WHERE `id` = '.$id.' ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удалена заявка на аккредитацию №'.$id);
|
||
|
||
$out['success'] =1;
|
||
}
|
||
|
||
//ПРЕДСЕДАТЕЛЬ АККРЕДИТАЦИОННОЙ КОМИССИИ - допуск к аккредитации
|
||
if ($_POST['ajdes'] == "ok_accredit"){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_accredit SET status = "1" WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
save_logs('Допущена к аккредитации заявка'.$id);
|
||
|
||
|
||
$out['success'] = 1;
|
||
}
|
||
|
||
//СТИПЕНДИАЛЬНОЕ ОБЕСПЕЧЕНИЕ
|
||
if ($_POST["ajdes"] == "delete_achievement"){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int) $_POST["id"];
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_achievements WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
//$out['test'] = '/'.;
|
||
if ($rez){
|
||
unlink('./'.$rez[1]['file']);
|
||
}
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_achievements WHERE `id` = '.$id.' ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удалено достижение №'.$id);
|
||
|
||
$out['success'] =1;
|
||
}
|
||
|
||
//комиссия - работа с достижениями студента
|
||
if ($_POST['ajdes'] == 'action_achievement'){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int) $_POST['id'];
|
||
$action = $_POST['action'];
|
||
$msg = $_POST['msg'];
|
||
|
||
if ($action == 1){ //одобрение
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_stip_dost SET status = "1" WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Одобрение достижения '.$id);
|
||
|
||
$out['success'] = 1;
|
||
|
||
} elseif ($action == 2){ //отправить на доработку
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_stip_dost SET commento = "'.$msg.'" WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Достижение отправлено на доработку '.$id);
|
||
|
||
$out['success'] = 1;
|
||
|
||
} else{ //отклонить
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_stip_dost WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Достижение удалено из заявки (отклонено) '.$id);
|
||
|
||
$out['success'] = 1;
|
||
}
|
||
|
||
|
||
//header("Location: /grant/commission/".$id."/");
|
||
//exit;
|
||
}
|
||
|
||
//стипендиальная комиссия - допускаем заявку к конкурсу
|
||
if ($_POST['ajdes'] == 'success_stip'){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int) $_POST['id'];
|
||
$sql = 'UPDATE '.$ST['dbpf'].'_stip SET status = 1 WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Допускаем заявку к конкурсу '.$id);
|
||
}
|
||
|
||
//КАФЕДРА
|
||
//удаление договора о практической подготовке
|
||
if ($_POST["ajdes"] == "delete_treat"){
|
||
$out['success'] = 0;
|
||
|
||
$id = (int)$DB->rescape($_POST["id"]);
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_treaties WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
//$out['test'] = '/'.;
|
||
if ($rez) unlink($rez[1]['file']);
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_treaties WHERE `id` = '.$id.' ';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
save_logs('Удален договор о практической подготовке №'.$id);
|
||
|
||
$out['success'] =1;
|
||
}
|
||
|
||
//ТЕСТЫ
|
||
if ($_POST['ajdes'] == 'test_view_rez'){
|
||
$id_user = (int)$_POST['user'];
|
||
$id_test = (int)$_POST['test'];
|
||
$out['user']='';
|
||
$out['body']='';
|
||
|
||
//$sql = 'SELECT * FROM '.$ST['dbpf'].'_test_users_otvet WHERE `id_user` = '.$id_user.' AND `id_tests` = '.$id_test.' ORDER BY data_c';
|
||
$sql1 = 'SELECT data_c FROM '.$ST['dbpf'].'_test_users_otvet WHERE id_tests='.$id_test.' AND id_user='.$id_user.' GROUP BY data_c ORDER BY data_c DESC';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
foreach($rez1 as $k1 => $v1)if($k1){
|
||
$sql2 = 'SELECT text_quest,text_answer,text_otvet,ball FROM '.$ST['dbpf'].'_test_users_otvet WHERE id_tests='.$id_test.' AND id_user='.$id_user.' AND data_c='.$v1['data_c'].' ORDER BY data_c DESC';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
$out['ball']=0;
|
||
$out['body'].='<h3>Время прохождения: '.date('H:i:s d.m.Y',$v1['data_c']).'</h3>';
|
||
$out['body'].='<table class="table">';
|
||
$out['body'].='<thead><tr>';
|
||
$out['body'].='<th>Вопрос</th>';
|
||
$out['body'].='<th>Ответ</th>';
|
||
$out['body'].='<th></th>';
|
||
$out['body'].='<td>Оценка</td>';
|
||
$out['body'].='</tr></thead><tbody>';
|
||
foreach($rez2 as $k2 => $v2)if($k2){//обходим все ответы в тесте для юзера
|
||
$out['body'].='<tr>';
|
||
$out['body'].='<td>'.strip_tags($v2['text_quest']).'</td>';
|
||
$out['body'].='<td>'.strip_tags($v2['text_answer']).'</td>';
|
||
$out['body'].='<td>'.strip_tags($v2['text_otvet']).'</td>';
|
||
$out['body'].='<td>'.round($v2['ball'],2).'</td>';
|
||
$out['body'].='</tr>';
|
||
$out['ball']+=$v2['ball'];
|
||
}
|
||
$out['body'].='<tr><td colspan="3" style="text-align:right;">ИТОГО</td><td>'.round($out['ball'],2).'</td></tr>';
|
||
$out['body'].='</tbody></table>';
|
||
}
|
||
}
|
||
}
|
||
}
|
||
//удаление результатов теста для определенного пользователя
|
||
if ($_POST['ajdes'] == 'test_del_rez'){
|
||
$content = $_POST['content'];
|
||
|
||
$ch = explode('-', $content);
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_test_users_otvet WHERE `id_user` = "'.$ch[0].'" AND `id_tests` = "'.$ch[1].'" ';
|
||
$rez = $DB->QUR($sql);
|
||
}
|
||
//удаление ВСЕХ результатов теста
|
||
if ($_POST['ajdes'] == 'test_del_rez_all'){
|
||
$id = (int)$DB->rescape($_POST['id']);
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_test_users_otvet WHERE `id_tests` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
}
|
||
//копирование теста
|
||
if ($_POST['ajdes'] == 'copy_test'){
|
||
$id = (int)$_POST['id'];
|
||
save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' скопировал тест другого преподавателя под номером №'.$id.' ');
|
||
|
||
$id_teacher = $_SESSION['user']['teacher']['id'];
|
||
$date_create = date("U");
|
||
|
||
//выборка и копирование теста
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_test_tests WHERE id = "'.$id.'"';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест другого преподавателя под номером №'.$id.' ');
|
||
$sql_create = 'INSERT INTO '.$ST['dbpf'].'_test_tests (data_c, id_user, id_razdel, name, descrip, status, random_q, tests, data_testa) VALUES ("'.$date_create.'", "'.$id_teacher.'", "'.$rez[1]['id_razdel'].'", "'.$DB->rescape($rez[1]['name']).'", "'.$DB->rescape($rez[1]['descrip']).'", "'.$rez[1]['status'].'", "'.$rez[1]['random_q'].'", "'.$rez[1]['tests'].'", "'.$rez[1]['data_testa'].'")';
|
||
$rez_create = $DB->QUR($sql_create);
|
||
//save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест '.$sql_create.' '.print_r($rez_create,1));
|
||
//$id_test = mysql_insert_id(); //айдишник именно того теста, с которым нам и нужно работать - НОВОГО ТЕСТА - скопированного
|
||
//$id_test = $DB->lastinsertID(); //айдишник именно того теста, с которым нам и нужно работать - НОВОГО ТЕСТА - скопированного
|
||
$id_test = $rez_create['id']; //айдишник именно того теста, с которым нам и нужно работать - НОВОГО ТЕСТА - скопированного
|
||
|
||
//save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест получил номер '.$id_test.'');
|
||
//теперь переходим к выборке и копированию самих вопросов
|
||
$sql2 = 'SELECT * FROM '.$ST['dbpf'].'_test_questions WHERE id_tests = "'.$id.'" ';
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
//save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест выбрали вопросы из теста '.$id.' '.$sql2.' '.print_r($rez2,1));
|
||
if ($rez2){
|
||
foreach ($rez2 as $key2 => $val2) if ($key2){
|
||
//$out['html'] .= $val2['text_q'];
|
||
|
||
$sql_create = 'INSERT INTO '.$ST['dbpf'].'_test_questions (id_tests, text_q, ocenka, tip, random_a, tests, pos) VALUES ("'.$id_test.'", "'.$DB->rescape($val2['text_q']).'", "'.$val2['ocenka'].'", "'.$val2['tip'].'", "'.$val2['random_a'].'", "'.$val2['tests'].'", "'.$val2['pos'].'")';
|
||
$rez_create = $DB->QUR($sql_create);
|
||
//$id_question = mysql_insert_id(); //id НОВОГО скопированного вопроса
|
||
//$id_question = $DB->lastinsertID();
|
||
$id_question = $rez_create['id'];
|
||
//save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест вопросы '.$sql_create.' '.print_r($rez_create,1));
|
||
|
||
//теперь переходим к выборке и копированию самих вариантов ответа
|
||
$sql3 = 'SELECT * FROM '.$ST['dbpf'].'_test_answers WHERE id_questions = "'.$val2['id'].'" ';
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
if ($rez3){
|
||
foreach ($rez3 as $key3 => $val3) if ($key3){
|
||
$sql_create = 'INSERT INTO '.$ST['dbpf'].'_test_answers (id_questions, text_a, ocenka, pos) VALUES ("'.$id_question.'", "'.$DB->rescape($val3['text_a']).'", "'.$val3['ocenka'].'", "'.$val3['pos'].'") ';
|
||
$rez_create = $DB->QUR($sql_create);
|
||
|
||
//save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' копирует тест вопросы-ответы '.$sql_create.' '.print_r($rez_create,1));
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$out['html'] .= $id_test;
|
||
}
|
||
|
||
//функция шифрованеия пароля
|
||
function passw_generate($passw){
|
||
//include_once 'ps01salt.php';
|
||
return md5('MkGTU_'.$passw.'$_2010!');
|
||
}
|
||
|
||
//БИБЛИОТЕКА СБРОС ПАРОЛЯ
|
||
if ($_POST['ajdes'] == 'reset_password'){
|
||
|
||
$id = (int)$_POST['id'];
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_users WHERE id = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
|
||
//генерируем новый пароль и шифркем
|
||
$new_pass = gen_password();
|
||
$new_pass_md = passw_generate($new_pass);
|
||
|
||
$sql0 = 'UPDATE '.$ST['dbpf'].'_users SET data_u='.time().', pass = "'.$new_pass_md.'" WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez0 = $DB->QUR($sql0);
|
||
}
|
||
|
||
send_email("Сброс пароля","Новый пароль для входа: ".$new_pass, $rez[1]['email']);
|
||
$out['html'] = $rez[1];
|
||
|
||
save_logs('Со страницы библиотеки был сброс пароля пользователю '.$rez[1]['id'].' - '.$rez[1]['fio']);
|
||
|
||
}
|
||
|
||
//КАФЕДРА
|
||
//СПРАВКА ПО КАДРОВОМУ ОБЕСПЕЧЕНИЮ
|
||
//выбор преподавателя - выводим информацию об образовании
|
||
if ($_POST['ajdes'] == 'kaf_change_teacher_education'){
|
||
$id = (int)$_POST['id_user'];
|
||
|
||
$out['html'] = '<br /><b>Информация об образовании</b><br />';
|
||
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_education WHERE id_user = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if ($rez){
|
||
foreach ($rez as $key => $val) if ($key){
|
||
|
||
$out['html'] .= $val['profession'].' ('.$val['qualification'].')<br />';
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
|
||
|
||
//ЭЛЕКТИВНЫЕ ДИСЦИПЛИНЫ ПО ФИЗИЧЕСКОЙ КУЛЬТУРЕ И СПОРТУ
|
||
//редактирование расписания элективных
|
||
if($_POST['ajdes']=='fk_edit'){
|
||
$id = (int) $_POST['id'];
|
||
$sql_t = 'SELECT * FROM '.$ST['dbpf'].'_fk_timetable WHERE `id` = "'.$id.'" ';
|
||
$rez_t = $DB->QUR_SEL($sql_t);
|
||
$out['course'] = $rez_t[1]['course'];
|
||
$out['count'] = $rez_t[1]['count'];
|
||
$out['disability'] = $rez_t[1]['disability'];
|
||
$out['section'] = $rez_t[1]['id_section'];
|
||
$out['fakultets'] = explode(',',$rez_t[1]['fakultets']);
|
||
|
||
$sql_d = 'SELECT * FROM '.$ST['dbpf'].'_fk_details WHERE `id_timetable` = "'.$id.'" ';
|
||
$rez_d = $DB->QUR_SEL($sql_d);
|
||
$out['day'] = $rez_d[1]['day'];
|
||
$out['couple'] = $rez_d[1]['couple'];
|
||
|
||
$sql = 'SELECT teach.*, user.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as user WHERE teach.id = "'.$rez_t[1]['id_teacher'].'" AND user.id = teach.id_user ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
$out['teacher'] = $rez[1]["fio"];
|
||
}
|
||
|
||
//вывод в модальное окно сведения о преподавателе, дне недели, номер пары
|
||
if ($_POST['ajdes'] == 'fk_print'){
|
||
$str = $_POST["str"];
|
||
$place = explode("-", $str);
|
||
|
||
//день недели обрабатываем, что вывести в полном виде
|
||
switch ($place[0]){
|
||
case 'Пн':
|
||
$place[0] = 'Понедельник';
|
||
break;
|
||
case 'Вт':
|
||
$place[0] = 'Вторник';
|
||
break;
|
||
case 'Ср':
|
||
$place[0] = 'Среда';
|
||
break;
|
||
case 'Чт':
|
||
$place[0] = 'Четверг';
|
||
break;
|
||
case 'Пт':
|
||
$place[0] = 'Пятница';
|
||
break;
|
||
case 'Сб':
|
||
$place[0] = 'Суббота';
|
||
break;
|
||
}
|
||
|
||
//достаем имя преподавателя
|
||
$teacher = $place[2];
|
||
$sql = 'SELECT teach.*, user.* FROM '.$ST['dbpf'].'_teachers as teach, '.$ST['dbpf'].'_users as user WHERE teach.id = "'.$teacher.'" AND user.id = teach.id_user ';
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
|
||
$out['day'] = $place[0];
|
||
$out['couple'] = $place[1];
|
||
$out['teacher'] = $rez[1]["fio"];
|
||
}
|
||
|
||
//удаление ячейки в расписании по элективным дисциплинам
|
||
if ($_POST['ajdes'] == 'fk_del'){
|
||
$id = (int) $_POST['id'];
|
||
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_fk_timetable WHERE `id` = "'.$id.'" ';
|
||
$rez = $DB->QUR($sql);
|
||
$sql = 'DELETE FROM '.$ST['dbpf'].'_fk_details WHERE `id_timetable` = "'.$id.'"';
|
||
$rez = $DB->QUR($sql);
|
||
|
||
$out['success'] = 1;
|
||
save_logs('Преподаватель '.$_SESSION['user']['id'].' : '.$_SESSION['user']['fio'].' удалил ячейку в расписании элективных дисциплин по ФК (Номер: '.$id.')');
|
||
}
|
||
|
||
//запись студента к преподавателю
|
||
if ($_POST['ajdes'] == 'fk_order'){
|
||
$id = (int) $_POST['id'];
|
||
$date_create = date("U");
|
||
$id_user = $_SESSION['user']['id'];
|
||
$sql = 'INSERT INTO '.$ST['dbpf'].'_fk_order (id_timetable, id_student, date_create) VALUES ("'.$id.'", "'.$id_user.'", "'.$date_create.'")';
|
||
$rez = $DB->QUR($sql);
|
||
save_logs('Студент '.$_SESSION['user']['id'].' записался на элективную дисциплину по ФК '.$id);
|
||
$out['success'] = 1;
|
||
}
|
||
if ($_POST['ajdes'] == 'fk_order_del'){
|
||
$id = (int) $_POST['id'];
|
||
$id_user = $_SESSION['user']['id'];
|
||
$sql = 'SELECT id FROM '.$ST['dbpf'].'_fk_order WHERE id_student='.$id_user.' AND id='.$id;
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if(count($rez)){
|
||
$rez = $DB->QUR('DELETE FROM '.$ST['dbpf'].'_fk_order WHERE id='.$id);
|
||
save_logs('Студент '.$_SESSION['user']['id'].' отписался на элективную дисциплину по ФК '.$id);
|
||
$out['success'] = 1;
|
||
}else{
|
||
$out['success'] = 0;
|
||
}
|
||
}
|
||
|
||
//КОЛЛЕДЖ. Вывод документов в выбранном разделе
|
||
if ($_POST['ajdes'] == 'razdel_select'){
|
||
$id = (int) $_POST['id'];
|
||
$sql = 'SELECT * FROM '.$ST['dbpf'].'_college_docs WHERE id_razdel = "'.$id.'" ';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
$out['html'] = '';
|
||
if ($rez){
|
||
foreach ($rez as $key => $val) if ($key){
|
||
$out['html'] .= '<a href="/'.$val['link'].'">'.$val['name'].'</a><br />';
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
echo json_encode($out);
|
||
exit();
|
||
}
|
||
|
||
|
||
/*
|
||
Сайт
|
||
http://learn-mkgtu.ru/json.php?com=libcheck
|
||
Авторизация
|
||
http://learn-mkgtu.ru/login/
|
||
Логин
|
||
8e8027@mkgtu.ru
|
||
Пароль
|
||
portfolio
|
||
ФИО СТУДЕНТА
|
||
Яровой Андрей Геннадьевич
|
||
Профиль студента
|
||
http://learn-mkgtu.ru/user/profile/
|
||
|
||
Адрес общения json
|
||
http://learn-mkgtu.ru/json.php?com=checkssid&ssid=сам_сид
|
||
|
||
ответ в формате json следующей структуры(переведенный в массив)
|
||
Array
|
||
(
|
||
[err] => 0
|
||
[user] => Array
|
||
(
|
||
[email] => email@mkgtu.ru
|
||
[fio] => Фамилия Имя Отчество
|
||
[ttl] => 1505296917
|
||
)
|
||
[student] => Array
|
||
(
|
||
[num_zach] => 16903094
|
||
[num_stud] => 16903094
|
||
[kod_podgotovki] => 21.03.01 – Нефтегазовое дело
|
||
[grupp] => АИ-25
|
||
)
|
||
)
|
||
err - код ошибки: 0 - нет ошибок, -1 - нет такого ссид, -2 - нет такого пользователя
|
||
user[email] - email пользователя
|
||
user[fio] - ФИО пользователя
|
||
user[ttl] - дата создания ssid временная метка UNIX(кол-во сек с 1 января 1970г.)
|
||
student[num_zach] - номер зачетки студента
|
||
student[num_stud] - номер студентческого студента
|
||
student[kod_podgotovki] - Название направления подготовки студента
|
||
student[grupp] - группа студента
|
||
|
||
*/
|
||
if(isset($_GET['com'])){
|
||
if($_GET['com']=='checkssid'){
|
||
$ssid = $_GET['ssid'];
|
||
$out = json_check_ssid($ssid);
|
||
//echo '<pre>'.print_r($out,1).'</pre>';
|
||
echo json_encode($out);
|
||
/*
|
||
Array
|
||
(
|
||
[err] => 0
|
||
[user] => Array
|
||
(
|
||
[email] => 8e8027@mkgtu.ru
|
||
[fio] => Яровой Андрей Геннадьевич
|
||
[ttl] => 1505296917
|
||
)
|
||
|
||
[student] => Array
|
||
(
|
||
[num_zach] => 16903094
|
||
[num_stud] => 16903094
|
||
[kod_podgotovki] => 21.03.01 – Нефтегазовое дело
|
||
[grupp] => АИ-25
|
||
)
|
||
|
||
)
|
||
*/
|
||
exit();
|
||
}
|
||
}
|
||
|
||
function iup_DelCacheFile_zamDek($id_zayavka){//НАДО УДАЛЯТЬ КЭШ!
|
||
GLOBAL $ST,$DB; $out = array();
|
||
$sql = 'SELECT pret_naprav,pret_kurs,pret_fo FROM '.$ST['dbpf'].'_iup_studentzayavks WHERE id='.$id_zayavka;
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$val = $rez[1];
|
||
$fakultet = $_SESSION['user']['teacher']['fakultet'];
|
||
$spec = $val['pret_naprav'];
|
||
$kurs = $val['pret_kurs'];
|
||
$fo = $val['pret_fo'];
|
||
$out['fakultet'] = $fakultet;
|
||
$out['spec'] = $spec;
|
||
$out['kurs'] = $kurs;
|
||
$out['fo'] = $fo;
|
||
$file = 'tmp/iup/json_get_predmets_'.md5($fakultet.$spec.$kurs.$fo).'.json';
|
||
$out['file'] = $file;
|
||
if(file_exists($file)) {
|
||
unlink($file);
|
||
$out['exist'] = 1;
|
||
}else{
|
||
$out['exist'] = 0;
|
||
}
|
||
}
|
||
return $out;
|
||
}
|
||
function json_check_ssid($ssid){
|
||
GLOBAL $DB,$ST; $out=array(); $out['err']=0;
|
||
//$sql = 'SELECT data_c,user_id FROM '.$ST['dbpf'].'_libssid WHERE ssid="'.addslashes($ssid).'" AND data_c>='.(time()-(60*30)).'';
|
||
$sql = 'SELECT data_c,user_id FROM '.$ST['dbpf'].'_libssid WHERE ssid="'.addslashes($ssid).'"';
|
||
$rez = $DB->QUR_SEL($sql);
|
||
if($rez){
|
||
$sql0 = 'UPDATE '.$ST['dbpf'].'_libssid SET data_c='.time().' WHERE id='.$rez[1]['id'].' LIMIT 1';
|
||
$rez0 = $DB->QUR($sql0);
|
||
$sql1 = 'SELECT id,email,fio FROM '.$ST['dbpf'].'_users WHERE id='.$rez[1]['user_id'].' LIMIT 1';
|
||
$rez1 = $DB->QUR_SEL($sql1);
|
||
if($rez1){
|
||
$user_id=$rez1[1]['id']; unset($rez1[1]['id']);
|
||
$out['user'] = $rez1[1];
|
||
$out['user']['ttl'] = $rez[1]['data_c'];
|
||
|
||
$sql2 = 'SELECT zvanie,dolgnost FROM '.$ST['dbpf'].'_teachers WHERE id_user='.$user_id.' AND status=1 LIMIT 1';
|
||
$rez2=$DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
$out['teacher'] = $rez2[1];
|
||
}
|
||
// AND status=1
|
||
$sql2 = 'SELECT id_grupp,num_zach,num_stud,num_grupp,kod_podgotovki FROM '.$ST['dbpf'].'_students WHERE id_user='.$user_id.' LIMIT 1';
|
||
$rez2=$DB->QUR_SEL($sql2);
|
||
if($rez2){
|
||
$grupp='не определенно';
|
||
$sql3 = 'SELECT sokr,kurs,fo FROM '.$ST['dbpf'].'_grupp WHERE id='.$rez2[1]['id_grupp'].' LIMIT 1';
|
||
$rez3=$DB->QUR_SEL($sql3);
|
||
if($rez3){
|
||
$grupp=$rez3[1]['sokr'].'-'.$rez3[1]['kurs'].$rez2[1]['num_grupp'];
|
||
}
|
||
unset($rez2[1]['id_grupp']);
|
||
unset($rez2[1]['num_grupp']);
|
||
|
||
$out['student'] = $rez2[1];
|
||
$out['student']['grupp'] = $grupp;
|
||
}
|
||
}else $out['err'] = '-2';//нет такого пользователя
|
||
}else $out['err'] = '-1';//нет такого ссид
|
||
return $out;
|
||
}
|
||
|
||
|
||
///МАТЕРИАЛЬНАЯ ПОМОЩЬ///
|
||
//*********************//
|
||
if($_POST['no_id_order']){ //отклонение заявки секретарем стипендиальной комиссии
|
||
$out = array();
|
||
$id = (int)$DB->rescape($_POST["no_id_order"]);
|
||
$comment = $DB->rescape($_POST["comment"]);
|
||
|
||
$sql = "UPDATE `acs_mhelp` SET `status` = '0', `com` = '$comment' WHERE `id` = '$id'";
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = $id;
|
||
echo json_encode($out);
|
||
}
|
||
|
||
|
||
if($_POST['ok_id_order']){ //одобрение заявления секретарем
|
||
$out = array();
|
||
$id = (int)$DB->rescape($_POST["ok_id_order"]);
|
||
|
||
$sql = "UPDATE `acs_mhelp` SET `status` = '2' WHERE `id` = '$id'";
|
||
$rez = $DB->QUR($sql);//исправить SQL иньекцию!!!
|
||
|
||
$out['html'] = $id;
|
||
echo json_encode($out);
|
||
}
|
||
|
||
//отклонение членом аттестационной комиссии
|
||
if ($_POST["no_person"]){
|
||
$out = array();
|
||
$id = (int)$DB->rescape($_POST["no_person"]);
|
||
$eks = $_POST["eks"];
|
||
|
||
$out["html"] = ""; //для теста вернем
|
||
|
||
//decisions
|
||
//$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1";
|
||
$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1";
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
|
||
$des = $rez[1]['decisions'];
|
||
|
||
//$eks-1 - это номер члена аттестационной комиссии минус один!
|
||
$des[$eks-1] = "0"; //ставим нолик - эо означает, что данный член комиссии отклонил заявление
|
||
|
||
$sql2 = "UPDATE `acs_mhelp` SET `decisions` = '$des' WHERE `id` = '$id'";
|
||
$rez2 = $DB->QUR($sql2);
|
||
|
||
// $rez = $DB->QUR_SEL($sql);
|
||
// $out["html"] = $rez[1]['decisions'];
|
||
|
||
//$out["html"] .= $des;
|
||
$out["do"] = 1;
|
||
echo json_encode($out);
|
||
}
|
||
|
||
//принятие членом аттестационной комиссии
|
||
if ($_POST["yes_person"]){
|
||
$out = array();
|
||
$id = (int)$DB->rescape($_POST["yes_person"]);
|
||
//$eks = $_POST["eks"];
|
||
$eks = $_SESSION["person_user_kom"];
|
||
|
||
$out["html"] = ""; //для теста вернем
|
||
|
||
//decisions
|
||
//$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1";
|
||
$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1";
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
|
||
$des = $rez[1]['decisions'];
|
||
|
||
//$eks-1 - это номер члена аттестационной комиссии минус один!
|
||
$des[$eks-1] = "1"; //ставим нолик - это означает, что данный член комиссии отклонил заявление
|
||
|
||
$sql2 = "UPDATE `acs_mhelp` SET `decisions` = '$des' WHERE `id` = '$id'";
|
||
$rez2 = $DB->QUR($sql2);
|
||
|
||
// $rez = $DB->QUR_SEL($sql);
|
||
// $out["html"] = $rez[1]['decisions'];
|
||
|
||
//$out["html"] .= $des;
|
||
$out["do"] = 0;
|
||
echo json_encode($out);
|
||
}
|
||
|
||
//редактирование конкретной заявки студентом после ее отклонения комиссией или секретарем
|
||
if ($_POST["edit_my_order"]){
|
||
$out = array();
|
||
$id = (int)$DB->rescape($_POST["edit_my_order"]);
|
||
|
||
$out["html"] = "";
|
||
$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1"; //выбираем конкретное заявление, оставленное пользоваелем
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
if (strlen($rez[1]["dop_info"])>1){
|
||
$two_text = explode("|", $rez[1]["dop_info"]);
|
||
|
||
if ($two_text[3] == "1") $two_text[3] = "Бюджет";
|
||
else $two_text[3] = "Коммерция";
|
||
}
|
||
|
||
$out["html"] .= '<form action="" class="form-horizontal" method="POST" enctype="multipart/form-data">
|
||
<input type="hidden" name="id_mhelp" value="'.$rez[1]["id"].'" />
|
||
<input type="hidden" name="id_user" value="'.$rez2[1]["id"].'" />
|
||
<input type="hidden" name="mtype" id="mtype" value="'.$rez[1]["type"].'" />
|
||
<div class="control-group">
|
||
<label class="control-label span12">
|
||
<font color="red"><i>Комментарий: '.$rez[1]["com"].'</i></font>
|
||
</label>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span2">ФИО</label>
|
||
<div class="controls span10">
|
||
<input type="text" class="span12 tooltips" data-trigger="hover" data-original-title="Фамилия имя отчество полное" name="fio" value="'.$rez2[1]["fio"].'" readonly />
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span2">Факультет</label>
|
||
<div class="controls span10">
|
||
<input type="text" class="span12" data-placeholder="Факультет студента" tabindex="1" name="fakultet" value="'.$two_text[2].'" />
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span2">Телефон</label>
|
||
<div class="controls span10">
|
||
<input type="tel" class="span12" data-placeholder="Телефон студента" name="phone" value="'.$rez[1]["phone"].'" maxlength="16" required />
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span2">Тип обучения</label>
|
||
<div class="controls span10">
|
||
<select class="span12" data_placeholder="Тип обучения" name="type">
|
||
<option value="1">Бюджет</option>
|
||
<option value="2">Коммерция</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="control-group">
|
||
<label class="control-label span2">Сумма</label>
|
||
<div class="controls span10">
|
||
<input type="number" class="span12 tooltips" data-trigger="hover" data-original-title="в руб." value="'.$rez[1]["summa"].'" name="summa" min="0" required />
|
||
</div>
|
||
</div>';
|
||
|
||
if ($rez[1]["type"] == 6){
|
||
$out["html"] .= '<div id="dop_info">';
|
||
}
|
||
else{
|
||
$out["html"] .= '<div id="dop_info" style="display: none;">';
|
||
}
|
||
|
||
//ссылки на файлы
|
||
$id_mhelp = $rez[1]["id"];
|
||
$sql3 = "SELECT * FROM `acs_mhelp_files` WHERE `id_mhelp` = '$id_mhelp'";
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
$val["files"] = '';
|
||
$i = 0;
|
||
foreach ($rez3 as $key3 => $val3) if ($key3){
|
||
$i++;
|
||
$val["files"] .= '<a href="/'.$val3["src"].'">'.$i.' файл</a> ';
|
||
}
|
||
|
||
$out["html"] .= '<div class="control-group">
|
||
<label class="control-label span2">Место</label>
|
||
<div class="controls span10">
|
||
<input type="text" class="span12 tooltips" data-trigger="hover" data-original-title="Место" name="address" value="'.$two_text[0].'" />
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span2">Даты проведения мероприятия</label>
|
||
<div class="controls span10">
|
||
<input type="date" class="span12 tooltips" data-trigger="hover" data-original-title="Даты проведения" name="date_pr" value="'.$two_text[1].'" />
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span12"><i>Старые файлы будут заменены новыми! Учтите это!</i><br />Старые файлы: '.$val["files"].'</label>
|
||
</div>
|
||
<div class="mestofiles">
|
||
<div class="control-group mf_item">
|
||
<label class="control-label span4" id="document_mhelp">Документ:</label>
|
||
<div class="controls span6">
|
||
<input type="file" class="span12 tooltips" data-trigger="hover" data-original-title="Загрузить файл форматы pdf, jpg (не более 8 Мб)" name="files_mhelp[]" />
|
||
</div>
|
||
<div class="controls span2">
|
||
<a class="btn btn-success tooltips faddfile" href="#" data-trigger="hover" data-original-title="Если необходимо загрузить еще один файл, нажмите для добавления такой возможности" data-placement="top"><i class="icon-plus"></i></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="control-group">
|
||
<label class="control-label span1"><p align="right"><input type="checkbox" name="ok" required /></p></label>
|
||
<div class="controls span11">
|
||
<p><i>Я подтверждаю достоверность прикрепленных документов и знаю, что несу персональную ответственность (Ответственность за фальсификацию и подделку документов предусмотрена статьей 327 УК РФ)</i></p>
|
||
</div>
|
||
</div>
|
||
<button type="submit" class="btn btn-warning edit_mhelp" name="edit_mhelp" >Редактировать заявление</button>
|
||
</form>
|
||
|
||
<script type="text/javascript">
|
||
|
||
$(".edit_mhelp").click(function(){
|
||
alert("12222");
|
||
$.ajax({
|
||
url: "/json.php", dataType: "json", type: "POST", async: false, data: "edit_mhelp",
|
||
succes: function(){
|
||
alert("123");
|
||
}
|
||
});
|
||
});
|
||
</script>
|
||
';
|
||
|
||
echo json_encode($out);
|
||
}
|
||
|
||
if ($_POST["edit_mhelp"]){
|
||
}
|
||
|
||
if ($_POST["id_z"]){
|
||
$out = "";
|
||
|
||
$id = (int)$DB->rescape($_POST["id_z"]);
|
||
|
||
$sql = "SELECT * FROM `acs_mhelp` WHERE `id` = '$id' LIMIT 1"; //выбираем конкретное заявление, оставленное пользоваелем
|
||
$rez = $DB->QUR_SEL($sql);//исправить SQL иньекцию!!!
|
||
|
||
$id_user = $rez[1]["id_user"];
|
||
|
||
$sql2 = "SELECT * FROM `acs_users` WHERE `id` = '$id_user' LIMIT 1"; //находим человека
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
|
||
|
||
|
||
$out["fam"] = $rez2[1]["fio"];
|
||
|
||
$len = $out["fam"];
|
||
|
||
$i = 0;
|
||
while ($i < (23-$len)){
|
||
$out["fam"].="_";
|
||
$i++;
|
||
}
|
||
|
||
|
||
if (strlen($rez[1]["dop_info"])>1){
|
||
$two_text = explode("|", $rez[1]["dop_info"]);
|
||
|
||
if ($two_text[3] == "1") $two_text[3] = "Бюджет";
|
||
else $two_text[3] = "Коммерция";
|
||
}
|
||
|
||
$out["fak"] = $two_text[2];
|
||
|
||
$len = $out["fak"];
|
||
$i = 0;
|
||
while ($i < (24-$len)){
|
||
$out["fak"] .= "_";
|
||
$i++;
|
||
}
|
||
|
||
$out["phone"] = $rez[1]["phone"];
|
||
|
||
$out["type"] = $rez[1]["type"];
|
||
switch ($out["type"]){
|
||
case 1:
|
||
$out["type"] = "Особая необходимость в лечении и восстановлении здоровья в связи с заболеванием, несчастным случаем и т.п.";
|
||
break;
|
||
case 2:
|
||
$out["type"] = "Рождение ребенка.";
|
||
break;
|
||
case 3:
|
||
$out["type"] = "Смерть (гибель) члена семьи.";
|
||
break;
|
||
case 4:
|
||
$out["type"] = "Утрата личного имущества в результате форс-мажорных обстоятельств, кражи и других происшествий.";
|
||
break;
|
||
case 5:
|
||
$out["type"] = "Вступление в брак.";
|
||
break;
|
||
case 6:
|
||
$out["type"] = "Оплата расходов, связанных с участием в различных соревнованиях, семинарах, конкурсах, олимпиадах, конференциях, а также мероприятиях культурно-массового, научного, спортивного, образовательного характера, в том числе в части оплаты транспортных расходов, расходов на проживание, питание.";
|
||
break;
|
||
case 7:
|
||
$out["type"] = "Компенсация платы на найм жилья студентам, нуждающимся в улучшении жилищных условий; платы за проезд к месту жительства и обратно в каникулярное время.";
|
||
break;
|
||
}
|
||
|
||
|
||
$rez[1]['date_cr'] = date('d.m.Y',$rez[1]['date_cr']);
|
||
$out['date_cr'] = $rez[1]['date_cr'];
|
||
|
||
$out['summa'] = $rez[1]["summa"];
|
||
|
||
$out["fo"] = $rez2[1]["fio"];
|
||
|
||
$id_user = $rez[1]["id_user"];
|
||
|
||
$sql2 = "SELECT * FROM `acs_users` WHERE `id` = '$id_user' LIMIT 1"; //находим человека
|
||
$rez2 = $DB->QUR_SEL($sql2);
|
||
|
||
|
||
//для того, чтобы взять айдишник группы, в которой учится студент
|
||
$sql3 = "SELECT * FROM `acs_students` WHERE `id_user` = '$id_user'";
|
||
$rez3 = $DB->QUR_SEL($sql3);
|
||
|
||
$id_grupp = $rez3[1]["id_grupp"];
|
||
|
||
|
||
//берем информацию о группе
|
||
$sql4 = "SELECT * FROM `acs_grupp` WHERE `id` = '$id_grupp'";
|
||
$rez4 = $DB->QUR_SEL($sql4);
|
||
|
||
|
||
$out["group"] = $rez4[1]["sokr"].'-'.$rez4[1]["kurs"];
|
||
|
||
$len = $out["group"];
|
||
$i = 0;
|
||
while ($i < (22-$len)){
|
||
$out["group"] .= "_";
|
||
$i++;
|
||
}
|
||
|
||
if ($rez4[1]["fo"] == "оч") $out["fo"] = "очная";
|
||
else $out["fo"] = "заочная";
|
||
|
||
$len = $out["fo"];
|
||
$i = 0;
|
||
while ($i < (14-$len)){
|
||
$out["fo"] .= "_";
|
||
$i++;
|
||
}
|
||
|
||
|
||
echo json_encode($out);
|
||
}
|
||
|
||
//*ЗАКОНЧИЛАСЬ МАТЕРИАЛЬНАЯ ПОМОЩЬ*//
|