EIOS/rabprog/tpl/page_rpds_signs.html

249 lines
13 KiB
HTML
Raw Permalink Normal View History

2023-12-28 15:39:22 +03:00
<h3 class="text-center">Список созданных рабочих программ на подпись!</h3>
{if isset($aUSER.statuses.79)}
<div class="btn-group">
<a href="/rabprog/rpdsign/rs1/" class="btn btn-primary {if $show=="rs1"}active btn-success{/if}" aria-current="page">РПД на подпись</a>
<a href="/rabprog/rpdsign/rs3/" class="btn btn-primary {if $show=="rs3"}active btn-success{/if}">РПД на подпись ЗАВ.КАФ.</a>
<a href="/rabprog/rpdsign/rs2/" class="btn btn-primary {if $show=="rs2"}active btn-success{/if}">РПД подписанные</a>
<a href="/rabprog/rpdsign/rs4/" class="btn btn-primary {if $show=="rs4"}active btn-success{/if}">РПД подписанные УП(каф)</a>
<form method="post" action="/rabprog/rpdsign/{$show}/">
<input type="text" class="form-control" placeholder="поиск" name="search" value="" style="float: left;width: 64%;">
<input class="btn btn-sm btn-success" type="submit" name="search_btn" value="Поиск" style="margin-top: 3px;">
</form>
</div>
{else}
<div class="btn-group">
<form method="post" action="/rabprog/rpdsign/{$show}/">
<input type="text" class="form-control" placeholder="поиск" name="search" value="" style="float: left;width: 64%;">
<input class="btn btn-sm btn-success" type="submit" name="search_btn" value="Поиск" style="margin-top: 3px;">
</form>
</div>
{/if}
{if count($DISCIPS)}
{*<prE>{print_r($DISCIPS)}</pre>*}
<!--<pre>{print_r($debug_sql)}</pre>-->
{if isset($debug_sql)&&count($debug_sql)}
{assign var="time" value=0}
{foreach from=$debug_sql item=debsql}{assign var="time" value=$time+$debsql.time}{/foreach}
<p>всего запросов на {round($time,2)} сек</p>
{/if}
<table class="table">
<thead>
<tr>
<td colspan="5">{include file="mod_navpages.html" nav=$navpages url="/rabprog/rpdsign/$show/"}</td>
</tr>
<tr>
<th class="col-1" rowspan="2">Индекс</th>
<th class="col-3" rowspan="2">Название</th>
<th class="col-3">Кафедра выпускающая / Кафедра</th>
<th class="col-1">Год</th>
<th class="col-2" rowspan="2">
<input type="text" class="form-control filter" placeholder="фильтр" value="">
</th>
</tr>
</thead>
<tbody id="fbody">
{foreach from=$DISCIPS item=disc}
<tr class="trtd">
<td>{$disc.index1}<br><span style="font-size: 10px;color:gray;">№ {$disc.id}</span></td>
<td>
<span data-bs-toggle="tooltip" data-bs-placement="bottom" title="{$disc.program} {$disc.srok_poluch_obr} {$disc.shifr}">{$disc.name}</span><br>
<span style="font-size: 10px;color:gray;">{$disc.naprav}</span>
</td>
<td>
{$disc.kaf_name_vyp}<br>
{$disc.kaf_name}<br>
<span class="badge bg-info text-dark">{$disc.profil}</span>
</td>
<td>{$disc.god_nach_podgot}{*, {$disc.fo}*}</td>
<td id="td_uprav_{$disc.id}">
{if $disc.file_pdf!=''}
{if $disc.edit==1}
<a class="btn btn-sm btn-warning" href="{$disc.url_pdf}" target="_blank">дбНИКА</a>
{else}
<table class="table table-sm">
<tr>
<td>
<a class="btn btn-sm btn-warning" href="{$disc.file_pdf}" target="_blank">РПД</a>
<a class="btn btn-sm btn-info" href="/rabprog/rpd/anotac/{$disc.id}/" target="_blank">Аннот.</a>
<a class="btn btn-sm btn-info" href="/rabprog/rpd/fos/{$disc.id}/" target="_blank">ФОС</a>
{if $show=="rs2"&&(isset($aUSER.statuses[79]))}
<a href="#" class="btn btn-sm btn-danger rpd_sign" id="btnRPDSign0_{$disc.id}" data-id="{$disc.id}" data-sign="0" data-kafvyp="{$disc.kafvyp}" data-bs-toggle="tooltip" data-bs-placement="top" title="Удалить подпись проректора!" ><i class="bi bi-backspace-fill"></i></a>
{/if}
</td>
<td>
{if $disc.url_pdf!=''}<a class="btn btn-sm btn-danger" href="{$disc.url_pdf}" target="_blank">дбНИКА</a>{/if}
</td>
</tr>
<tr>
<td class="col-10"><input type="TEXT" class="form-control-sm" placeholder="ссылка на PDF" value="{$disc.url_pdf}" id="btnRPDSignURL_{$disc.id}"></td>
<td class="col-2"><a href="#" class="btn btn-sm btn-info btnRPDSignURL_save" data-id="{$disc.id}" data-hr="{$disc.file_pdf}" data-bs-toggle="tooltip" data-bs-placement="top" title="Сохранить внешнюю ссылку, которую получили после загрузки скачанного, отсюда, файла PDF"><i class="bi bi-save"></i></a></td>
</tr>
</table>
{/if}
{else}
{if $disc.edit==1}
<!--a href="/rabprog/rpdsign/pdf/{$disc.id}/" class="btn btn-sm btn-primary" data-bs-toggle="tooltip" data-bs-placement="top" title="Получение PDF" target="_blank"><i class="bi bi-file-earmark-pdf"></i></a-->
<a href="/rabprog/rpdsign/pdf/{$disc.saveinfo.save_id}/" class="btn btn-sm btn-primary" data-bs-toggle="tooltip" data-bs-placement="top" title="Получение PDF" target="_blank"><i class="bi bi-file-earmark-pdf"></i></a>
<a href="#" class="btn btn-sm btn-danger rpd_sign" id="btnRPDSign0_{$disc.id}" data-id="{$disc.id}" data-sign="0" data-kafvyp="{$disc.kafvyp}" data-bs-toggle="tooltip" data-bs-placement="top" title="Вернуть {if $disc.pur==1}зав.выпускающей кафедры{else}{if $disc.kafvyp==1}зав.кафедры{else}разработчику{/if}{/if} на доработку!" ><i class="bi bi-backspace-fill"></i></a> |
<a href="#" class="btn btn-sm btn-success rpd_sign" id="btnRPDSign1_{$disc.id}" data-id="{$disc.id}" data-sign="1" data-kafvyp="{$disc.kafvyp}" data-bs-toggle="tooltip" data-bs-placement="top" title="Подписать РПД {if $disc.pur==1}как проректор по УР{else}{if $disc.kafvyp==1}как зав.выпускающей кафедры{else}как зав.каф.{/if}{/if} и отправить далее!"><i class="bi bi-check-circle"></i></a>
{/if}
{/if}
<pre style="display: none;">{print_r($disc)}</pre>
</td>
</tr>
{if isset($disc.rpdsigns)&&count($disc.rpdsigns)}
<tr class="trtd">
<td colspan="5" style="text-align: right;">
<div id="sign_descrip_{$disc.id}" style="display: inline;"></div>
{foreach from=$disc.rpdsigns item=rs key=k}
<span data-bs-toggle="tooltip" data-bs-placement="top" title="{if $rs.status==1}подписано{else}не подписано{/if} {date('H:i d.m.Y',$rs.data_c)}" class="badge {if $rs.status==1}{if $rs.sign=="Библиотека"}bg-warning{else}bg-success{/if}{else}bg-danger{/if} sign_descrip" style="cursor: pointer;" data-id="{$disc.id}" data-descr="{$rs.descrip}">
{$rs.sign}
</span>
{if $k==0&&$rs.id_user==$aUSER.id}<a href="/rabprog/rpdsign/delsign/{$rs.id}/" class="btn btn-sm btn-danger confirmation" style="line-height: 0.7;">x</a>{/if}
{/foreach}
</td>
</tr>
{/if}
{*<pre>{print_r($disc)}</pre>*}
{/foreach}
</tbody>
</table>
{literal}
<script>$(document).ready(function(){
$('.confirmation').on('click', function () {
return confirm('Удалить элемент?');
});
$(".btnRPDSignURL_save").click(function(){
let id = $(this).data('id');
let hr = $(this).data('hr');
let url = $("#btnRPDSignURL_"+id).val();
$.ajax({url: '/rabprog/rpdsign/',cache:false,datatype:'json',method:'post',
data: 'ajdes=RPDSignURL&id_disc='+id+'&url='+url+'&hr='+hr,
success:function(data){
window.ToastShow1("Сохраняем внешнюю ссылку!",data.msg,data.err);
}
});
return false;
});
//просмотр описания
$(".sign_descrip").click(function(){
let id = $(this).data('id');
let descr = $(this).data('descr');
$("#sign_descrip_"+id).html(descr);
return false;
});
/*//Подписываем РПД
$(".rpd_sign").click(function(){
$(".tooltip").hide();
let id_disc = $(this).data("id");
let sign = $(this).data("sign");
let th = $(this);
$.ajax({url: '/rabprog/rpdsign/',cache:false,datatype:'json',method:'post',
data: 'ajdes=RPDSign&id_disc='+id_disc+'&sign='+sign,
success:function(data){
if(sign==1) $("#td_uprav_"+id_disc).html("отправили далее на подпись");
else $("#td_uprav_"+id_disc).html("вернули на доработку");
window.ToastShow1("РПД подписали и отправили далее",data.msg,data.err);
}
});
return false;
});*/
//Подписываем РПД через модальное окно
var inputEl = null;
var inputModalEl = null;
var id_disc = 0;
var sign = 0;
var kafvyp = 0;
var th = null;
$(".rpd_sign").click(function(){
$(this).hide();
$(".tooltip").hide();
id_disc = $(this).data("id");
sign = $(this).data("sign");
kafvyp = $(this).data("kafvyp");
if(sign==1){
let conf = confirm('Вы уверены? После подписания РПД попадет на проверку далее!');
if(conf) send_sign(id_disc,sign,kafvyp,"");
}else {
th = $(this);
inputEl = $(this);
let options = {keyboard: false};
inputModalEl = new bootstrap.Modal(document.getElementById('InputModal'), options);
inputModalEl.toggle();
}
return false;
});
function send_sign(id_disc,sign,kafvyp,descr){
$.ajax({url: '/rabprog/rpdsign/',cache:false,datatype:'json',method:'post',
data: 'ajdes=RPDSign&id_disc='+id_disc+'&sign='+sign+'&descr='+descr+'&kafvyp='+kafvyp,
success:function(data){
if(sign==1) {
if(data.file_pdf !=''){
$("#td_uprav_" + id_disc).html("<a href='"+data.file_pdf+"' target='_blank'>ссылка на РПД</a>");
}else {
$("#td_uprav_" + id_disc).html("отправили далее на подпись");
}
}
else $("#td_uprav_"+id_disc).html("вернули на доработку");
window.ToastShow1("РПД подписали и отправили далее",data.msg,data.err);
}
});
}
$("#inputmodal_save").click(function(){
//inputEl.val($("#inputval").val());
let descr = $("#inputval").val();
send_sign(id_disc,sign,kafvyp,descr)
inputModalEl.hide();
});
//фильтр таблицы
$(".filter").keyup(function () {
var data = this.value.split(" ");
var jo = $("#fbody").find("tr");
if (this.value == "") {
jo.show();
return;
}
jo.hide();
//Recusively filter the jquery object to get results.
jo.filter(function (i, v) {
var $t = $(this);
for (var d = 0; d < data.length; ++d) {
if ($t.is(":contains('" + data[d] + "')")) {
return true;
}
}
return false;
}).show();
}).focus(function () {
this.value = "";
$(this).css({"color": "black"});
$(this).unbind('focus');
}).css({"color": "#C0C0C0"});
//http://jsfiddle.net/ukW2C/3/ фильтр для всей таблицы
})</script>{/literal}
{else}
<p>нет дисциплин, на подпись</p>
{/if}
<div class="modal fade" id="InputModal" tabindex="-1" aria-labelledby="InputModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="InputModalLabel">Причина отказа подписи</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="mb-3">
<textarea class="form-control" id="inputval" style="height:200px;"></textarea>
</div>
<div class="mb-3" id="modal_variants">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Закрыть</button>
<button type="button" class="btn btn-primary" id="inputmodal_save">Отказать</button>
</div>
</div>
</div>
</div>