MIGRATE: FIX/UPD: fixed a typo in model fields verbose name. improved

registration manager.
This commit is contained in:
2019-06-05 16:17:20 +02:00
parent d63c43eacd
commit 89d61fe1ce
6 changed files with 88 additions and 14 deletions

View File

@@ -0,0 +1,36 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.20 on 2019-06-05 14:00
from __future__ import unicode_literals
import django.core.validators
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('dav_events', '0031_auto_20190604_0658'),
]
operations = [
migrations.AlterField(
model_name='participant',
name='dav_number',
field=models.CharField(max_length=62, validators=[django.core.validators.RegexValidator('^([0-9]{1,10}/[0-9]{2,10}/)?[0-9]{1,10}(\\*[0-9]{1,10})?(\\*[0-9]{4}\\*[0-9]{4})?([* ][0-9]{8})?$', 'Ungültiges Format.')], verbose_name='DAV Mitgliedsnummer'),
),
migrations.AlterField(
model_name='participant',
name='emergency_contact',
field=models.TextField(blank=True, help_text='Kann frei gelassen werden.', verbose_name='Notfall-Kontakt'),
),
migrations.AlterField(
model_name='participant',
name='experience',
field=models.TextField(blank=True, help_text='Kann frei gelassen werden.', verbose_name='Erfahrung'),
),
migrations.AlterField(
model_name='participant',
name='note',
field=models.TextField(blank=True, help_text='Kann frei gelassen werden.', verbose_name='Anmerkung'),
),
]

View File

@@ -34,13 +34,16 @@ class Participant(models.Model):
verbose_name=_('Telefonnummer')) verbose_name=_('Telefonnummer'))
dav_number = models.CharField(max_length=62, dav_number = models.CharField(max_length=62,
validators=[DAVNumberValidator], validators=[DAVNumberValidator],
verbose_name=_('DAV Mitgliednummer')) verbose_name=_('DAV Mitgliedsnummer'))
emergency_contact = models.TextField(blank=True, emergency_contact = models.TextField(blank=True,
verbose_name=_('Notfall-Kontakt')) verbose_name=_('Notfall-Kontakt'),
help_text=_('Kann frei gelassen werden.'))
experience = models.TextField(blank=True, experience = models.TextField(blank=True,
verbose_name=_('Erfahrung')) verbose_name=_('Erfahrung'),
help_text=_('Kann frei gelassen werden.'))
note = models.TextField(blank=True, note = models.TextField(blank=True,
verbose_name=_('Anmerkung')) verbose_name=_('Anmerkung'),
help_text=_('Kann frei gelassen werden.'))
paid = models.BooleanField('Teilnehmerbeitrag bezahlt', default=False) paid = models.BooleanField('Teilnehmerbeitrag bezahlt', default=False)

View File

