diff --git a/TODO.txt b/TODO.txt index f21562b..354a688 100644 --- a/TODO.txt +++ b/TODO.txt @@ -1,6 +1,6 @@ - Anzeige Bahnfahrt - ApproachForm aufteilen -- Anmeldungstext +- Anmeldehinweis editierbar für trainer? - Publish Status? - Save as Draft - Copy Event diff --git a/dav_events/forms/events.py b/dav_events/forms/events.py index a61848d..cb35f5e 100644 --- a/dav_events/forms/events.py +++ b/dav_events/forms/events.py @@ -688,10 +688,20 @@ class RegistrationForm(EventCreateForm): }, bootstrap_version=3)) + registration_howto = forms.CharField(disabled=True, + required=False, + label=_(u'Anmeldungshinweis'), + widget=forms.Textarea(attrs={'rows': 2}), + ) + def _proceed_session_data(self, session_data): super(RegistrationForm, self)._proceed_session_data(session_data) + sport = session_data.get('sport', None) + terrain = session_data.get('terrain', None) first_day = session_data.get('first_day', None) + trainer_fullname = u'%s %s' % (session_data.get('trainer_firstname'), session_data.get('trainer_familyname')) + trainer_email = session_data.get('trainer_email') trainer_2_fullname = session_data.get('trainer_2_fullname', None) trainer_3_fullname = session_data.get('trainer_3_fullname', None) @@ -728,6 +738,39 @@ class RegistrationForm(EventCreateForm): new_choices.append((key, desc)) self.fields['deadline'].choices = new_choices + registration_howto = _(u'Anmeldung mit Vor- und Nachname, E-Mail-Adresse, Telefonnummer (Mobil)' + u'%(additional)s bei %(name)s (%(emailaddr)s).') + additional = u'' + if sport == 'B': + additional = u'%s %s' % (_(u', Notfall-Kontakt, DAV-Mitgliedsnummer'), + _(u'sowie Beschreibung der eigenen Bergerfahrung')) + elif sport == 'K' and terrain == 'alpine': + additional = u'%s %s' % (_(u', Notfall-Kontakt, DAV-Mitgliedsnummer'), + _(u'sowie Beschreibung der eigenen Fels- bzw. Bergerfahrung')) + elif sport == 'K': + additional = u'%s %s' % (_(u', DAV-Mitgliedsnummer'), + _(u'sowie Beschreibung der eigenen Klettererfahrung')) + elif sport == 'M' and terrain == 'alpine': + additional = u'%s %s' % (_(u', Notfall-Kontakt, DAV-Mitgliedsnummer'), + _(u'sowie kurzer Beschreibung der eigenen MTB-Erfahrung')) + elif sport == 'M': + additional = u'%s %s' % (_(u', DAV-Mitgliedsnummer'), + _(u'sowie kurzer Beschreibung der eigenen MTB-Erfahrung')) + elif sport == 'S': + additional = u'%s %s' % (_(u', Notfall-Kontakt, DAV-Mitgliedsnummer'), + _(u'sowie Beschreibung der eigenen Skitouren- und Bergerfahrung')) + elif terrain == 'alpine': + additional = _(u', Notfall-Kontakt und DAV-Mitgliedsnummer') + else: + registration_howto = None + + if registration_howto: + self.fields['registration_howto'].initial = registration_howto % {'name': trainer_fullname, + 'emailaddr': trainer_email, + 'additional': additional} + else: + self.fields['registration_howto'].widget = forms.HiddenInput() + class ChargesForm(EventCreateForm): _form_title = _(u'Kosten') diff --git a/dav_events/migrations/0012_event_registration_howto.py b/dav_events/migrations/0012_event_registration_howto.py new file mode 100644 index 0000000..df187cb --- /dev/null +++ b/dav_events/migrations/0012_event_registration_howto.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.9 on 2018-02-19 14:18 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dav_events', '0011_auto_20180219_1225'), + ] + + operations = [ + migrations.AddField( + model_name='event', + name='registration_howto', + field=models.TextField(blank=True), + ), + ] diff --git a/dav_events/models.py b/dav_events/models.py index c542d8d..100f3cb 100644 --- a/dav_events/models.py +++ b/dav_events/models.py @@ -128,6 +128,7 @@ class Event(models.Model): max_participants = models.IntegerField(default=0) deadline = models.DateField(blank=True, null=True) + registration_howto = models.TextField(blank=True) # TrainerForm trainer_firstname = models.CharField(max_length=config.TRAINER_NAME_MAX_LENGTH, @@ -340,6 +341,7 @@ class Event(models.Model): 'trainer_3_fullname': self.trainer_3_fullname, 'trainer_3_email': self.trainer_3_email, 'trainer_3_phone': self.trainer_3_phone, + 'registration_howto': self.registration_howto, } return context diff --git a/dav_events/templates/dav_events/emails/event_to_publish.txt b/dav_events/templates/dav_events/emails/event_to_publish.txt index 33110ea..7d8b69d 100644 --- a/dav_events/templates/dav_events/emails/event_to_publish.txt +++ b/dav_events/templates/dav_events/emails/event_to_publish.txt @@ -50,4 +50,6 @@ Die Veranstaltung wurde zur Veröffentlichung frei gegeben. {% endif %}{% if deadline %}{% trans 'Anmeldeschluss' %}: {{ deadline|date:'l, d. F Y' }}
{% endif %}{% if trainer_2_fullname %}{% if mode == 'training' %}{% trans 'Ausbildungsteam' %}:{% else %}{% trans 'Team' %}:{% endif %} {{ trainer_firstname }} {{ trainer_familyname }}{% if trainer_email or trainer_phone %} ({% if trainer_email %}{{ trainer_email }}{% endif %}{% if trainer_email and trainer_phone %}, {% endif %}{% if trainer_phone %}{{ trainer_phone }}{% endif %}){% endif %}, {{ trainer_2_fullname }}{% if trainer_2_email or trainer_2_phone %} ({% if trainer_2_email %}{{ trainer_2_email }}{% endif %}{% if trainer_2_email and trainer_2_phone %}, {% endif %}{% if trainer_2_phone %}{{ trainer_2_phone }}{% endif %}){% endif %}{% if trainer_3_fullname %}, {{ trainer_3_fullname }}{% if trainer_3_email or trainer_3_phone %} ({% if trainer_3_email %}{{ trainer_3_email }}{% endif %}{% if trainer_3_email and trainer_3_phone %}, {% endif %}{% if trainer_3_phone %}{{ trainer_3_phone }}{% endif %}){% endif %}{% endif %}
{% endif %}{% if trainer_familyname %}{% trans 'Leitung' %}: {{ trainer_firstname }} {{ trainer_familyname }}{% if trainer_email or trainer_phone %} ({% if trainer_email %}{{ trainer_email }}{% endif %}{% if trainer_email and trainer_phone %}, {% endif %}{% if trainer_phone %} {{ trainer_phone }}{% endif %}){% endif %} +{% endif %}{% if registration_howto %} +

