From 176f6a9900a5c7b2fee09930705d0a83f9bf9b71 Mon Sep 17 00:00:00 2001
From: Jiri Kalvoda <jirikalvoda@kam.mff.cuni.cz>
Date: Sat, 25 Sep 2021 19:02:05 +0200
Subject: [PATCH] =?UTF-8?q?ParticipantsActionForm:=20P=C5=99i=20kliknut?=
 =?UTF-8?q?=C3=AD=20na=20enter=20se=20neprovede=20=C5=BE=C3=A1dn=C3=A1=20a?=
 =?UTF-8?q?kce?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Formulář obsahuje možnost výběru ze tří akcí takže při stisku enteru
není jasné, jakou akci uživatel může chtít udělat. Aktuálně byla výchozí
první akce -- změnit stav účasti.

Přidal jsem nové schované tlačítko, které se chová jako výchozí a nic
neprovede.

Closes #232
---
 mo/web/org_contest.py                  | 6 ++++++
 mo/web/templates/org_generic_list.html | 1 +
 2 files changed, 7 insertions(+)

diff --git a/mo/web/org_contest.py b/mo/web/org_contest.py
index 675e5f49..b2ecd53c 100644
--- a/mo/web/org_contest.py
+++ b/mo/web/org_contest.py
@@ -227,6 +227,9 @@ class ParticipantsActionForm(FlaskForm):
         # checkboxes are handled not through FlaskForm, see below
     )
 
+    submit_no_action = wtforms.SubmitField("Bez akce", render_kw={"style": "display: none"})
+    # Hack: Defaultní tlačítko pro odeslání formuláře, co nedělá nic a není vidět
+
     participation_state = wtforms.SelectField('Stav účasti', choices=db.PartState.choices(), coerce=db.PartState.coerce)
     set_participation_state = wtforms.SubmitField("Nastavit stav účasti")
 
@@ -270,6 +273,9 @@ class ParticipantsActionForm(FlaskForm):
                 return False
         elif self.remove_participation.data:
             pass
+        elif self.submit_no_action.data:
+            flash('Potvrďte prosím požadovanou akci pomocí příslušného tlačítka.', 'danger')
+            return False
         else:
             flash('Neznámá operace', 'danger')
             return False
diff --git a/mo/web/templates/org_generic_list.html b/mo/web/templates/org_generic_list.html
index 702955b9..30f9669f 100644
--- a/mo/web/templates/org_generic_list.html
+++ b/mo/web/templates/org_generic_list.html
@@ -69,6 +69,7 @@
 {% if table %}
 	{% if action_form %}
 	<form action="" method="POST" class="form form-horizontal" role="form">
+	{{ action_form.submit_no_action }}
 	{% endif %}
 
 		{{ table.to_html() }}
-- 
GitLab