From cc5583dbf9a45052bb0c2412c5223a9e1690da9e Mon Sep 17 00:00:00 2001 From: Martin Mares <mj@ucw.cz> Date: Sun, 27 Aug 2023 15:40:59 +0200 Subject: [PATCH] =?UTF-8?q?V=20seznamu=20submit=C5=AF=20je=20mo=C5=BEn?= =?UTF-8?q?=C3=A9=20m=C3=ADsto=20bod=C5=AF=20nastavit=20is=5Fempty?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mo/web/org_contest.py | 7 ++++++- mo/web/templates/org_submit_list.html | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mo/web/org_contest.py b/mo/web/org_contest.py index 7c2c8198..7c8979a5 100644 --- a/mo/web/org_contest.py +++ b/mo/web/org_contest.py @@ -787,6 +787,7 @@ class SubmitForm(FlaskForm): note = wtforms.TextAreaField("Poznámka pro účastníka", description="Viditelná účastníkovi po uzavření kola", render_kw={'autofocus': True}) org_note = wtforms.TextAreaField("Interní poznámka", description="Viditelná jen organizátorům") points = mo_fields.Points(description="Účastník po uzavření kola uvidí jen naposledy zadané body", validators=[validators.Optional()]) + is_empty = wtforms.BooleanField("Prázdný protokol (neobsahuje řešení, není hodnocen)", default=False) submit = wtforms.SubmitField('Uložit') file = flask_wtf.file.FileField("Soubor") @@ -890,6 +891,8 @@ def org_submit_list(ct_id: int, user_id: int, task_id: int, site_id: Optional[in if (form.submit_sol.data or form.submit_fb.data) and form.file.data is None: flash('Schází soubor k nahrání, žádné změny nebyly uloženy', 'danger') return redirect(self_url) + if form.is_empty.data: + points = 0 if points: error = mo.util.check_points(points, for_task=ctx.task, for_round=ctx.round) if error: @@ -919,14 +922,16 @@ def org_submit_list(ct_id: int, user_id: int, task_id: int, site_id: Optional[in if sess.is_modified(sol): flash('Změny hodnocení uloženy', 'success') # Points - if points != sol.points: + if points != sol.points or form.is_empty.data != sol.is_empty: sol.points = points + sol.is_empty = form.is_empty.data sess.add(db.PointsHistory( task=ctx.task, participant=sol.user, user=g.user, points_at=mo.now, points=points, + is_empty=sol.is_empty, )) flash('Body uloženy', 'success') # Save changes and commit diff --git a/mo/web/templates/org_submit_list.html b/mo/web/templates/org_submit_list.html index 1cbedf61..36544b60 100644 --- a/mo/web/templates/org_submit_list.html +++ b/mo/web/templates/org_submit_list.html @@ -188,6 +188,7 @@ Existuje více než jedna verze oprav, finální je podbarvená. {{ wtf.form_field(form.note, form_type='horizontal', horizontal_columns=('sm', 2, 10), rows=4)}} {{ wtf.form_field(form.org_note, form_type='horizontal', horizontal_columns=('sm', 2, 10), rows=4 )}} {{ wtf.form_field(form.points, form_type='horizontal', horizontal_columns=('sm', 2, 10) )}} + {{ wtf.form_field(form.is_empty, form_type='horizontal', horizontal_columns=('sm', 2, 10) )}} {{ wtf.form_field( form.submit, form_type='horizontal', class='btn btn-primary', horizontal_columns=('sm', 2, 10), value=action + (' bez nahrání souboru' if allow_upload_feedback or allow_upload_solutions else '') -- GitLab