@@ -242,7 +242,7 @@
{% csrf_token %} {% csrf_token %}
<input type="hidden" name="registration" value="{{ registration.id }}"> <input type="hidden" name="registration" value="{{ registration.id }}">
<button type="submit" name="action" value="accept_registration" <button type="submit" name="action" value="accept_registration"
class="btn btn-link no-padding" title="Teilnehmer hinzufügen"> class="btn btn-link no-padding" title="zur Teilnehmerliste hinzufügen">
<span class="text-success">{% bootstrap_icon 'plus-sign' %}</span> <span class="text-success">{% bootstrap_icon 'plus-sign' %}</span>
</button> </button>
&nbsp; &nbsp;
@@ -271,7 +271,7 @@
{% endif %} {% endif %}
</form> </form>
{% empty %} {% empty %}
{% trans 'Keine unbestätigten Anmeldungen vorhanden' %} {% trans 'Keine unbearbeiteten Anmeldungen vorhanden' %}
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
@@ -283,7 +283,7 @@
<a role="button" href="#collapseAddParticipant" <a role="button" href="#collapseAddParticipant"
data-toggle="collapse" data-toggle="collapse"
aria-expanded="true" aria-controls="collapseAddParticipant"> aria-expanded="true" aria-controls="collapseAddParticipant">
<span class="caret"></span>&nbsp;&nbsp;{% trans 'weiteren Teilnehmer eintragen' %} <span class="caret"></span>&nbsp;&nbsp;{% trans 'weiteren Teilnehmer hinzufügen' %}
</a> </a>
</h5> </h5>
</div> </div>
@@ -296,12 +296,13 @@
{% csrf_token %} {% csrf_token %}
{% include './includes/participant_form.html' with form=create_participant_form %} {% include './includes/participant_form.html' with form=create_participant_form %}
<button type="submit" name="action" value="create_participant" class="btn btn-success"> <button type="submit" name="action" value="create_participant" class="btn btn-success">
{% bootstrap_icon 'plus-sign' %} {% trans 'Teilnehmer hinzufügen' %} {% bootstrap_icon 'plus-sign' %} {% trans 'zur Teilnehmerliste hinzufügen' %}
</button> </button>
</form> </form>
</div> </div>
</div> </div>
</div> </div>
{% if participants %}
{% for form in participant_formset %} {% for form in participant_formset %}
{% with participant=form.instance %} {% with participant=form.instance %}
{% with position=participant.position %} {% with position=participant.position %}
@@ -332,19 +333,24 @@
<span class="text-info">{% bootstrap_icon 'triangle-bottom' %}</span> <span class="text-info">{% bootstrap_icon 'triangle-bottom' %}</span>
</button> </button>
<button name="action" value="remove_participant" <button name="action" value="remove_participant"
title="{% trans 'Teilnehmer löschen' %} ({% trans 'Spätestens am' %} {{ participant.purge_at|date:'d. F Y'}})" title="{% trans 'Teilnehmer jetzt löschen' %}
({% trans 'erfolgt automatisch am' %} {{ participant.purge_at|date:'d. F Y'}})"
class="btn btn-link no-padding"> class="btn btn-link no-padding">
<span class="text-danger">{% bootstrap_icon 'remove-circle' %}</span> <span class="text-danger">{% bootstrap_icon 'remove-circle' %}</span>
</button> </button>
&nbsp; &nbsp;
{% if participant.paid %} {% if event.charge and participant.paid %}
<span class="text-success" title="Geldeingang bestätigt"> <span class="text-success" title="Geldeingang bestätigt">
{% bootstrap_icon 'piggy-bank' %} {% bootstrap_icon 'piggy-bank' %}
</span> </span>
{% else %} {% elif event.charge %}
<span class="text-danger" title="Geldeingang unbestätigt"> <span class="text-danger" title="Geldeingang unbestätigt">
{% bootstrap_icon 'piggy-bank' %} {% bootstrap_icon 'piggy-bank' %}
</span> </span>
{% else %}
<span class="hidden" title="Keine Teilnehmergebühr gefordert">
{% bootstrap_icon 'piggy-bank' %}
</span>
{% endif %} {% endif %}
</form> </form>
</div> </div>
@@ -370,10 +376,17 @@
{% endwith %} {% endwith %}
{% endwith %} {% endwith %}
{% endfor %} {% endfor %}
{% else %}
<div class="panel panel-info">
<div class="panel-body">
<span class="text-info">{% trans 'Du hast noch keine Teilnehmer hinzugefügt.' %}</span>
</div>
</div>
{% endif %}
{% if participant_emails %} {% if participant_emails %}
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-body"> <div class="panel-body">
<strong>{% trans 'E-Mail-Adressen' %}</strong> <small>(für Copy-Paste)</small><br /> <strong>{% trans 'E-Mail-Adressen' %}</strong> <small>({% trans 'für Copy-Paste' %})</small><br />
<div class="well well-sm">{{ participant_emails }}</div> <div class="well well-sm">{{ participant_emails }}</div>
</div> </div>
</div> </div>

View File

@@ -229,6 +229,7 @@ class EventRegistrationsView(EventPermissionMixin, generic.DetailView):
context['registrations_support'] = registrations_support context['registrations_support'] = registrations_support
if registrations_support: if registrations_support:
registrations = event.registrations.filter(answered=False) registrations = event.registrations.filter(answered=False)
# registrations = event.registrations.all()
context['registrations'] = registrations context['registrations'] = registrations
return context return context

View File

@@ -0,0 +1,21 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.20 on 2019-06-05 14:00
from __future__ import unicode_literals
import django.core.validators
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('dav_registration', '0003_auto_20190603_1425'),
]
operations = [
migrations.AlterField(
model_name='registration',
name='dav_number',
field=models.CharField(help_text='Deine Mitgliedsnummer findest du unter dem Strichcode auf deinem DAV Ausweis.<br /> Beispiel: <tt>131/00/012345</tt> (der Teil bis zum ersten * genügt)', max_length=62, validators=[django.core.validators.RegexValidator('^([0-9]{1,10}/[0-9]{2,10}/)?[0-9]{1,10}(\\*[0-9]{1,10})?(\\*[0-9]{4}\\*[0-9]{4})?([* ][0-9]{8})?$', 'Ungültiges Format.')], verbose_name='DAV Mitgliedsnummer'),
),
]

View File

@@ -41,7 +41,7 @@ class Registration(models.Model):
help_text=_('Idealerweise eine Mobilfunk-Nummer')) help_text=_('Idealerweise eine Mobilfunk-Nummer'))
dav_number = models.CharField(max_length=62, dav_number = models.CharField(max_length=62,
validators=[DAVNumberValidator], validators=[DAVNumberValidator],
verbose_name=_('DAV Mitgliednummer'), verbose_name=_('DAV Mitgliedsnummer'),
help_text='%s<br /> %s %s' % ( help_text='%s<br /> %s %s' % (
_('Deine Mitgliedsnummer findest du unter dem Strichcode' _('Deine Mitgliedsnummer findest du unter dem Strichcode'
' auf deinem DAV Ausweis.'), ' auf deinem DAV Ausweis.'),
@@ -129,7 +129,7 @@ Anmerkung:
if not self.id: if not self.id:
creating = True creating = True
if self.event: if not self.purge_at and self.event:
self.purge_at = self.__class__.calc_purge_at(self.event) self.purge_at = self.__class__.calc_purge_at(self.event)
super(Registration, self).save(**kwargs) super(Registration, self).save(**kwargs)