forked from beba/foerderbarometer
add terms_accepted field to Email, List, Literature and BusinessCard via mixin
This commit is contained in:
parent
0839439671
commit
f4698c3894
|
|
@ -9,6 +9,16 @@ EMAIL_STATES = {'NONE': 'noch keine Mail versendet',
|
|||
'CLOSE': 'die Projektabschlussmail wurde versendet',
|
||||
'END': 'alle automatischen Mails, auch surveyMail, wurden versendet'}
|
||||
|
||||
|
||||
class TermsConsentMixin(models.Model):
|
||||
"""Abstract mixin to add a terms_accepted field for documenting user consent."""
|
||||
|
||||
terms_accepted = models.BooleanField(default=False, verbose_name="Nutzungsbedingungen zugestimmt")
|
||||
|
||||
class Meta:
|
||||
abstract = True
|
||||
|
||||
|
||||
class Volunteer(models.Model):
|
||||
realname = models.CharField(max_length=200, null=True, verbose_name="Realname",
|
||||
help_text="Bitte gib deinen Vornamen und deinen Nachnamen ein.", default='')
|
||||
|
|
@ -323,7 +333,7 @@ SELFBUY_CHOICES = {'TRUE': mark_safe('Ich möchte das Werk selbst kaufen und per
|
|||
}
|
||||
|
||||
|
||||
class Literature(Grant):
|
||||
class Literature(TermsConsentMixin, Grant):
|
||||
info = models.CharField(max_length=500, verbose_name='Informationen zum Werk',
|
||||
help_text=mark_safe("Bitte gib alle Informationen zum benötigten Werk an,<br>\
|
||||
die eine eindeutige Identifizierung ermöglichen (Autor, Titel, Verlag, ISBN, ...)"))
|
||||
|
|
@ -367,7 +377,7 @@ ADULT_CHOICES = {'TRUE': mark_safe('Ich bin volljährig.'),
|
|||
'FALSE': mark_safe('Ich bin noch nicht volljährig.')
|
||||
}
|
||||
|
||||
class Email(Domain):
|
||||
class Email(TermsConsentMixin, Domain):
|
||||
address = models.CharField(max_length=50,
|
||||
choices=MAIL_CHOICES.items(),
|
||||
default='USERNAME', verbose_name='Adressbestandteil',
|
||||
|
|
@ -377,7 +387,7 @@ class Email(Domain):
|
|||
adult = models.CharField( max_length=10, verbose_name='Volljährigkeit', choices=ADULT_CHOICES.items(), default='FALSE')
|
||||
intern_notes = models.TextField(max_length=1000, blank=True, verbose_name="interne Anmerkungen")
|
||||
|
||||
class List(Domain):
|
||||
class List(TermsConsentMixin, Domain):
|
||||
address = models.CharField(max_length=50, default='NO_ADDRESS',
|
||||
verbose_name="Adressbestandteil für Projektmailingliste",
|
||||
help_text=mark_safe("Bitte gib hier den gewünschten Adressbestandteil an,<br>der sich vor der Domain befinden soll."))
|
||||
|
|
@ -396,7 +406,7 @@ PROJECT_CHOICE = {'PEDIA': 'Wikipedia',
|
|||
BC_VARIANT = {'PIC': 'mit Bild',
|
||||
'NOPIC': 'ohne Bild'}
|
||||
|
||||
class BusinessCard(Extern):
|
||||
class BusinessCard(TermsConsentMixin, Extern):
|
||||
project = models.CharField(max_length=20, choices=PROJECT_CHOICE.items(),
|
||||
default='PEDIA', verbose_name='Wikimedia-Projekt',
|
||||
help_text='Für welches Wikimedia-Projekt möchtest Du Visitenkarten?')
|
||||
|
|
|
|||
Loading…
Reference in New Issue