{% extends "layout/basic.html" %} {% block content %} {% if groups.length %}
{% endif %}

{{ _('Teacher panel') }}

{% set g = group or '' %}
{{ _('Integrity') }}
{{ _('Copy alert') }}
{{ _('Live class') }}
{{ _('Live class mode') }}
{{ _('User registration') }}
{{ _('Registration is enabled') if allowRegister else _('Registration is disabled') }}

{{ _('Submission Statistics') }}

{{ _('Total submissions') }}
{{ total }}
{{ _('Accepted submissions') }}
{{ accepted }} ({{ acceptedPct }}%)
{{ _('Accepted test cases') }}
{{ acceptedCases }} / {{ cases }} ({{ acceptedCasesPct }}%)
{{ _('Active users (last 7 days)') }}
{{ activeUsers7d }}
{{ _('Submissions (last 7 days)') }}
{{ submissions7d }}
{{ _('Users who have submitted') }}
{{ everSubmitted }}
{{ _('Problems') }}
{{ problemCount }}

{{ _('Verdict distribution') }}

{%- for v in verdicts -%} {%- endfor -%} {{ total }} {{ _('Submissions') }}
    {%- for v in verdicts -%}
  • {{ v.label }}: {{ v.count }} ({{ v.pct }}%)
  • {%- endfor -%}

{{ _('Submissions per day (last 14 days)') }}

{%- for d in perDay -%} {%- set h = (130 * d.count / maxPerDay) | round -%} {{ d.count or '' }} {{ d.label }} {%- endfor -%}

{{ _('Activity heatmap (last 26 weeks)') }}

{% include "partials/activity_calendar.html" %}

{{ _('Stuck students') }}

{%- for s in stuckRows -%} {%- endfor -%} {%- if not stuckRows.length -%} {%- endif -%}
{{ _('User') }} {{ _('Problem') }} {{ _('Failed attempts') }}
{{ s.uname }} {{ s.pid }} — {{ s.title }} {{ s.attempts }} {{ _('View progress') }}
{{ _('No stuck students right now.') }}

{{ _('Latest submissions') }}

{%- for r in latestRows -%} {%- endfor -%} {%- if not latestRows.length -%} {%- endif -%}
{{ _('Status') }} {{ _('User') }} {{ _('Problem') }} {{ _('Score') }} {{ _('Language') }} {{ _('Submit At') }}
{{ r.statusText }} {{ r.uname }} {{ r.pid }} — {{ r.title }} {{ r.score }} {{ r.lang }} {{ datetimeSpan(r.at)|safe }}
{{ _('No Submissions') }}
{% endblock %}