Skip to content
Snippets Groups Projects

Zakládání řešení zadáváním bodů

Merged Jiří Setnička requested to merge jirka/create-sol-points into devel
All threads resolved!
5 files
+ 91
32
Compare changes
  • Side-by-side
  • Inline

Files

  • e75733ff
    Vytvořen nový endpoint org_contest_task_create. Vše v pozadí obsluhuje
    stejná univerzální tabulka, jen na správných místech vypisuje správné
    formuláře ve správném módu (má teď mód zobrazení, zakládání řešení a
    bodování).
    
    Přidány odkazy z různých míst.
<p><i>{% if for_user %}U každé úlohy je zobrazeno účastníkovo {% else %}U každého účastníka je zobrazeno jeho {% endif %}
finální řešení, finální oprava a přidělené body. Historii všech odevzdání, oprav a bodů naleznete v detailu řešení.
<p><i>
{% if create_form %}
Zaškrtnutím políček u řešení, která dosud neexistují, a odesláním tlačítkem pod tabulkou tato řešení založíte.
To se hodí, pokud se nechystáte do systému nahrávat soubory řešení, ale jen chcete řešení vytvořit, aby jim
bylo možné vyplnit body. Pokud nějaké řešení založíte omylem, lze toto prázdné řešení smazat v jeho detailu.
{% else %}
Historii všech odevzdání, oprav a bodů pro každé řešení naleznete v jeho detailu.
{% if sc.allow_upload_feedback or sc.allow_edit_points %}Tamtéž můžete odevzdávat nové verze a změnit, které řešení/oprava je
finální (ve výchozím stavu poslední nahrané).{% endif %}
finální (ve výchozím stavu poslední nahrané).{% elif sc.allow_upload_solutions %}Tamtéž můžete odevzdat nové řešení.{% endif %}
{% if for_task and sc.allow_create_solutions %} Hromadně založit řešení pro více řešitelů můžete pomocí tlačítek pod tabulkou.{% endif %}
{% endif %}
</i></p>
<p><i>Legenda k symbolům: <span class='sol-warn icon'></span> odevzdané po termínu,
<p><i>Legenda: <span class='sol-warn icon'></span> odevzdané po termínu,
<span class="icon">🛈</span> nahráno někým jiným, než řešitelem, <span class="icon">🗐</span> existuje více verzí. Symboly po najetí myší zobrazí bližší informace.
</i></p>
@@ -15,11 +22,11 @@ finální (ve výchozím stavu poslední nahrané).{% endif %}
{% if for_task %}<th>Stav účasti{% endif %}
<th>Finální řešení
<th>Finální oprava
<th>Poznámky
<th>Přidělené body
{% if not for_user and not site and sc.allow_edit_points and not points_form %}
<a title="Editovat body" href="{{ url_for('org_contest_task_points', contest_id=contest.contest_id, task_id=task.task_id) }}" class="icon pull-right"></a>
{% endif %}
<th>Poznámky
<th>Akce
</tr>
</thead>
@@ -73,19 +80,25 @@ finální (ve výchozím stavu poslední nahrané).{% endif %}
<span title="Celkem {{ paper_counts[key]|inflected('verze', 'verze', 'verzí') }}" class="icon">🗐</span>
{% endif %}
{% else %}–{% endif %}
<td>{% if points_form %}
<input type="number" class="form-control" name="points_{{sol.user_id}}" value="{{ request_form.get("points_{}".format(sol.user_id)) or sol.points }}" size="4">
<td style="text-align: center;">
{% if sol.note %}<span class="icon" title="Poznámka pro řešitele: {{ sol.note }}">🗩</span>{% endif %}
{% if sol.org_note %} <span class="icon" title="Interní poznámka: {{ sol.org_note }}">🗩</span>{% endif %}
<td>
{% if points_form %}
<input type="number" class="form-control" name="points_{{u.user_id}}" value="{{ request_form.get("points_{}".format(u.user_id)) or sol.points }}" size="4">
{% else %}
{% if sol.points is not none %}{{ sol.points}}{% else %}<span class="unknown">?</span>{% endif %}
{% endif %}
{% else %}
<td><td><td>
<td colspan="4" class="text-center">
{% if create_form %}
<input type="checkbox" name="create_sol_{{u.user_id}}" id="create_sol_{{u.user_id}}"{% if request_form.get("create_sol_{}".format(u.user_id)) %}checked{% endif %}>
<label for="create_sol_{{u.user_id}}">Založit řešení</label>
{% else %}–{% endif %}
{% endif %}
<td style="text-align: center;">
{% if sol and sol.note %}<span class="icon" title="Poznámka pro řešitele: {{ sol.note }}">🗩</span>{% endif %}
{% if sol and sol.org_note %} <span class="icon" title="Interní poznámka: {{ sol.org_note }}">🗩</span>{% endif %}
<td>
<td><div class="btn-group">
<a class="btn btn-xs btn-primary" href="{{ url_for('org_submit_list', contest_id=ct_id, user_id=u.user_id, task_id=task.task_id, site_id=site_id) }}">Detail</a>
</div>
</tr>
{% endfor %}
</table>
Loading