|
|
|
@ -36,7 +36,7 @@ class Member(models.Model):
|
|
|
|
phone_number_parents = models.CharField(max_length=12, verbose_name=_('parents phone number'), default='', blank=True)
|
|
|
|
phone_number_parents = models.CharField(max_length=12, verbose_name=_('parents phone number'), default='', blank=True)
|
|
|
|
email = models.EmailField(max_length=100, default="")
|
|
|
|
email = models.EmailField(max_length=100, default="")
|
|
|
|
birth_date = models.DateField(_('birth date')) # to determine the age
|
|
|
|
birth_date = models.DateField(_('birth date')) # to determine the age
|
|
|
|
group = models.ManyToManyField(Group)
|
|
|
|
group = models.ManyToManyField(Group, verbose_name=_('group'))
|
|
|
|
gets_newsletter = models.BooleanField(_('receives newsletter'),
|
|
|
|
gets_newsletter = models.BooleanField(_('receives newsletter'),
|
|
|
|
default=True)
|
|
|
|
default=True)
|
|
|
|
unsubscribe_key = models.CharField(max_length=32, default="")
|
|
|
|
unsubscribe_key = models.CharField(max_length=32, default="")
|
|
|
|
@ -68,7 +68,7 @@ class Member(models.Model):
|
|
|
|
def name(self):
|
|
|
|
def name(self):
|
|
|
|
"""Returning whole name (prename + lastname)"""
|
|
|
|
"""Returning whole name (prename + lastname)"""
|
|
|
|
return "{0} {1}".format(self.prename, self.lastname)
|
|
|
|
return "{0} {1}".format(self.prename, self.lastname)
|
|
|
|
|
|
|
|
|
|
|
|
def get_group(self):
|
|
|
|
def get_group(self):
|
|
|
|
"""Returns a string of groups in which the member is."""
|
|
|
|
"""Returns a string of groups in which the member is."""
|
|
|
|
groupstring = ''.join(g.name + ',\n' for g in self.group.all())
|
|
|
|
groupstring = ''.join(g.name + ',\n' for g in self.group.all())
|
|
|
|
@ -83,35 +83,43 @@ class Member(models.Model):
|
|
|
|
|
|
|
|
|
|
|
|
class MemberList(models.Model):
|
|
|
|
class MemberList(models.Model):
|
|
|
|
"""Lets the user create a list of members in pdf format. """
|
|
|
|
"""Lets the user create a list of members in pdf format. """
|
|
|
|
name = models.CharField(verbose_name='List Name', default='',
|
|
|
|
name = models.CharField(verbose_name=_('Listname'), default='',
|
|
|
|
max_length=50)
|
|
|
|
max_length=50)
|
|
|
|
date = models.DateField(default=datetime.today)
|
|
|
|
date = models.DateField(default=datetime.today, verbose_name=_('date'))
|
|
|
|
comment = models.TextField(_('Comments'), default='')
|
|
|
|
comment = models.TextField(_('Comments'), default='')
|
|
|
|
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
def __str__(self):
|
|
|
|
"""String represenation"""
|
|
|
|
"""String represenation"""
|
|
|
|
return self.name
|
|
|
|
return self.name
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
|
|
|
|
verbose_name = _('Memberlist')
|
|
|
|
|
|
|
|
verbose_name_plural = _('Memberlists')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MemberOnList(models.Model):
|
|
|
|
class MemberOnList(models.Model):
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|
Connects members to a list of members.
|
|
|
|
Connects members to a list of members.
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|
member = models.ForeignKey(Member)
|
|
|
|
member = models.ForeignKey(Member, verbose_name=_('Member'))
|
|
|
|
memberlist = models.ForeignKey(MemberList)
|
|
|
|
memberlist = models.ForeignKey(MemberList)
|
|
|
|
comments = models.TextField(_('Comment'), default='')
|
|
|
|
comments = models.TextField(_('Comment'), default='')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
|
|
|
|
verbose_name = _('Member')
|
|
|
|
|
|
|
|
verbose_name_plural = _('Members')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Klettertreff(models.Model):
|
|
|
|
class Klettertreff(models.Model):
|
|
|
|
""" This model represents a Klettertreff event.
|
|
|
|
""" This model represents a Klettertreff event.
|
|
|
|
|
|
|
|
|
|
|
|
A Klettertreff can take a date, location, Jugendleiter, attending members as
|
|
|
|
A Klettertreff can take a date, location, Jugendleiter, attending members
|
|
|
|
input.
|
|
|
|
as input.
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|
date = models.DateField(_('Date'), default=datetime.today)
|
|
|
|
date = models.DateField(_('Date'), default=datetime.today)
|
|
|
|
location = models.CharField(_('Location'), default='', max_length=60)
|
|
|
|
location = models.CharField(_('Location'), default='', max_length=60)
|
|
|
|
jugendleiter = models.ManyToManyField(Member)
|
|
|
|
jugendleiter = models.ManyToManyField(Member)
|
|
|
|
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
def __str__(self):
|
|
|
|
return self.location + ' ' + self.date.strftime('%d.%m.%Y')
|
|
|
|
return self.location + ' ' + self.date.strftime('%d.%m.%Y')
|
|
|
|
|
|
|
|
|
|
|
|
@ -121,8 +129,16 @@ class Klettertreff(models.Model):
|
|
|
|
|
|
|
|
|
|
|
|
get_jugendleiter.short_description = _('Jugendleiter')
|
|
|
|
get_jugendleiter.short_description = _('Jugendleiter')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
|
|
|
|
verbose_name = _('Klettertreff')
|
|
|
|
|
|
|
|
verbose_name_plural = _('Klettertreffs')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class KlettertreffAttendee(models.Model):
|
|
|
|
class KlettertreffAttendee(models.Model):
|
|
|
|
"""Connects members to Klettertreffs."""
|
|
|
|
"""Connects members to Klettertreffs."""
|
|
|
|
member = models.ForeignKey(Member)
|
|
|
|
member = models.ForeignKey(Member, verbose_name=_('Member'))
|
|
|
|
klettertreff = models.ForeignKey(Klettertreff)
|
|
|
|
klettertreff = models.ForeignKey(Klettertreff)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
|
|
|
|
verbose_name = _('Member')
|
|
|
|
|
|
|
|
verbose_name_plural = _('Members')
|
|
|
|
|