{% extends "base.html" %} {% block title %}{{ student.full_name }} · {{ exam.title }}{% endblock %} {% block content %}
Exams / {{ exam.title }} results / {{ student.full_name }}

{{ student.full_name }} {{ student.username }}

{{ student.class_name or 'No class' }} · started {{ att.started_at|dt }}{% if att.submitted_at %} · submitted {{ att.submitted_at|dt }}{% endif %}

{% if att.status == 'submitted' %}{{ att.score|num }} / {{ att.total|num }}{% else %}Writing{% endif %}Score
{% if pct is not none %}{{ '%.1f'|format(pct) }}%{% else %}-{% endif %}Percent
{{ att.tab_switches }}Times left the exam tab
{{ att.strikes }}Warnings
{{ att.interruptions }}Page closed / resumed
{% if att.end_reason %}
Exam ended automatically: {{ att.end_reason }}.
{% endif %} {% if events %}

Integrity log

{% for e in events %}{% endfor %}
{{ e.ts|dt }}{{ e.kind|replace('_',' ') }}{{ e.detail }}
{% endif %} {% for r in rows %}
{{ loop.index }}.{{ r.q.text }}{% if r.q.image %}
{% endif %}
{{ 'Correct' if r.ok else 'Wrong' }} · {{ (r.q.marks if r.ok else 0)|num }}/{{ r.q.marks|num }}
Student answered: {{ r.given_text }}
{% if not r.ok %}
Correct answer: {{ r.correct_text }}
{% endif %}
{% endfor %} {% endblock %}