Rework on Bootstrap 5: standard navbar+offcanvas (fixed empty menu), Bootstrap Icons, complete B3 theme via BS vars, row/col grids
This commit is contained in:
@@ -33,25 +33,25 @@
|
||||
<h2 class="section-title m-0">Условие лабораторной</h2>
|
||||
<button class="mini-btn" type="button" data-action="lab-edit"
|
||||
title="Редактировать параметры лабораторной" aria-label="Редактировать параметры лабораторной">
|
||||
<span class="cell-ico ico ico-pencil" aria-hidden="true"></span>
|
||||
<i class="cell-ico ico bi bi-pencil" aria-hidden="true"></i>
|
||||
</button>
|
||||
</div>
|
||||
<div class="card card-body md-body mb-6" id="lab-description-view" th:utext="${descriptionHtml}"></div>
|
||||
<form id="lab-edit-form" hidden class="card card-body form-stack mb-6" method="post"
|
||||
th:action="@{/admin/labs/{id}/edit(id=${lab.id})}">
|
||||
<input type="hidden" name="_csrf" th:value="${csrfToken}">
|
||||
<div class="grid grid-2">
|
||||
<div><label class="label" for="l-title">Название</label>
|
||||
<div class="row g-3">
|
||||
<div class="col-md-6"><label class="label" for="l-title">Название</label>
|
||||
<input class="input" id="l-title" name="title" th:value="${lab.title}" required></div>
|
||||
<div><label class="label" for="l-points">Максимум баллов</label>
|
||||
<div class="col-md-6"><label class="label" for="l-points">Максимум баллов</label>
|
||||
<input class="input" id="l-points" name="pointsMax" type="number" step="0.1" min="0"
|
||||
th:value="${lab.pointsMax}" required></div>
|
||||
</div>
|
||||
<div class="grid grid-2">
|
||||
<div><label class="label" for="l-deadline">Срок сдачи (время — МСК)</label>
|
||||
<div class="row g-3">
|
||||
<div class="col-md-6"><label class="label" for="l-deadline">Срок сдачи (время — МСК)</label>
|
||||
<input class="input" id="l-deadline" name="deadlineAt" type="datetime-local"
|
||||
th:value="${deadlineLocal}"></div>
|
||||
<div><label class="label" for="l-defense">Дата защиты (время — МСК)</label>
|
||||
<div class="col-md-6"><label class="label" for="l-defense">Дата защиты (время — МСК)</label>
|
||||
<input class="input" id="l-defense" name="defenseAt" type="datetime-local" th:value="${defenseLocal}">
|
||||
</div>
|
||||
</div>
|
||||
@@ -82,7 +82,7 @@
|
||||
<div class="flex items-center gap-2">
|
||||
<button class="mini-btn" type="button" th:attr="data-modal=|modal-level-rename-${level.id}|"
|
||||
title="Переименовать уровень" aria-label="Переименовать уровень">
|
||||
<span class="cell-ico ico ico-pencil" aria-hidden="true"></span>
|
||||
<i class="cell-ico ico bi bi-pencil" aria-hidden="true"></i>
|
||||
</button>
|
||||
<form class="inline-form"
|
||||
th:action="@{/admin/labs/{labId}/levels/{levelId}/delete(labId=${lab.id}, levelId=${level.id})}"
|
||||
@@ -90,7 +90,7 @@
|
||||
<input type="hidden" name="_csrf" th:value="${csrfToken}">
|
||||
<button class="mini-btn danger" type="submit" title="Удалить уровень"
|
||||
aria-label="Удалить уровень">
|
||||
<span class="cell-ico ico ico-trash" aria-hidden="true"></span>
|
||||
<i class="cell-ico ico bi bi-trash" aria-hidden="true"></i>
|
||||
</button>
|
||||
</form>
|
||||
<button class="btn btn-sm" type="button" th:attr="data-modal=|modal-variant-add-${level.id}|">+
|
||||
@@ -108,7 +108,7 @@
|
||||
<div class="flex gap-2">
|
||||
<button class="mini-btn" type="button" th:attr="data-modal=|modal-variant-edit-${v.id}|"
|
||||
title="Редактировать вариант" aria-label="Редактировать вариант">
|
||||
<span class="cell-ico ico ico-pencil" aria-hidden="true"></span>
|
||||
<i class="cell-ico ico bi bi-pencil" aria-hidden="true"></i>
|
||||
</button>
|
||||
<form class="inline-form"
|
||||
th:action="@{/admin/labs/{labId}/variants/{variantId}/delete(labId=${lab.id}, variantId=${v.id})}"
|
||||
@@ -116,7 +116,7 @@
|
||||
<input type="hidden" name="_csrf" th:value="${csrfToken}">
|
||||
<button class="mini-btn danger" type="submit" title="Удалить вариант"
|
||||
aria-label="Удалить вариант">
|
||||
<span class="cell-ico ico ico-trash" aria-hidden="true"></span>
|
||||
<i class="cell-ico ico bi bi-trash" aria-hidden="true"></i>
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
@@ -154,12 +154,12 @@
|
||||
method="post">
|
||||
<input type="hidden" name="_csrf" th:value="${csrfToken}">
|
||||
<input type="hidden" name="labLevelId" th:value="${level.id}">
|
||||
<div class="grid grid-2">
|
||||
<div><label class="label" for="|va-number-${level.id}|">Номер</label>
|
||||
<div class="row g-3">
|
||||
<div class="col-md-6"><label class="label" for="|va-number-${level.id}|">Номер</label>
|
||||
<input class="input" th:id="|va-number-${level.id}|" name="number" required></div>
|
||||
<div><label class="label" for="|va-title-${level.id}|">Название</label>
|
||||
<div class="col-md-6"><label class="label" for="|va-title-${level.id}|">Название</label>
|
||||
<input class="input" th:id="|va-title-${level.id}|" name="title"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div><label class="label" for="|va-statement-${level.id}|">Условие (markdown)</label>
|
||||
<textarea class="input" th:id="|va-statement-${level.id}|" name="statementMd"
|
||||
rows="8"></textarea></div>
|
||||
@@ -179,14 +179,14 @@
|
||||
<input type="hidden" name="_csrf" th:value="${csrfToken}">
|
||||
<input type="hidden" name="variantId" th:value="${v.id}">
|
||||
<input type="hidden" name="labLevelId" th:value="${level.id}">
|
||||
<div class="grid grid-2">
|
||||
<div><label class="label" for="|ve-number-${v.id}|">Номер</label>
|
||||
<div class="row g-3">
|
||||
<div class="col-md-6"><label class="label" for="|ve-number-${v.id}|">Номер</label>
|
||||
<input class="input" th:id="|ve-number-${v.id}|" name="number" th:value="${v.number}"
|
||||
required></div>
|
||||
<div><label class="label" for="|ve-title-${v.id}|">Название</label>
|
||||
<div class="col-md-6"><label class="label" for="|ve-title-${v.id}|">Название</label>
|
||||
<input class="input" th:id="|ve-title-${v.id}|" name="title" th:value="${v.title}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div><label class="label" for="|ve-statement-${v.id}|">Условие (markdown)</label>
|
||||
<textarea class="input" th:id="|ve-statement-${v.id}|" name="statementMd" rows="10"
|
||||
th:text="${v.statementMd}"></textarea></div>
|
||||
|
||||
Reference in New Issue
Block a user