358 lines
18 KiB
HTML
358 lines
18 KiB
HTML
{% extends 'dav_events/base.html' %}
|
|
{% load bootstrap3 %}
|
|
{% load i18n %}
|
|
{% load dav_events %}
|
|
|
|
{% block head-title %}{% trans 'Anmeldungen' %} - {{ event }} - {{ block.super }}{% endblock head-title %}
|
|
|
|
{% block modals %}
|
|
<div id="modal-close-registration-dialog" class="modal fade" tabindex="-1" role="dialog">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title">{% trans 'Anmeldung schließen?' %}</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<p class="text-center">
|
|
<strong>{{ event }}</strong>
|
|
</p>
|
|
<p>
|
|
Die Redaktion wird informiert, dass die Veranstaltung im Internet als ausgebucht gekennzeichnet
|
|
bzw. nicht abgedruckt werden soll.<br />
|
|
Eine Teilnehmeranmeldung über das Touren- und Kurse-Portal wird nicht mehr möglich sein.
|
|
</p>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<form action="" method="post">
|
|
{% csrf_token %}
|
|
<input type="hidden" name="action" value="close-registration">
|
|
<button type="submit" class="btn btn-success">
|
|
{% bootstrap_icon 'ok' %} 
|
|
{% trans 'Ja, mach zu!' %}
|
|
</button>
|
|
<button type="button" class="btn btn-danger" data-dismiss="modal">
|
|
{% bootstrap_icon 'remove' %} 
|
|
{% trans 'Abbrechen' %}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="modal-open-registration-dialog" class="modal fade" tabindex="-1" role="dialog">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title">{% trans 'Anmeldung wieder öffnen?' %}</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<p class="text-center">
|
|
<strong>{{ event }}</strong>
|
|
</p>
|
|
<p>
|
|
Die Anmeldung über das Touren- und Kurse-Portal wird wieder möglich
|
|
(solange der Anmeldeschluß noch nicht abgelaufen ist).<br />
|
|
Die Redaktion wird darüber aber nicht informiert.
|
|
</p>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<form action="" method="post">
|
|
{% csrf_token %}
|
|
<input type="hidden" name="action" value="open-registration">
|
|
<button type="submit" class="btn btn-success">
|
|
{% bootstrap_icon 'ok' %} 
|
|
{% trans 'Ja, super!' %}
|
|
</button>
|
|
<button type="button" class="btn btn-danger" data-dismiss="modal">
|
|
{% bootstrap_icon 'remove' %} 
|
|
{% trans 'Abbrechen' %}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="modal-kill-deadline-dialog" class="modal fade" tabindex="-1" role="dialog">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title">{% trans 'Anmeldeschluss aufheben?' %}</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<p class="text-center">
|
|
<strong>{{ event }}</strong>
|
|
</p>
|
|
<p>
|
|
Der bisher gesetzte Anmeldeschluss wird gelöscht.<br />
|
|
Somit wird die Anmeldung über das Touren- und Kurse-Portal wieder möglich.<br />
|
|
<strong>Die Redaktion wird darüber nicht automatisch informiert</strong>.
|
|
Wenn deine Tour bereits mit Anmeldeschluss im <i>KA Alpin</i> abgedruckt wurde,
|
|
können wir da auch nichts mehr machen.<br />
|
|
</p>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<form action="" method="post">
|
|
{% csrf_token %}
|
|
<input type="hidden" name="action" value="kill-deadline">
|
|
<button type="submit" class="btn btn-success">
|
|
{% bootstrap_icon 'ok' %} 
|
|
{% trans 'Ja, super!' %}
|
|
</button>
|
|
<button type="button" class="btn btn-danger" data-dismiss="modal">
|
|
{% bootstrap_icon 'remove' %} 
|
|
{% trans 'Abbrechen' %}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock modals %}
|
|
|
|
{% block page-container-fluid %}
|
|
<div class="action-tabs top-most">
|
|
<ul class="nav nav-tabs" role="tablist">
|
|
<li>
|
|
<a href="{% url 'dav_events:list' %}">{% trans 'Veranstaltungsliste' %}</a>
|
|
</li>
|
|
<li>
|
|
<a href="{% url 'dav_events:detail' event.pk %}">{% trans 'Details' %}</a>
|
|
</li>
|
|
<li class="{% if not has_permission_update %}disabled{% endif %}">
|
|
<a class="{% if not has_permission_update %}disabled{% endif %}"
|
|
href="{% url 'dav_events:update' event.pk %}">{% trans 'Ändern' %}</a>
|
|
</li>
|
|
<li class="active">
|
|
<a href="{% url 'dav_events:registrations' event.pk %}">{% trans 'Anmeldungen' %}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
{% if not event.registration_required %}
|
|
<div class="alert alert-danger alert-dismissible" role="alert">
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
{% trans 'Für diese Veranstaltung wurde keine Anmeldung gefordert.' %}
|
|
</div>
|
|
{% endif %}
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<div class="pull-right">
|
|
{% render_event_status event show_void=False %}
|
|
</div>
|
|
<h3 class="panel-title">{{ event }}</h3>
|
|
</div>
|
|
<div class="panel-body">
|
|
<div class="panel-group" id="form-accordion" role="tablist" aria-multiselectable="true">
|
|
<div class="panel panel-default">
|
|
<div id="headingForm1" class="panel-heading" role="tab">
|
|
<h4 class="panel-title">
|
|
<a role="button" href="#collapseForm1" data-toggle="collapse" data-parent="#accordion"
|
|
aria-expanded="true" aria-controls="collapseForm1">
|
|
{% trans 'Allgemeines' %}
|
|
</a>
|
|
</h4>
|
|
</div>
|
|
<div id="collapseForm1" class="panel-collapse collapse in"
|
|
role="tabpanel" aria-labelledby="headingForm1">
|
|
<div class="panel-body">
|
|
<div class="row">
|
|
<div class="col-sm-3">
|
|
<strong>{% trans 'Teilnehmerzahl' %}:</strong>
|
|
{{ event.min_participants }} -
|
|
{% if event.max_participants > 0 %}
|
|
{{ event.max_participants }}
|
|
{% else %}
|
|
∞
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-sm-4">
|
|
<strong>{% trans 'Anmeldeschluss' %}:</strong>
|
|
{% if event.deadline %}
|
|
{{ event.deadline|date:'l, d. F Y' }}
|
|
{% else %}
|
|
-
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-sm-5">
|
|
<strong>{% trans 'Anmeldestatus' %}:</strong>
|
|
{% if not event.registration_required %}
|
|
<span class="label label-success">{% trans 'Anmeldung nicht erforderlich' %}</span>
|
|
{% elif is_done %}
|
|
<span class="label label-default">{% trans 'Veranstaltung beendet' %}</span>
|
|
{% elif event.registration_closed %}
|
|
<span class="label label-danger">{% trans 'Anmeldung geschlossen' %}</span>
|
|
{% elif event.is_deadline_expired %}
|
|
<span class="label label-warning">{% trans 'Anmeldeschluss abgelaufen' %}</span>
|
|
{% elif is_published_any %}
|
|
<span class="label label-success">{% trans 'Anmeldung geöffnet' %}</span>
|
|
{% else %}
|
|
<span class="label label-info">{% trans 'Veranstaltung noch nicht veröffentlicht' %}</span>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
{% if event.is_deadline_expired %}
|
|
<a id="btn-kill-deadline" class="btn btn-danger"
|
|
data-toggle="modal" data-target="#modal-kill-deadline-dialog">
|
|
{% bootstrap_icon 'remove-circle' %} 
|
|
{% trans 'Anmeldeschluss aufheben' %}
|
|
</a>
|
|
{% elif event.registration_closed %}
|
|
<a id="btn-open-registration" class="btn btn-warning"
|
|
data-toggle="modal" data-target="#modal-open-registration-dialog">
|
|
{% bootstrap_icon 'ok-circle' %} 
|
|
{% trans 'Anmeldung wieder öffnen' %}
|
|
</a>
|
|
{% else %}
|
|
<a id="btn-close-registration" class="btn btn-warning"
|
|
data-toggle="modal" data-target="#modal-close-registration-dialog">
|
|
{% bootstrap_icon 'ban-circle' %} 
|
|
{% trans 'Anmeldung schließen' %}
|
|
</a>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr />
|
|
<h4>Teilnehmer (Designstudie - Das funktioniert alles noch nicht!)</h4>
|
|
<div class="panel panel-default">
|
|
<div id="headingRegistrations" class="panel-heading" role="tab">
|
|
<h5 class="panel-title">
|
|
<a role="button" href="#collapseRegistrations" data-toggle="collapse" data-parent="#accordion"
|
|
aria-expanded="true" aria-controls="collapseRegistrations">
|
|
<span class="caret"></span> Anmeldungen
|
|
</a>
|
|
</h5>
|
|
</div>
|
|
<div id="collapseRegistrations" class="panel-collapse collapse"
|
|
role="tabpanel" aria-labelledby="headingRegistrations">
|
|
<div class="panel-body">
|
|
{% for registration in registrations %}
|
|
<form action="" method="post" class="form-inline">
|
|
{% csrf_token %}
|
|
<input type="hidden" name="registration" value="{{ registration.id }}">
|
|
{% if registration.answered %}
|
|
<span class="text-muted disabled">
|
|
{% endif %}
|
|
<button type="submit" name="action" value="accept_registration"
|
|
class="btn btn-link" title="Teilnehmer hinzufügen">
|
|
<span class="text-success">{% bootstrap_icon 'plus-sign' %}</span>
|
|
</button>
|
|
<button type="submit" name="action" value="reject_registration"
|
|
class="btn btn-link" title="Anmeldung löschen">
|
|
<span class="text-danger">{% bootstrap_icon 'minus-sign' %}</span>
|
|
</button>
|
|
{{ registration.get_full_name }}
|
|
(<a href="mailto:{{ registration.email_address }}">{{ registration.email_address }}</a>,
|
|
{{ registration.phone_number }})
|
|
|
|
<span title="Anmeldezeitpunkt">
|
|
{% bootstrap_icon 'time' %}
|
|
{{ registration.created_at|date:'d. F Y, G:i' }}
|
|
</span>
|
|
|
|
<span title="{{ registration.get_info }}">
|
|
{% bootstrap_icon 'info-sign' %}
|
|
</span>
|
|
{% if registration.answered %}
|
|
</span>
|
|
{% endif %}
|
|
</form>
|
|
{% empty %}
|
|
Keine unbestätigten Anmeldungen vorhanden
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="panel panel-default">
|
|
<div id="headingAddParticipant" class="panel-heading" role="tab">
|
|
<h5 class="panel-title">
|
|
<a role="button" href="#collapseAddParticipant" data-toggle="collapse" data-parent="#accordion"
|
|
aria-expanded="true" aria-controls="collapseAddParticipant">
|
|
<span class="caret"></span> weiteren Teilnehmer eintragen
|
|
</a>
|
|
</h5>
|
|
</div>
|
|
<div id="collapseAddParticipant" class="panel-collapse collapse {% if create_participant_form.errors %}in{% endif %}"
|
|
role="tabpanel" aria-labelledby="headingAddParticipant">
|
|
<div class="panel-body">
|
|
{% bootstrap_form_errors create_participant_form %}
|
|
<form action="" method="post">
|
|
{% csrf_token %}
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.personal_names %}
|
|
</div>
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.family_names %}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-12">
|
|
{% bootstrap_field create_participant_form.address %}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-4">
|
|
{% bootstrap_field create_participant_form.postal_code %}
|
|
</div>
|
|
<div class="col-sm-8">
|
|
{% bootstrap_field create_participant_form.city %}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.email_address %}
|
|
</div>
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.phone_number %}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.dav_number %}
|
|
</div>
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.emergency_contact %}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.experience %}
|
|
</div>
|
|
<div class="col-sm-6">
|
|
{% bootstrap_field create_participant_form.note %}
|
|
</div>
|
|
</div>
|
|
<button class="btn btn-success">{% bootstrap_icon 'plus-sign' %} {% trans 'Teilnehmer hinzufügen' %}</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% for participant in participants %}
|
|
<div class="panel panel-default">
|
|
<div id="headingParticipant_{{ participant.id }}" class="panel-heading" role="tab">
|
|
<h5 class="panel-title">
|
|
<a role="button" href="#collapseParticipant_{{ participant.id }}" data-toggle="collapse" data-parent="#accordion"
|
|
aria-expanded="true" aria-controls="collapseParticipant_{{ participant.id }}">
|
|
<span class="caret"></span> {{ participant.position }}. {{ participant.get_full_name }}
|
|
</a>
|
|
</h5>
|
|
</div>
|
|
<div id="collapseParticipant_{{ participant.id }}" class="panel-collapse collapse"
|
|
role="tabpanel" aria-labelledby="headingParticipant_{{ participant.id }}">
|
|
<div class="panel-body">
|
|
Hier tauchen dann die Teilnehmerdaten auf
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock page-container-fluid %} |