Reduced participant fee: added toggle buttons within office views and
All checks were successful
buildbot/tox Build done.

improved html
This commit is contained in:
2020-12-18 11:48:10 +01:00
parent dab2e5cb76
commit cbc3df97c1
5 changed files with 104 additions and 40 deletions

View File

@@ -305,7 +305,7 @@ Das musst du selbst (per E-Mail oder telefonisch) machen.
{% if registration.apply_reduced_fee %}
 
<span class="text-info">
<strong>%</strong>{% bootstrap_icon 'piggy-bank' %} (reduzierte Gebühr)
<strong title="{% trans 'reduzierte Teilnahmegebühr' %}">%</strong>{% bootstrap_icon 'piggy-bank' %} (reduzierte Gebühr)
</span>
{% endif %}
</form>
@@ -399,30 +399,35 @@ Wichtig: das System verschickt keine Bestätigung an dich oder den neuen Teilneh
{% endif %}
{% if event.charge and participant.paid and has_permission_payment %}
&nbsp;
<span class="text-success"><strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong></span><button
<span class="text-success {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><button
name="action" value="revoke_payment"
title="{% trans 'Geldeingang wurde bestätigt' %} - {% trans 'Bestätigung des Geldeingangs zurückziehen' %}"
class="btn btn-link no-padding"><span class="text-success">{% bootstrap_icon 'piggy-bank' %}</span></button>
{% elif event.charge and participant.paid %}
&nbsp;
<span class="text-success" title="{% trans 'Geldeingang bestätigt' %}">
<strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong>{% bootstrap_icon 'piggy-bank' %}
</span>
<span class="text-success {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><span
class="text-success"
title="{% trans 'Geldeingang bestätigt' %}">{% bootstrap_icon 'piggy-bank' %}</span>
{% elif event.charge and has_permission_payment %}
&nbsp;
<span class="text-danger"><strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong></span><button
<span class="text-danger {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><button
name="action" value="confirm_payment"
title="{% trans 'Geldeingang bestätigen' %}"
class="btn btn-link no-padding"><span class="text-danger">{% bootstrap_icon 'piggy-bank' %}</span></button>
{% elif event.charge %}
&nbsp;
<span class="text-danger" title="{% trans 'Geldeingang unbestätigt' %}">
<strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong>{% bootstrap_icon 'piggy-bank' %}
</span>
<span class="text-danger {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><span
class="text-danger"
title="{% trans 'Geldeingang unbestätigt' %}">{% bootstrap_icon 'piggy-bank' %}</span>
{% else %}
<span class="hidden" title="{% trans 'Keine Teilnehmergebühr gefordert' %}">
<strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong>{% bootstrap_icon 'piggy-bank' %}
</span>
<span class="hidden {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><span
class="hidden"
title="{% trans 'Keine Teilnehmergebühr gefordert' %}">{% bootstrap_icon 'piggy-bank' %}</span>
{% endif %}
</form>
</div>
@@ -587,14 +592,16 @@ von Position {{ participant.position }} der Teilnehmerliste entfernt.
</span>
{% if event.charge and participant.paid %}
&nbsp;
<span class="text-success" title="{% trans 'Geldeingang bestätigt' %}">
<strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong>{% bootstrap_icon 'piggy-bank' %}
</span>
<span class="text-success {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><span
class="text-success"
title="{% trans 'Geldeingang bestätigt' %}">{% bootstrap_icon 'piggy-bank' %}</span>
{% elif event.charge %}
&nbsp;
<span class="text-danger" title="{% trans 'Geldeingang unbestätigt' %}">
<strong>{% if participant.apply_reduced_fee %}%{% else %}&emsp;{% endif %}</strong>{% bootstrap_icon 'piggy-bank' %}
</span>
<span class="text-danger {% if not participant.apply_reduced_fee %}invisible{% endif %}"
title="{% trans 'Reduzierte Teilnahmegebühr' %}"><strong>%</strong></span><span
class="text-danger"
title="{% trans 'Geldeingang unbestätigt' %}">{% bootstrap_icon 'piggy-bank' %}</span>
{% endif %}
</span>

View File

@@ -219,6 +219,16 @@ class EventRegistrationsView(EventPermissionMixin, generic.DetailView):
participants_trash = event.trashed_participants.all()
context['participants_trash'] = participants_trash
earnings = 0
if event.charge:
for participant in participants:
if participant.paid:
if participant.apply_reduced_fee:
earnings += event.charge / 2
else:
earnings += event.charge
context['earnings'] = earnings
if participants.count() > 1:
email_list = [u'"{}" <{}>'.format(p.get_full_name(), p.email_address) for p in participants]
email_list.sort()
@@ -344,6 +354,12 @@ class EventRegistrationsView(EventPermissionMixin, generic.DetailView):
self._reset_registration(registration)
else:
raise FieldDoesNotExist('Event has no registrations')
elif action == 'toggle_reduced_fee':
self.enforce_permission(event, permission='payment')
participant_id = request.POST.get('id')
participant = event.participants.get(id=participant_id)
participant.apply_reduced_fee = not participant.apply_reduced_fee
participant.save()
elif action == 'confirm_payment':
self.enforce_permission(event, permission='payment')
participant_id = request.POST.get('id')