477 lines
29 KiB
HTML
477 lines
29 KiB
HTML
|
{function name=edit_json id_file=0 id_discip=0 json_plan=array() json_xlsx=array() }
|
|||
|
{*$id_file-ID файла*}
|
|||
|
{*$id_discip-ID дисциплины*}
|
|||
|
{*$json_plan-что в системе записано*}
|
|||
|
{*$json_xlsx-из екселя выборка*}
|
|||
|
<div class="row">
|
|||
|
<div class="col-5" {if $json_plan!=$json_xlsx} style='color:red;'{/if}>
|
|||
|
{foreach from=$json_plan item=j key=kurs}
|
|||
|
Курс:<b>{$kurs}</b>;
|
|||
|
{foreach from=$j item=j1 key=sem}
|
|||
|
Сем:<b>{$sem}</b>;
|
|||
|
{foreach from=$j1 item=j2 key=wht}
|
|||
|
{$wht}={$j2};
|
|||
|
{/foreach}
|
|||
|
{/foreach}
|
|||
|
<br>
|
|||
|
{/foreach}
|
|||
|
</div>
|
|||
|
<div class="col-6">
|
|||
|
<textarea class="form-control" id="textarea_json_{$id_discip}" data-id_discip="{$id_discip}" data-id_file="{$id_file}">{json_encode($json_plan,JSON_UNESCAPED_UNICODE)}</textarea>
|
|||
|
</div>
|
|||
|
<div class="col-1">
|
|||
|
<a href="#" class="btn btn-sm btn-info btn_plan_save_json_only" data-id_discip="{$id_discip}" data-id_file="{$id_file}" data-bs-toggle="tooltip" data-bs-placement="top" title="2: Сохранение данных только по семестрам!!! после сохранения этого, обновлять страницу, если надо сохранять название дисциплины и т.д.(не структуру курс-сем)"><i class="bi bi-save"></i></a>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
{*<table class="table">
|
|||
|
{foreach from=$json_plan item=j key=kurs}
|
|||
|
Курс:<b>{$kurs}</b>;
|
|||
|
{foreach from=$j item=j1 key=sem}
|
|||
|
Сем:<b>{$sem}</b>;
|
|||
|
{foreach from=$j1 item=j2 key=wht}
|
|||
|
{$wht}={$j2};
|
|||
|
<tr>
|
|||
|
<td>Курс:<select class="form-select">{for $i=1 to 6}<option value="{$i}" {if $i==$kurs}SELECTED{/if}>{$i}</option>{/for}</select></td>
|
|||
|
<td>Сем:<select class="form-select">{for $i=1 to 12}<option value="{$i}" {if $i==$sem}SELECTED{/if}>{$i}</option>{/for}</select></td>
|
|||
|
<td>ЗЕ:<input type="TEXT" class="form-control" value="">{for $i=1 to 12}<option value="{$i}" {if $i==$sem}SELECTED{/if}>{$i}</option>{/for}</input></td>
|
|||
|
</tr>
|
|||
|
{/foreach}
|
|||
|
{/foreach}
|
|||
|
<br>
|
|||
|
{/foreach}
|
|||
|
</table>*}
|
|||
|
{/function}
|
|||
|
|
|||
|
{if $view=='edit'}
|
|||
|
<h3>Редактирование плана "{$PLAN.title.shifr} {$PLAN.title.naprav}"</h3>
|
|||
|
<ul class="nav nav-pills mb-3" id="pills-tab" role="tablist">
|
|||
|
<li class="nav-item" role="presentation">
|
|||
|
<button class="nav-link active" id="pills-home-tab" data-bs-toggle="pill" data-bs-target="#pills-title" type="button" role="tab" aria-controls="pills-title" aria-selected="true">Оглавление</button>
|
|||
|
</li>
|
|||
|
<li class="nav-item" role="presentation">
|
|||
|
<button class="nav-link" id="pills-profile-tab" data-bs-toggle="pill" data-bs-target="#pills-plan" type="button" role="tab" aria-controls="pills-plan" aria-selected="false">План</button>
|
|||
|
</li>
|
|||
|
<li class="nav-item" role="presentation">
|
|||
|
<button class="nav-link" id="pills-contact-tab" data-bs-toggle="pill" data-bs-target="#pills-competen" type="button" role="tab" aria-controls="pills-competen" aria-selected="false">Компетенции</button>
|
|||
|
</li>
|
|||
|
<li class="nav-item" role="presentation">
|
|||
|
<button class="nav-link" id="pills-discip-tab" data-bs-toggle="pill" data-bs-target="#pills-discip" type="button" role="tab" aria-controls="pills-discipn" aria-selected="false">Дисциплины</button>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
<div class="tab-content" id="pills-tabContent">
|
|||
|
<div class="tab-pane fade show active" id="pills-title" role="tabpanel" aria-labelledby="pills-title-tab">
|
|||
|
<form method="post" id="form_title">
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_program" class="form-label">Программа</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_program" name="program" aria-describedby="title_program_help" value="{$PLAN.title.program}">
|
|||
|
<div id="title_program_help" class="form-text">Программа</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_shifr" class="form-label">Шифр</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_shifr" name="shifr" aria-describedby="title_shifr_help" value="{$PLAN.title.shifr}">
|
|||
|
<div id="title_shifr_help" class="form-text">Шифр</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_naprav" class="form-label">Направление</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_naprav" name="naprav" aria-describedby="title_naprav_help" value="{$PLAN.title.naprav}">
|
|||
|
<div id="title_naprav_help" class="form-text">Направление</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_profil" class="form-label">Профиль</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_profil" name="profil" aria-describedby="title_profil_help" value="{$PLAN.title.profil}">
|
|||
|
<div id="title_profil_help" class="form-text">Профиль</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_kafedra" class="form-label">Кафедра</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_kafedra" name="kafedra" aria-describedby="title_kafedra_help" value="{$PLAN.title.kafedra}">
|
|||
|
<div id="title_kafedra_help" class="form-text">Кафедра</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_fakultet" class="form-label">Факультет</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_fakultet" name="fakultet" aria-describedby="title_fakultet_help" value="{$PLAN.title.fakultet}">
|
|||
|
<div id="title_fakultet_help" class="form-text">Факультет</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_kvalif" class="form-label">Квалификация</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_kvalif" name="kvalif" aria-describedby="title_kvalif_help" value="{$PLAN.title.kvalif}">
|
|||
|
<div id="title_kvalif_help" class="form-text">Квалификация</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_god_nach_podgot" class="form-label">Год начала подготовки</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_god_nach_podgot" name="god_nach_podgot" aria-describedby="title_god_nach_podgot_help" value="{$PLAN.title.god_nach_podgot}">
|
|||
|
<div id="title_god_nach_podgot_help" class="form-text">Год начала подготовки</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_fo" class="form-label">Форма обучения</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_fo" name="fo" aria-describedby="title_fo_help" value="{$PLAN.title.fo}">
|
|||
|
<div id="title_fo_help" class="form-text">Форма обучения</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_obr_stabdart" class="form-label">Образовательный стандарт</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_obr_stabdart" name="obr_stabdart" aria-describedby="title_obr_stabdart_help" value="{$PLAN.title.obr_stabdart}">
|
|||
|
<div id="title_obr_stabdart_help" class="form-text">Образовательный стандарт</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="row g-3">
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_srok_poluch_obr" class="form-label">Срок получения образования</label>
|
|||
|
<input type="TEXT" class="form-control" id="title_srok_poluch_obr" name="srok_poluch_obr" aria-describedby="title_srok_poluch_obr_help" value="{$PLAN.title.srok_poluch_obr}">
|
|||
|
<div id="title_srok_poluch_obr_help" class="form-text">Срок получения образования</div>
|
|||
|
</div>
|
|||
|
<div class="col-md-6">
|
|||
|
<label for="title_info" class="form-label">Информация</label><br>
|
|||
|
<input type="HIDDEN" id="title_id" name="id" value="{$PLAN.title.id}">
|
|||
|
<a href="" class="btn btn-warning" id="title_info" aria-describedby="title_info_help">Сохранить</a>
|
|||
|
<div id="title_info_help" class="form-text">Дата загрузки: <strong>{date('H:i d.m.Y',$PLAN.title.data_c)}</strong></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
{*<pre>{print_r($PLAN.title)}</pre>*}
|
|||
|
</div>
|
|||
|
<div class="tab-pane fade" id="pills-plan" role="tabpanel" aria-labelledby="pills-plan-tab">
|
|||
|
<table class="table table-striped table-bordered border-info table-sm">
|
|||
|
<thead>
|
|||
|
<tr>
|
|||
|
<th class="col-md-2">Индекс</th>
|
|||
|
<th>Название</th>
|
|||
|
<th style="width:50px;">Экз</th>
|
|||
|
<th style="width:50px;">Зач</th>
|
|||
|
<th style="width:50px;">ЗаО</th>
|
|||
|
<th style="width:50px;">КР</th>
|
|||
|
<th style="width:50px;">КП</th>
|
|||
|
<th style="width:50px;">Кон</th>
|
|||
|
<th style="width:40px;">ККаф.</th>
|
|||
|
<th>НКаф.</th>
|
|||
|
<th style="width:80px;"></th>
|
|||
|
</tr>
|
|||
|
</thead>
|
|||
|
{*<pre>{print_r($PLAN)}</pre>*}
|
|||
|
{foreach from=$PLAN.plan item=item key=k}
|
|||
|
<tr id="tr_{$item.id}">
|
|||
|
<td><input type="text" class="form-control form-control-sm" id="index1_{$item.id}" value="{$item.index1}"></td>
|
|||
|
<td><input type="text" class="form-control form-control-sm" id="name_{$item.id}" value="{$item.name}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="ekzamen_{$item.id}" value="{$item.ekzamen}" data-bs-toggle="tooltip" data-bs-placement="top" title="Экзамен: {if $PLAN.planfile[$item.index1].ekzamen!=$item.ekzamen} Должен быть: {$PLAN.planfile[$item.index1].ekzamen}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="zachet_{$item.id}" value="{$item.zachet}" data-bs-toggle="tooltip" data-bs-placement="top" title="Зачет: {if $PLAN.planfile[$item.index1].zachet!=$item.zachet}Должен быть: {$PLAN.planfile[$item.index1].zachet}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="zachetsocenk_{$item.id}" value="{$item.zachetsocenk}" data-bs-toggle="tooltip" data-bs-placement="top" title="Зачет с оценкой: {if $PLAN.planfile[$item.index1].zachetsocenk!=$item.zachetsocenk}Должен быть: {$PLAN.planfile[$item.index1].zachetsocenk}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="kr_{$item.id}" value="{$item.kr}" data-bs-toggle="tooltip" data-bs-placement="top" title="Курсовая: {if $PLAN.planfile[$item.index1].kr!=$item.kr}Должен быть: {$PLAN.planfile[$item.index1].kr}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="kp_{$item.id}" value="{$item.kp}" data-bs-toggle="tooltip" data-bs-placement="top" title="Проект: {if $PLAN.planfile[$item.index1].kp!=$item.kp}Должен быть: {$PLAN.planfile[$item.index1].kp}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="kontrol_{$item.id}" value="{$item.kontrol}" data-bs-toggle="tooltip" data-bs-placement="top" title="Контрольн: {if $PLAN.planfile[$item.index1].kontrol!=$item.kontrol} Должен быть: {$PLAN.planfile[$item.index1].kontrol}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="kaf_kod_{$item.id}" value="{$item.kaf_kod}" {if $PLAN.planfile[$item.index1].kafcod!=$item.kaf_kod} data-bs-toggle="tooltip" data-bs-placement="top" title="Должен быть: {$PLAN.planfile[$item.index1].kafcod}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="kaf_name_{$item.id}" value="{$item.kaf_name}" {if $PLAN.planfile[$item.index1].kafname!=$item.kaf_name} data-bs-toggle="tooltip" data-bs-placement="top" title="Должна быть: {$PLAN.planfile[$item.index1].kafname}" style="border: 1px solid red;{/if}"></td>
|
|||
|
<td>
|
|||
|
<a href="#" class="btn btn-sm btn-warning btn_plan_save" data-id="{$item.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Сохранение дисциплины"><i class="bi bi-save"></i></a>
|
|||
|
<a href="#" class="btn btn-sm btn-danger btn_plan_dele" data-id="{$item.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Удаление дисциплины плана"><i class="bi bi-trash"></i></a>
|
|||
|
</td>
|
|||
|
</tr>
|
|||
|
<tr id="tr1_{$item.id}">
|
|||
|
<td colspan="8">
|
|||
|
{edit_json id_file=$item.id_file id_discip=$item.id json_plan=$item.json json_xlsx=$PLAN.planfile[$item.index1].json1}
|
|||
|
<table class="table table-sm" style="display: none;">
|
|||
|
<tr>
|
|||
|
<td>
|
|||
|
{foreach from=$item.json item=j key=kurs}
|
|||
|
Курс:<b>{$kurs}</b>;
|
|||
|
{foreach from=$j item=j1 key=sem}
|
|||
|
Сем:<b>{$sem}</b>;
|
|||
|
{foreach from=$j1 item=j2 key=wht}
|
|||
|
{$wht}={$j2};
|
|||
|
{/foreach}
|
|||
|
{/foreach}
|
|||
|
<br>
|
|||
|
{/foreach}
|
|||
|
{*<pre>{print_r($item.json)}</pre>*}
|
|||
|
</td>
|
|||
|
<td style="color:red;">{if $item.json!=$PLAN.planfile[$item.index1].json1}
|
|||
|
{foreach from=$PLAN.planfile[$item.index1].json1 item=j key=kurs}
|
|||
|
Курс:<b>{$kurs}</b>;
|
|||
|
{foreach from=$j item=j1 key=sem}
|
|||
|
Сем:<b>{$sem}</b>;
|
|||
|
{foreach from=$j1 item=j2 key=wht}
|
|||
|
{$wht}={$j2};
|
|||
|
{/foreach}
|
|||
|
{/foreach}
|
|||
|
<br>
|
|||
|
{/foreach}
|
|||
|
{/if}
|
|||
|
{*<pre>{print_r($PLAN.planfile[$item.index1].json1)}</pre>*}
|
|||
|
</td>
|
|||
|
</tr>
|
|||
|
</table>
|
|||
|
</td>
|
|||
|
<td colspan="2">
|
|||
|
{if count($item.discip_prepod)} <span class="badge bg-warning">назначили</span>{else} не назначили{/if}
|
|||
|
{if count($item.discip_save)} <span class="badge bg-danger">Есть сохранения</span>{else} нет сохранений{/if}
|
|||
|
</td>
|
|||
|
<td>{if $item.json!=$PLAN.planfile[$item.index1].json1}
|
|||
|
<a href="#" class="btn btn-sm btn-info btn_plan_save_json" data-id="{$item.id}" data-json='{base64_encode($PLAN.planfile[$item.index1].json)}' data-bs-toggle="tooltip" data-bs-placement="top" title="1: Сохранение данных по семестрам!!! Если они не верны(горят красным!)"><i class="bi bi-save"></i></a>
|
|||
|
{/if}</td>
|
|||
|
</tr>
|
|||
|
{/foreach}
|
|||
|
</table>
|
|||
|
</div>
|
|||
|
<div class="tab-pane fade" id="pills-competen" role="tabpanel" aria-labelledby="pills-competen-tab">
|
|||
|
<a href="#" class="btn_competen_dele_all" data-idfile="{$PLAN.title.id_file}">Удалить компетенции без дисциплин</a> Компетенции без дисциплин:
|
|||
|
<table class="table">
|
|||
|
<thead>
|
|||
|
<tr>
|
|||
|
<th style="width:200px;">Индекс</th>
|
|||
|
<th>Компетенция</th>
|
|||
|
<th style="width:80px;"></th>
|
|||
|
</tr>
|
|||
|
</thead>
|
|||
|
<tbody>
|
|||
|
{foreach from=$PLAN.competen item=comp key=cod}
|
|||
|
{if !count($comp.discips)}{$comp.id},{/if}
|
|||
|
<tr id="trcomp_{$comp.id}">
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="competen_index_{$comp.id}" value="{$comp.index}">
|
|||
|
<select class="form-select compet_add_uchebplan" id="compet_add_uchebplan_{$comp.id}" data-compid="{$comp.id}">
|
|||
|
<option value="0">Добавление дисциплины</option>
|
|||
|
{foreach from=$PLAN.plan item=item key=k}
|
|||
|
<option value="{$item.id}">{$item.index1} {$item.name}</option>
|
|||
|
{/foreach}
|
|||
|
</select>
|
|||
|
</td>
|
|||
|
<td>
|
|||
|
<input type="text" class="form-control form-control-sm" id="competen_descrip_{$comp.id}" value="{$comp.descrip}">
|
|||
|
<span id="comp_ucheb_issets_{$comp.id}">
|
|||
|
{foreach from=$comp.discips item=discip}
|
|||
|
<span style="cursor: pointer;" class="comp_ucheb_isset" data-iducheb="{$discip.id}" data-idcomp="{$comp.id}" id="comp_ucheb_isset_{$comp.id}_{$discip.id}">{$discip.index1} {$discip.name};</span>
|
|||
|
{/foreach}
|
|||
|
</span>
|
|||
|
</td>
|
|||
|
<td>
|
|||
|
<a href="#" class="btn btn-sm btn-warning btn_competen_save" data-id="{$comp.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Сохранение компетенции"><i class="bi bi-save"></i></a>
|
|||
|
<a href="#" class="btn btn-sm btn-danger btn_competen_dele" data-id="{$comp.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Удаление компетенции плана" onclick="return confirm('Уверены удалить компетенцию из учебного плана?')"><i class="bi bi-trash"></i></a>
|
|||
|
<a href="#" class="btn btn-sm btn-info btn_competen_copy" data-id="{$comp.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Копирование дисциплин компетенции плана"><i class="bi bi-clipboard-plus"></i></a>
|
|||
|
<a href="#" class="btn btn-sm btn-info btn_competen_paste" data-id="{$comp.id}" data-bs-toggle="tooltip" data-bs-placement="top" title="Вставка дисциплин компетенции плана из ранее скопированной"><i class="bi bi-clipboard-check"></i></a>
|
|||
|
</td>
|
|||
|
</tr>
|
|||
|
{/foreach}
|
|||
|
</tbody>
|
|||
|
</table>
|
|||
|
</div>
|
|||
|
<div class="tab-pane fade" id="pills-discip" role="tabpanel" aria-labelledby="pills-discip-tab">
|
|||
|
<table class="table table-striped table-bordered border-info table-sm">
|
|||
|
<thead>
|
|||
|
<tr>
|
|||
|
<th class="col-md-2">Индекс</th>
|
|||
|
<th>Название</th>
|
|||
|
<th>Преподаватель</th>
|
|||
|
<th>Назначение</th>
|
|||
|
<th>Сохранения</th>
|
|||
|
</tr>
|
|||
|
</thead>
|
|||
|
{foreach from=$PLAN.upprepods item=item key=k}
|
|||
|
<tr id="tr_{$item.id}">
|
|||
|
<td>{$item.index1}</td>
|
|||
|
<td>{$item.name}</td>
|
|||
|
<td>{$item.fio}</td>
|
|||
|
<td>{$item.descrip}</td>
|
|||
|
<td>
|
|||
|
{if isset($item.save)&&count($item.save)}
|
|||
|
Есть сохранения от: {date('H:i d.m.Y',$item.save.data_c)}
|
|||
|
<select class="form-select discip_change" id="dc_{$item.save.id}" data-saveid="{$item.save.id}" data-saveiddiscip="{$item.save.id_discip}" data-saveidprepod="{$item.save.id_prepod}">
|
|||
|
<option value="0">Не менять</option>
|
|||
|
{foreach from=$PLAN.upprepods item=discip}
|
|||
|
<option value="{$discip.id}">{$discip.index1} {$discip.name}</option>
|
|||
|
{/foreach}
|
|||
|
</select>
|
|||
|
Сменить назначение дисциплины <a href="#" class="btn btn-sm btn-warning discip_change_save" data-saveid="{$item.save.id}">Изменить</a>
|
|||
|
{else}нет{/if}
|
|||
|
</td>
|
|||
|
</tr>
|
|||
|
{/foreach}
|
|||
|
</table>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
{literal}<script>$(document).ready(function(){
|
|||
|
$(document).on("click", ".comp_ucheb_isset", function (){
|
|||
|
let iducheb = $(this).data("iducheb");
|
|||
|
let idcomp = $(this).data("idcomp");
|
|||
|
if (confirm('Удалить дисциплину из компетенции?')) {
|
|||
|
$.ajax({
|
|||
|
url: '/rabprog/shahtplans/', cache: false, datatype: 'json', method: 'post',
|
|||
|
data: 'ajdes=compet_del_uchebplan&compid=' + idcomp + '&uchebid=' + iducheb,
|
|||
|
success: function (data) {
|
|||
|
window.ToastShow1("Удаление дисциплины для компетенции", data.msg, data.err);
|
|||
|
$("#comp_ucheb_isset_" + idcomp + "_" + iducheb).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
});
|
|||
|
$('.compet_add_uchebplan').on('change', function() {
|
|||
|
let compid = $(this).data("compid");
|
|||
|
let uchebid = $("#compet_add_uchebplan_"+compid+" option:selected").val();
|
|||
|
let uchebtext = $("#compet_add_uchebplan_"+compid+" option:selected").text();
|
|||
|
$.ajax({
|
|||
|
url: '/rabprog/shahtplans/', cache: false, datatype: 'json', method: 'post',
|
|||
|
data: 'ajdes=compet_add_uchebplan&compid='+compid+'&uchebid='+uchebid,
|
|||
|
success: function (data) {
|
|||
|
window.ToastShow1("Добавление дисциплины для компетенции", data.msg, data.err);
|
|||
|
$("#comp_ucheb_issets_"+compid).append('<span style="cursor: pointer;" class="comp_ucheb_isset" data-iducheb="'+uchebid+'" data-idcomp="'+compid+'" id="comp_ucheb_isset_'+compid+'_'+uchebid+'">'+uchebtext+';</span>');
|
|||
|
}
|
|||
|
});
|
|||
|
});
|
|||
|
$(".discip_change_save").click(function(event ){
|
|||
|
let saveid = $(this).data('saveid');
|
|||
|
let new_iddiscip = $("#dc_"+saveid+" option:selected").val();
|
|||
|
let saveiddiscip = $("#dc_"+saveid).data("saveiddiscip");
|
|||
|
let saveidprepod = $("#dc_"+saveid).data("saveidprepod");
|
|||
|
$.ajax({
|
|||
|
url: '/rabprog/shahtplans/', cache: false, datatype: 'json', method: 'post',
|
|||
|
data: 'ajdes=plan_plan_change_save_discip&saveid=' + saveid+'&new_iddiscip='+new_iddiscip+'&saveiddiscip='+saveiddiscip+'&saveidprepod='+saveidprepod,
|
|||
|
success: function (data) {
|
|||
|
window.ToastShow1("Смена учебного плана для преподавтаеля", data.msg, data.err);
|
|||
|
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_plan_dele").click(function(event ){
|
|||
|
if(confirm('Уверены удалить дисциплину из учебного плана?')) {
|
|||
|
let id = $(this).data('id');
|
|||
|
$.ajax({
|
|||
|
url: '/rabprog/shahtplans/', cache: false, datatype: 'json', method: 'post',
|
|||
|
data: 'ajdes=plan_plan_dele&id=' + id,
|
|||
|
success: function (data) {
|
|||
|
window.ToastShow1("Удаление Дисциплины плана", data.msg, data.err);
|
|||
|
$("#tr_" + id).remove();
|
|||
|
$("#tr1_" + id).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_plan_save_json").click(function(event ){
|
|||
|
let id=$(this).data('id');
|
|||
|
let json=$(this).data('json');
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_plan_save_json&id='+id+'&json='+encodeURIComponent(json),
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Сохранение курсов и семестров Дисциплины плана ",data.msg,data.err);
|
|||
|
$(this).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_plan_save_json_only").click(function(event){
|
|||
|
let id_discip=$(this).data('id_discip');
|
|||
|
let json=$('#textarea_json_'+id_discip).val();
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_plan_save_json_only&id_discip='+id_discip+'&json='+encodeURIComponent(json),
|
|||
|
success:function(data){
|
|||
|
console.log(data);
|
|||
|
window.ToastShow1("Сохранение часов работ Дисциплины плана ",data.msg,data.err);
|
|||
|
//$(this).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_plan_save").click(function(event ){
|
|||
|
let id=$(this).data('id');
|
|||
|
let index1 = $("#index1_"+id).val();
|
|||
|
let name = $("#name_"+id).val();
|
|||
|
let ekzamen = $("#ekzamen_"+id).val();
|
|||
|
let zachet = $("#zachet_"+id).val();
|
|||
|
let zachetsocenk = $("#zachetsocenk_"+id).val();
|
|||
|
let kr = $("#kr_"+id).val();
|
|||
|
let kp = $("#kp_"+id).val();
|
|||
|
let kontrol = $("#kontrol_"+id).val();
|
|||
|
let kaf_kod = $("#kaf_kod_"+id).val();
|
|||
|
let kaf_name = $("#kaf_name_"+id).val();
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_plan_save&id='+id+'&index1='+index1+'&name='+name+'&kaf_kod='+kaf_kod+'&kaf_name='+kaf_name+'&ekzamen='+ekzamen+'&zachet='+zachet+'&zachetsocenk='+zachetsocenk+'&kr='+kr+'&kp='+kp+'&kontrol='+kontrol,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Сохранение Дисциплины плана",data.msg,data.err);
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_competen_dele").click(function(event ){
|
|||
|
let id=$(this).data('id');
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_competen_dele&id='+id,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Удаление компетенции плана",data.msg,data.err);
|
|||
|
$("#trcomp_"+id).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_competen_save").click(function(event ){
|
|||
|
let id=$(this).data('id');
|
|||
|
let index = $("#competen_index_"+id).val();
|
|||
|
let descrip = $("#competen_descrip_"+id).val();
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_competen_save&id='+id+'&index='+index+'&descrip='+descrip,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Сохранение компетенции плана",data.msg,data.err);
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$('.btn_competen_copy').click(function(){
|
|||
|
let id = $(this).data('id');
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_competen_copy&id='+id,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Копирование дисциплин компетенции плана",data.msg,data.err);
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$('.btn_competen_paste').click(function(){
|
|||
|
let id = $(this).data('id');
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_competen_paste&id='+id,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Вставка дисциплин компетенции плана",data.msg,data.err);
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$("#title_info").click(function(event ){
|
|||
|
event.preventDefault();
|
|||
|
let form = $("#form_title").serialize();
|
|||
|
//console.log(form);
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_title_save&'+form,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Сохранение Титула плана",data.msg,data.err);
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
$(".btn_competen_dele_all").click(function(event ){
|
|||
|
let idfile = $(this).data('idfile');
|
|||
|
window.ToastShow1("Начали удаление компетенций без дисциплин!",'',0);
|
|||
|
$.ajax({url: '/rabprog/shahtplans/',cache:false,datatype:'json',method:'post',
|
|||
|
data: 'ajdes=plan_competen_dele&id=0&idfile='+idfile,
|
|||
|
success:function(data){
|
|||
|
window.ToastShow1("Закончили удаление компетенций без дисциплин!",data.msg,data.err);
|
|||
|
//$("#trcomp_"+id).remove();
|
|||
|
}
|
|||
|
});
|
|||
|
return false;
|
|||
|
});
|
|||
|
})</script>{/literal}
|
|||
|
{/if}
|