diff --git a/AKModel/admin.py b/AKModel/admin.py index 8c48c1ece0d8758dc583d61f6d94bb0ff6850638..ba2d8f15e8aa9e88fb06c6bf734697b913f33cf7 100644 --- a/AKModel/admin.py +++ b/AKModel/admin.py @@ -2,6 +2,7 @@ from django.contrib import admin -from AKModel.models import Event +from AKModel.models import Event, AKOwner admin.site.register(Event) +admin.site.register(AKOwner) diff --git a/AKModel/models.py b/AKModel/models.py index 05f5285777f6a4ae5fc63035a0c42da903530d15..397a7921bad4192fb04b7d576ec4053fc0d751ce 100644 --- a/AKModel/models.py +++ b/AKModel/models.py @@ -11,3 +11,20 @@ class Event(models.Model): end = models.DateTimeField(verbose_name='End', help_text='Time the event ends') place = models.CharField(max_length=128, verbose_name='Place', help_text='City etc. where the event takes place') active = models.BooleanField(verbose_name='Active State', help_text='Marks currently active events') + + +class AKOwner(models.Model): + """ An AKOwner describes the person organizing/holding an AK. + """ + name = models.CharField(max_length=256, verbose_name='Nickname', help_text='Name used to identify an AK owner') + email = models.EmailField(max_length=128, blank=True, verbose_name='E-Mail Address', help_text='Contact e-mail') + institution = models.CharField(max_length=128, blank=True, verbose_name='Institution', help_text='University etc.') + link = models.URLField(blank=True, verbose_name='Web Link', help_text='Link to Homepage') + + event = models.ForeignKey(to=Event, on_delete=models.CASCADE, verbose_name='Event', help_text='Matching event') + + class Meta: + verbose_name = 'AK Owner' + verbose_name_plural = 'AK Owners' + ordering = ['name'] + unique_together = [['name', 'institution']]