Skip to content
Snippets Groups Projects
Commit 204f0da7 authored by Jan Prachař's avatar Jan Prachař
Browse files

org_round: Předělaná stránka kola

 * Tabulka s jednotlivými soutěžemi / podoblastmi je hned vlevo nahoře.
 * Metadata ke kolu jsou rozdělena do tří panelů na pravé straně. Každý
   panel mé kontextově odpovídající tlačítka na další akce.
parent f858488a
No related branches found
No related tags found
No related merge requests found
...@@ -10,15 +10,30 @@ ...@@ -10,15 +10,30 @@
{% set can_add_contest = g.gatekeeper.rights_generic().have_right(Right.add_contest) %} {% set can_add_contest = g.gatekeeper.rights_generic().have_right(Right.add_contest) %}
{% block title %} {% block title %}
{{ round.name }} kategorie {{ round.category }}{% if in_hier %}: {{ ctx.hier_place.name }}{% endif %} {{ round.name }} {{ round.category }}{% if in_hier %}: {{ ctx.hier_place.name }}{% endif %}
{% endblock %} {% endblock %}
{% block breadcrumbs %} {% block breadcrumbs %}
{{ ctx.breadcrumbs() }} {{ ctx.breadcrumbs() }}
{% endblock %} {% endblock %}
{% block body %} {% block body %}
<div class="row">
<table class="table table-bordered table-condensed table-auto"> <div class="col-md-5 col-md-push-7">
<div class="panel panel-default">
<table class="table table-bordered">
<tr><td>Stav kola<td>{{ round.state.friendly_name() }}
<tr>
<td>Zadání úloh
<td>
{% if offer_view_statement %}
<a class="btn btn-default" href='{{ ctx.url_for('org_task_statement') }}'>
<img class="media-object" src="{{ url_for('static', filename='img/pdficon.svg') }}" alt="PDF" style="width: 24px; display: inline-block">
Stáhnout
</a>
{% else %}
{{ offer_view_statement_reason }}
{% endif %}
<tr><td>Moje role<td>{% if g.user.is_admin %}správce{% elif roles %}{{ roles|join(", ") }}{% else %}–{% endif %} <tr><td>Moje role<td>{% if g.user.is_admin %}správce{% elif roles %}{{ roles|join(", ") }}{% else %}–{% endif %}
{% if group_rounds|length > 1 %} {% if group_rounds|length > 1 %}
<tr><td>Skupina kol<td> <tr><td>Skupina kol<td>
...@@ -28,10 +43,38 @@ ...@@ -28,10 +43,38 @@
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
<tr><td>Stav<td>{{ round.state.friendly_name() }} </table>
{% with state=round.ct_state() %} <div class="panel-footer">
<tr><td>Stav pro účastníky<td>{{ state.friendly_name() }} {% if can_manage_round %}
{% endwith %} <a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_edit_statement') }}'>
<span class="glyphicon glyphicon-file"></span>
Zadání
</a>
<a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_round_edit') }}'>
<span class="glyphicon glyphicon-cog"></span>
Nastavení
</a>
{% endif %}
{% if round.has_messages %}
<a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_round_messages') }}'>
<span class="glyphicon glyphicon-phone"></span>
Zprávičky
</a>
{% endif %}
{% if g.user.is_admin and not in_hier %}
<a class="btn btn-sm btn-info" href='{{ log_url('round', round.round_id) }}'>Historie</a>
{% endif %}
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">
<span class="glyphicon glyphicon-time"></span>
Přihláška a termíny
</h3>
</div>
<table class="table table-bordered">
<tr><td>Režim přihlašování<td>{{ round.enroll_mode.friendly_name() }} <tr><td>Režim přihlašování<td>{{ round.enroll_mode.friendly_name() }}
<tr><td>Popis v přihlášce<td>{{ round.enroll_advert }} <tr><td>Popis v přihlášce<td>{{ round.enroll_advert }}
<tr> <tr>
...@@ -40,56 +83,67 @@ ...@@ -40,56 +83,67 @@
<tr> <tr>
<td>Dozor vidí zadání a odevzdává <td>Dozor vidí zadání a odevzdává
<td>{{ round.pr_tasks_start|timeformat if round.pr_tasks_start else Markup('<i>nenastaveno</i>') }} – {{ round.pr_submit_end|timeformat if round.pr_submit_end else Markup('<i>nenastaveno</i>') }} <td>{{ round.pr_tasks_start|timeformat if round.pr_tasks_start else Markup('<i>nenastaveno</i>') }} – {{ round.pr_submit_end|timeformat if round.pr_submit_end else Markup('<i>nenastaveno</i>') }}
<tr><td>Zadání<td> </table>
{% if round.tasks_file %} <div class="panel-footer">
{% if not statement_exists %} {% if can_view_contestants %}
<span class=error>soubor neexistuje</span> <a class="btn btn-sm btn-primary" href='{{ ctx.url_for('org_generic_list') }}'>
{% elif offer_view_statement %} <span class="glyphicon glyphicon-user"></span>
<a href='{{ ctx.url_for('org_task_statement') }}'>stáhnout</a> Seznam účastníků
{% else %} </a>
není dostupné
{% endif %} {% endif %}
{% else %} {% if can_manage_contest %}
<a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_generic_import') }}'>
<span class="glyphicon glyphicon-import"></span>
Importovat data
</a>
{% endif %} {% endif %}
<tr><th colspan=2>Nastavení výsledkové listiny{% if round.is_subround() %} {% if can_manage_round %}
<i>(přejato z <a href="{{ url_for('org_round', round_id=round.master.round_id) }}">{{ round.master.round_code() }}</a>)</i> <a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_round_edit') }}'>
<span class="glyphicon glyphicon-cog"></span>
Nastavení
</a>
{% endif %}
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
{% if round.is_subround() %}
<small class="pull-right">přejato z <a href="{{ url_for('org_round', round_id=round.master.round_id) }}">{{ round.master.round_code() }}</a></small>
{% endif %} {% endif %}
<tr><td>Výsledková listina<td>{{ round.master.score_mode.friendly_name() }} <h3 class="panel-title">
<span class="glyphicon glyphicon-stats"></span>
Výsledková listina
</h3>
</div>
<table class="table table-bordered">
<tr><td>Pořadí<td>{{ round.master.score_mode.friendly_name() }}
<tr><td>Hranice bodů pro vítěze<td>{{ round.master.score_winner_limit|decimal|none_value(Markup('<i>nenastaveno</i>')) }} <tr><td>Hranice bodů pro vítěze<td>{{ round.master.score_winner_limit|decimal|none_value(Markup('<i>nenastaveno</i>')) }}
<tr><td>Podmínka pro úspěšné řešitele<td>{% if round.master.score_successful_limit is not none %}{{ round.master.score_successful_limit|decimal }} bodů{% if round.master.tasks_successful_limit is not none %}, {{ round.master.tasks_successful_limit|inflected("úspěšná úloha", "úspěšné úlohy", "úspěšných úloh") }}{% endif %}{% else %}<i>nenastaveno</i>{% endif %} <tr><td>Podmínka pro úspěšné řešitele<td>{% if round.master.score_successful_limit is not none %}{{ round.master.score_successful_limit|decimal }} bodů{% if round.master.tasks_successful_limit is not none %}, {{ round.master.tasks_successful_limit|inflected("úspěšná úloha", "úspěšné úlohy", "úspěšných úloh") }}{% endif %}{% else %}<i>nenastaveno</i>{% endif %}
<tr><td>Přesnost bodování<td>{{ round.master.points_step_name() }} <tr><td>Přesnost bodování<td>{{ round.master.points_step_name() }}
</table> </table>
<div style="clear: both;"></div> <div class="panel-footer">
{% if can_view_contestants or can_manage_contest or can_manage_round or round.has_messages %}
<div>
{% if can_view_contestants %}
<a class="btn btn-primary" href='{{ ctx.url_for('org_generic_list') }}'>Seznam účastníků</a>
{% endif %}
{% if (can_view_contestants and round.state in [RoundState.grading, RoundState.delegate] or round.state == RoundState.closed) %} {% if (can_view_contestants and round.state in [RoundState.grading, RoundState.delegate] or round.state == RoundState.closed) %}
<a class="btn btn-warning" href='{{ ctx.url_for('org_score') }}'>Výsledky</a> <a class="btn btn-sm btn-warning" href='{{ ctx.url_for('org_score') }}'>
{% endif %} <span class="glyphicon glyphicon-bullhorn"></span>
{% if can_manage_contest %} Výsledky
<a class="btn btn-default" href='{{ ctx.url_for('org_generic_import') }}'>Importovat data</a> </a>
{% endif %} {% endif %}
{% if can_manage_round %} {% if can_manage_round %}
<a class="btn btn-default" href='{{ ctx.url_for('org_round_edit') }}'>Nastavení a termíny</a> <a class="btn btn-sm btn-default" href='{{ ctx.url_for('org_round_edit') }}'>
<a class="btn btn-default" href='{{ ctx.url_for('org_edit_statement') }}'>Zadání</a> <span class="glyphicon glyphicon-cog"></span>
{% endif %} Nastavení
{% if round.has_messages %} </a>
<a class="btn btn-default" href='{{ ctx.url_for('org_round_messages') }}'>Zprávičky</a>
{% endif %}
{% if g.user.is_admin and not in_hier %}
<a class="btn btn-info" href='{{ log_url('round', round.round_id) }}'>Historie</a>
{% endif %} {% endif %}
</div> </div>
{% endif %} </div>
</div>
<h3>Soutěže</h3> <div class="col-md-7 col-md-pull-5">
<h3 class="visible-sm visible-xs">Soutěže</h3>
{% if reg_total.num_contests %} {% if reg_total.num_contests %}
{% set show_contests = reg_stats[0].contest != None %} {% set show_contests = reg_stats[0].contest != None %}
<table class="table table-bordered table-condensed table-auto"> <table class="table table-bordered">
<thead> <thead>
<tr> <tr>
{% if show_contests %} {% if show_contests %}
...@@ -153,6 +207,8 @@ ...@@ -153,6 +207,8 @@
{{ wtf.form_field(form_add_contest.create_contest) }} {{ wtf.form_field(form_add_contest.create_contest) }}
</form> </form>
{% endif %} {% endif %}
</div>
</div>
<h3>Úlohy</h3> <h3>Úlohy</h3>
{% if task_info %} {% if task_info %}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment