You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
3.4 KiB
62 lines
3.4 KiB
{% extends "base.html" %} |
|
{% block title %}Разбор попытки{% endblock %} |
|
|
|
{% block content %} |
|
<div class="test-detail-page attempt-review-page"> |
|
<header class="attempt-review-page__header"> |
|
<p class="link-back attempt-review-page__back"><a href="/tests">← к списку тестов</a></p> |
|
<h1 class="attempt-review-page__title font-headline">Разбор: {{ review.testTitle }}</h1> |
|
{% set tl = review.timeLimit %} |
|
{% set timestr = 'без ограничения' if tl is none or tl == 0 else (tl|string ~ ' мин') %} |
|
{% set rm = review.resultMode or 'end' %} |
|
{% set res = 'сразу' if rm == 'immediate' else 'в конце' %} |
|
{% set hint = 'недоступны' if rm != 'immediate' else ('вкл' if review.hintsEnabled else 'выкл') %} |
|
<p class="attempt-review-page__params text-muted text-sm"> |
|
Порог: {{ review.passingThreshold }}% · Вопросов: {{ review.totalQuestions }} · Время: {{ timestr }} · Результат: {{ res }} · Подсказки: {{ hint }} |
|
</p> |
|
<div class="attempt-review-score {% if review.passed %}attempt-review-score--pass{% else %}attempt-review-score--fail{% endif %}"> |
|
<div class="attempt-review-score__main"> |
|
<span class="attempt-review-score__label">Итог</span> |
|
<p class="attempt-review-score__value"> |
|
Правильно <strong>{{ review.correctCount }}</strong> из {{ review.totalQuestions }} |
|
<span class="attempt-review-score__percent">({{ review.percent }}%)</span> |
|
</p> |
|
<p class="attempt-review-score__threshold">Порог зачёта: {{ review.passingThreshold }}%</p> |
|
</div> |
|
<span class="attempt-review-score__verdict">{% if review.passed %}Зачёт{% else %}Незачёт{% endif %}</span> |
|
</div> |
|
</header> |
|
|
|
<div class="attempt-review-page__list"> |
|
{% for q in review.questions %} |
|
<article class="attempt-card attempt-review-card"> |
|
<div class="attempt-review-card__head"> |
|
<span class="attempt-review-card__num">{{ loop.index }}</span> |
|
<span class="attempt-review-card__badge {% if q.isUserCorrect %}attempt-review-card__badge--ok{% else %}attempt-review-card__badge--bad{% endif %}"> |
|
{{ 'Верно' if q.isUserCorrect else 'Ошибка' }} |
|
</span> |
|
</div> |
|
<p class="attempt-review-card__question">{{ q.text }}</p> |
|
{% if q.aiHint %} |
|
<div class="attempt-review-hint"> |
|
<span class="attempt-review-hint__label">Подсказка</span> |
|
<p class="attempt-review-hint__text">{{ q.aiHint }}</p> |
|
</div> |
|
{% endif %} |
|
<ul class="attempt-review-options" role="list"> |
|
{% for o in q.options %} |
|
<li class="attempt-review-option |
|
{% if o.isCorrect %}attempt-review-option--correct{% endif %} |
|
{% if o.selected and not o.isCorrect %}attempt-review-option--wrong{% endif %}"> |
|
<span class="attempt-review-option__text"> |
|
<span class="attempt-review-option__mark" aria-hidden="true">{% if o.selected %}☑{% else %}☐{% endif %}</span> |
|
<span class="attempt-review-option__body">{{ o.text }}{% if o.isCorrect %}<span class="attempt-review-option__tag">верный ответ</span>{% endif %}</span> |
|
</span> |
|
</li> |
|
{% endfor %} |
|
</ul> |
|
</article> |
|
{% endfor %} |
|
</div> |
|
</div> |
|
{% endblock %}
|
|
|