{{ registration_howto }}

{% endif %} \ No newline at end of file diff --git a/dav_events/templates/dav_events/event.html b/dav_events/templates/dav_events/event.html index a22a1be..ba33d1f 100644 --- a/dav_events/templates/dav_events/event.html +++ b/dav_events/templates/dav_events/event.html @@ -163,4 +163,9 @@ {% endif %} {% endif %} + {% if registration_howto %} + + {% endif %} diff --git a/dav_events/templates/dav_events/event.txt b/dav_events/templates/dav_events/event.txt index be05760..557bc73 100644 --- a/dav_events/templates/dav_events/event.txt +++ b/dav_events/templates/dav_events/event.txt @@ -43,4 +43,6 @@ {% endif %}{% if deadline %}{% trans 'Anmeldeschluss' %}: {{ deadline|date:'l, d. F Y' }} {% endif %}{% if trainer_2_fullname %}{% if mode == 'training' %}{% trans 'Ausbildungsteam' %}:{% else %}{% trans 'Team' %}:{% endif %} {{ trainer_firstname }} {{ trainer_familyname }}{% if trainer_email or trainer_phone %} ({% if trainer_email %}{{ trainer_email }}{% endif %}{% if trainer_email and trainer_phone %}, {% endif %}{% if trainer_phone %}{{ trainer_phone }}{% endif %}){% endif %}, {{ trainer_2_fullname }}{% if trainer_2_email or trainer_2_phone %} ({% if trainer_2_email %}{{ trainer_2_email }}{% endif %}{% if trainer_2_email and trainer_2_phone %}, {% endif %}{% if trainer_2_phone %}{{ trainer_2_phone }}{% endif %}){% endif %}{% if trainer_3_fullname %}, {{ trainer_3_fullname }}{% if trainer_3_email or trainer_3_phone %} ({% if trainer_3_email %}{{ trainer_3_email }}{% endif %}{% if trainer_3_email and trainer_3_phone %}, {% endif %}{% if trainer_3_phone %}{{ trainer_3_phone }}{% endif %}){% endif %}{% endif %} {% endif %}{% if trainer_familyname %}{% trans 'Leitung' %}: {{ trainer_firstname }} {{ trainer_familyname }}{% if trainer_email or trainer_phone %} ({% if trainer_email %}{{ trainer_email }}{% endif %}{% if trainer_email and trainer_phone %}, {% endif %}{% if trainer_phone %}{{ trainer_phone }}{% endif %}){% endif %} +{% endif %}{% if registration_howto %} +{{ registration_howto }} {% endif %} \ No newline at end of file diff --git a/dav_events/templates/dav_events/event_create/RegistrationForm.html b/dav_events/templates/dav_events/event_create/RegistrationForm.html index f0f846d..252fe5b 100644 --- a/dav_events/templates/dav_events/event_create/RegistrationForm.html +++ b/dav_events/templates/dav_events/event_create/RegistrationForm.html @@ -28,4 +28,10 @@
 
+
+
+ {% bootstrap_field form.registration_howto %} +
+
+
 
{% endblock form-fields-visible %}