From 78c62d025072610c6891cd74aa6443467ae35c3f Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Sat, 8 Jan 2022 18:49:13 +0100 Subject: [PATCH] personal: Add model WrittenConsent --- mpicms/personal/models.py | 13 +++++++++++++ mpicms/personal/wagtail_hooks.py | 9 ++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/mpicms/personal/models.py b/mpicms/personal/models.py index e7c8035..c1b12bd 100644 --- a/mpicms/personal/models.py +++ b/mpicms/personal/models.py @@ -180,3 +180,16 @@ class Meta: # noqa verbose_name = 'Group' verbose_name_plural = 'Groups' ordering = ['-priority'] + + +class WrittenConsent(models.Model): + ref = models.CharField("ID", max_length=10, unique=True) + comment = models.TextField("comment", blank=True) + valid = models.BooleanField(_("valid"), default=True) + contacts = models.ManyToManyField(Contact, blank = True) + + def __str__(self): + return "Written Consent #" + self.ref + " (" + ", ".join(str(c) for c in self.contacts.all()) + ")" + + class Meta: + ordering = ['ref'] diff --git a/mpicms/personal/wagtail_hooks.py b/mpicms/personal/wagtail_hooks.py index 0548aa9..bc588ab 100644 --- a/mpicms/personal/wagtail_hooks.py +++ b/mpicms/personal/wagtail_hooks.py @@ -6,6 +6,7 @@ from wagtail.contrib.modeladmin.views import EditView, InspectView, DeleteView, InstanceSpecificView from .models import Contact, Group, Position +from .models import WrittenConsent class ContactInstanceView(InstanceSpecificView): @@ -75,13 +76,19 @@ class PositionAdmin(ModelAdmin): search_fields = ['title'] +class WrittenConsentAdmin(ModelAdmin): + model = WrittenConsent + menu_icon='doc-full' + + class ContactGroup(ModelAdminGroup): menu_label = _('Contacts') menu_icon = 'user' items = [ ContactAdmin, GroupAdmin, - PositionAdmin + PositionAdmin, + WrittenConsentAdmin, ]