Skip to content
Snippets Groups Projects
Commit 7d8b9e19 authored by Jiří Setnička's avatar Jiří Setnička
Browse files

Fomulář akce nad účastníky: kompaktnější layout a kosmetika

Také nazýváme účastníky účastníky, viz #29
parent a13a3d46
No related branches found
No related tags found
2 merge requests!10Nastavení kol a úloh,!9WIP: Zárodek uživatelské části webu a submitování
...@@ -42,7 +42,7 @@ class ParticipantsFilterForm(PagerForm): ...@@ -42,7 +42,7 @@ class ParticipantsFilterForm(PagerForm):
class ParticipantsActionForm(FlaskForm): class ParticipantsActionForm(FlaskForm):
action_on = wtforms.RadioField( action_on = wtforms.RadioField(
"Provést akci na", validators=[validators.DataRequired()], "Provést akci na", validators=[validators.DataRequired()],
choices=[('all', 'všech vyfiltrovaných soutěžících'), ('checked', 'označených soutěžících')] choices=[('all', 'všech vyfiltrovaných účastnících'), ('checked', 'označených účastnících')]
# checkboxes are handled not through FlaskForm, see below # checkboxes are handled not through FlaskForm, see below
) )
...@@ -92,7 +92,7 @@ class ParticipantsActionForm(FlaskForm): ...@@ -92,7 +92,7 @@ class ParticipantsActionForm(FlaskForm):
return False return False
rights.get_for_contest(contest) rights.get_for_contest(contest)
if not rights.have_right(mo.rights.Right.manage_contest): if not rights.have_right(mo.rights.Right.manage_contest):
flash(f"Nemáte právo ke správě soutěže v kole {round.round_code()} v oblasti {contest_place.name}, nelze do ní přesunout soutěžící", 'danger') flash(f"Nemáte právo ke správě soutěže v kole {round.round_code()} v oblasti {contest_place.name}, nelze do ní přesunout účastníky", 'danger')
elif self.remove_participation.data: elif self.remove_participation.data:
pass pass
else: else:
...@@ -140,15 +140,15 @@ class ParticipantsActionForm(FlaskForm): ...@@ -140,15 +140,15 @@ class ParticipantsActionForm(FlaskForm):
sess.commit() sess.commit()
if count == 0: if count == 0:
flash('Žádní vybraní soutěžící', 'warning') flash('Žádní vybraní účastníci', 'warning')
elif self.set_participation_state.data: elif self.set_participation_state.data:
flash(f'Nastaven stav {db.part_state_names[self.participation_state.data]} {count} řešitelům', 'success') flash(f'Nastaven stav {db.part_state_names[self.participation_state.data]} {count} účastníkům', 'success')
elif self.set_participation_place.data: elif self.set_participation_place.data:
flash(f'Nastaveno soutěžní místo {participation_place.name} {count} řešitelům', 'success') flash(f'Nastaveno soutěžní místo {participation_place.name} {count} účastníkům', 'success')
elif self.set_contest.data: elif self.set_contest.data:
flash(f'{count} řešitelů přesunuto do soutěže v oblasti {contest_place.name}', 'success') flash(f'{count} účastníků přesunuto do soutěže v oblasti {contest_place.name}', 'success')
elif self.remove_participation.data: elif self.remove_participation.data:
flash(f'Odstraněno {count} soutěžících z této soutěže', 'success') flash(f'Odstraněno {count} účastníků z této soutěže', 'success')
return True return True
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
</div> </div>
</form> </form>
<p>Celkem <b>{{count}} nalezených soutěžících</b>.</p> <p>Celkem <b>{{count}} nalezených účastníků</b>.</p>
{% include 'parts/org_participants_table_actions.html' %} {% include 'parts/org_participants_table_actions.html' %}
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
</form> </form>
{% set max = filter.offset.data + filter.limit.data if filter.offset.data + filter.limit.data < count else count %} {% set max = filter.offset.data + filter.limit.data if filter.offset.data + filter.limit.data < count else count %}
<p>Zobrazuji záznamy <b>{{filter.offset.data + 1}}</b><b>{{ max }}</b> z <b>{{count}} nalezených soutěžících</b>.</p> <p>Zobrazuji záznamy <b>{{filter.offset.data + 1}}</b><b>{{ max }}</b> z <b>{{count}} nalezených účastníků</b>.</p>
{% include 'parts/org_participants_table_actions.html' %} {% include 'parts/org_participants_table_actions.html' %}
......
...@@ -4,31 +4,40 @@ ...@@ -4,31 +4,40 @@
{{ action_form.csrf_token }} {{ action_form.csrf_token }}
<h3>Provést akci</h3> <h3>Provést akci</h3>
<div class="form-group"> <div class="form-group">
<label class="col-form-label col-sm-2">Provést akci na:</label> <label class="control-label col-sm-2">Provést akci na:</label>
<div class="col-sm-10"> <div class="col-sm-5 radio">
<div class="radio">
<label> <label>
<input id="action_on-0" name="action_on" type="radio" value="all" required{% if action_form.action_on.data == 'all' %} checked{% endif %}> <input id="action_on-0" name="action_on" type="radio" value="all" required{% if action_form.action_on.data == 'all' %} checked{% endif %}>
všech vyfiltrovaných soutěžících všech vyfiltrovaných účastnících
</label> </label>
</div> </div><div class="col-sm-5 radio">
<div class="radio">
<label> <label>
<input id="action_on-1" name="action_on" type="radio" value="checked" required{% if action_form.action_on.data == 'all' %} checked{% endif %}> <input id="action_on-1" name="action_on" type="radio" value="checked" required{% if action_form.action_on.data == 'all' %} checked{% endif %}>
označených soutěžících označených účastnících
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="control-label col-sm-2" for="participation_state">Stav účasti</label>
<div class="col-sm-6">{{ wtf.form_field(action_form.participation_state, form_type='inline') }}</div>
<div class="col-sm-4">{{ wtf.form_field(action_form.set_participation_state, form_type='inline', class='btn btn-primary') }}</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="participation_place">Soutěžní místo</label>
<div class="col-sm-6">{{ wtf.form_field(action_form.participation_place, form_type='inline', placeholder='Kód místa nebo ID ve tvaru #123') }}</div>
<div class="col-sm-4">{{ wtf.form_field(action_form.set_participation_place, form_type='inline', class='btn btn-primary') }}</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="contest_place">Soutěžní oblast</label>
<div class="col-sm-6">
{{ wtf.form_field(action_form.contest_place, form_type='inline', placeholder='Kód místa nebo ID ve tvaru #123') }}
<p class="help-block">Musí existovat soutěž v dané oblasti pro stejné kolo.</p>
</div>
<div class="col-sm-4">{{ wtf.form_field(action_form.set_contest, form_type='inline', class='btn btn-primary') }}</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="contest_place">Smazání účasti</label>
<div class="col-sm-6"><p class="help-block">Dojde ke smazání účasti v tomto kole, ne účastníka z ročníku.</p></div>
<div class="col-sm-4">{{ wtf.form_field(action_form.remove_participation, form_type='inline', class='btn btn-danger') }}</div>
</div> </div>
<hr>
{{ wtf.form_field(action_form.participation_state, form_type='horizontal', horizontal_columns=('sm', 2, 10)) }}
{{ wtf.form_field(action_form.set_participation_state, form_type='horizontal', class='btn btn-primary', horizontal_columns=('sm', 2, 10)) }}
<hr>
{{ wtf.form_field(action_form.participation_place, form_type='horizontal', horizontal_columns=('sm', 2, 10)) }}
{{ wtf.form_field(action_form.set_participation_place, form_type='horizontal', class='btn btn-primary', horizontal_columns=('sm', 2, 10)) }}
<hr>
{{ wtf.form_field(action_form.contest_place, form_type='horizontal', horizontal_columns=('sm', 2, 10)) }}
{{ wtf.form_field(action_form.set_contest, form_type='horizontal', class='btn btn-primary', horizontal_columns=('sm', 2, 10)) }}
<hr>
{{ wtf.form_field(action_form.remove_participation, form_type='horizontal', class='btn btn-danger', horizontal_columns=('sm', 2, 10)) }}
</form> </form>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment