diff --git a/flask_app/app/templates/base.html b/flask_app/app/templates/base.html index e3c40f0..483e698 100644 --- a/flask_app/app/templates/base.html +++ b/flask_app/app/templates/base.html @@ -57,39 +57,43 @@ quiz Тестирование - + {% if current_user %} + class="inline-flex items-center justify-center gap-1 + min-w-10 min-h-10 px-2 sm:px-3 rounded-lg + text-ink-700 hover:bg-ink-100" + title="Каталог тестов" aria-label="Каталог тестов"> list_alt - Тесты + Тесты + class="inline-flex items-center justify-center gap-1 + min-w-10 min-h-10 px-2 sm:px-3 rounded-lg + text-ink-700 hover:bg-ink-100" + title="Настройки" aria-label="Настройки"> settings - Настройки + Настройки - {% endif %} - {% if current_user %} - + {{ current_user.full_name or current_user.login }} · {{ current_user.role }} + class="inline-flex items-center justify-center gap-1 + min-w-10 min-h-10 px-2 sm:px-3 rounded-lg + text-ink-700 hover:bg-ink-100 transition" + title="Выйти" aria-label="Выйти"> logout Выйти {% else %} + class="inline-flex items-center gap-1 px-3 py-2 rounded-lg + text-brand-700 hover:bg-brand-50 transition min-h-10"> login Войти diff --git a/flask_app/app/templates/tests/editor.html b/flask_app/app/templates/tests/editor.html index 301b726..ce84228 100644 --- a/flask_app/app/templates/tests/editor.html +++ b/flask_app/app/templates/tests/editor.html @@ -3,187 +3,236 @@ {% block content %} - - - - - - Название - - - - Описание - - - - - - Проходной балл, % - - - - + + {# ── 1. Шапка теста ─────────────────────────────────────────── #} + + Тест + + + Название + + + + + Описание + + + + + Проходной балл, % + + - - + {# ── 2. AI-помощник ─────────────────────────────────────────── #} + auto_awesome AI-помощник - - Сгенерировать вопросы по текущей сетке (число вопросов и вариантов берётся из таблицы ниже). - - - - stars - Сгенерировать по сетке - - - edit_note - Сгенерировать по названию - - - fact_check - Проверить тест - - - tune - Улучшить тест - - + + {# Группа A — генерация. Главные действия. На sm+ — в одну строку. #} + + Создать вопросы + + + edit_note + По названию + + + stars + По текущей сетке + + + + + {# Группа B — анализ существующего. #} + + Улучшить существующее + + + fact_check + Проверить + + + tune + Улучшить + + + + + {# Группа C — импорт. #} + + Импортировать + upload_file - Импорт документа + Загрузить документ (PDF, DOCX, TXT, MD) - + + До 16 МБ. AI извлечёт текст и предложит черновик теста. + - - Поддерживаются PDF, DOCX, TXT, MD (до 16 МБ). AI извлечёт текст и предложит черновик теста. - + + - - + {# ── 3. Вопросы ─────────────────────────────────────────────── #} + Вопросы (0) + class="inline-flex items-center gap-1 px-3 py-2 rounded-lg + bg-white border border-ink-300/60 hover:border-brand-300 text-sm min-h-10"> add - Добавить вопрос + Добавить вопрос + Добавить + - - - +{# ── Sticky-footer: «Цепочка активна» + «Сохранить» ────────────── #} + + + - Цепочка активна (виден в каталоге) + Цепочка активна - - + К каталогу + class="hidden sm:inline-flex px-3 py-2 rounded-lg text-ink-700 hover:bg-ink-100 text-sm"> + К каталогу + + class="inline-flex items-center gap-2 px-4 py-2.5 rounded-lg + bg-brand-600 hover:bg-brand-700 text-white font-medium min-h-11"> save Сохранить - + + - +{# ── Шаблон вопроса ─────────────────────────────────────────────── #} - - - Вопрос # - - + + {# Шапка карточки вопроса: номер слева, кнопки справа. #} + + Вопрос # + + arrow_upward - + arrow_downward - + delete - - - - + {# Тип ответа + AI — две полные строки на мобиле, в строку на sm+. #} + + + Несколько правильных ответов - + auto_awesome AI: вопрос/переформулировать - - - add Добавить вариант - - + + add + Добавить вариант + - - - - - AI - - close - - - - - - - +{# ── Шаблон варианта ────────────────────────────────────────────── #} - - + + + - + close + +{# ── Модалка результата AI-проверки/улучшения (fullscreen на мобиле) ── #} + + + + AI + + close + + + + + + {% endblock %} {% block scripts %} diff --git a/flask_app/app/templates/tests/list.html b/flask_app/app/templates/tests/list.html index 8f5a709..1c4d124 100644 --- a/flask_app/app/templates/tests/list.html +++ b/flask_app/app/templates/tests/list.html @@ -2,39 +2,42 @@ {% block title %}Тесты — каталог{% endblock %} {% block content %} - - + + - Каталог тестов + Каталог тестов Активные тесты, к которым у вас есть доступ. + class="inline-flex items-center justify-center gap-2 px-4 py-3 rounded-lg + bg-brand-600 hover:bg-brand-700 text-white font-medium transition + min-h-11 w-full sm:w-auto"> add Создать тест {% if visible %} - + {% for t in visible %} - - - {{ t.title }} - v{{ t.version }} - - {% if t.description %} - {{ t.description }} - {% endif %} - Автор: {{ t.author_full_name or '—' }} - - - edit_note - Открыть редактор - - + + + + {{ t.title }} + v{{ t.version }} + + {% if t.description %} + {{ t.description }} + {% endif %} + + Автор: {{ t.author_full_name or '—' }} + + edit_note + Открыть + + + {% endfor %} @@ -60,16 +63,23 @@ {% endif %} - - - + + + Новый тест + + close + - + Название @@ -79,11 +89,13 @@ focus:border-brand-500 focus:ring-2 focus:ring-brand-500/20"> - + Отмена + class="px-4 py-2.5 rounded-lg text-ink-700 hover:bg-ink-100 min-h-11">Отмена + class="px-4 py-2.5 rounded-lg bg-brand-600 hover:bg-brand-700 text-white min-h-11"> Создать @@ -106,6 +118,7 @@ setTimeout(() => titleEl.focus(), 50); }); document.getElementById('dlg-cancel').addEventListener('click', () => dlg.close()); + document.getElementById('dlg-cancel-x').addEventListener('click', () => dlg.close()); document.getElementById('dlg-submit').addEventListener('click', async () => { const title = titleEl.value.trim();
- Сгенерировать вопросы по текущей сетке (число вопросов и вариантов берётся из таблицы ниже). -
Создать вопросы
Улучшить существующее
Импортировать
+ До 16 МБ. AI извлечёт текст и предложит черновик теста. +
- Поддерживаются PDF, DOCX, TXT, MD (до 16 МБ). AI извлечёт текст и предложит черновик теста. -
Активные тесты, к которым у вас есть доступ.
{{ t.description }}
Автор: {{ t.author_full_name or '—' }}