Add missing constraint.
[wolnelektury.git] / src / wolnelektury / forms.py
1 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
3 #
4 from allauth.socialaccount.forms import SignupForm
5 from django.contrib.auth.forms import AuthenticationForm, UserCreationForm
6 from django.contrib.auth.models import User
7
8 from newsletter.forms import NewsletterForm
9
10
11 class WLAuthenticationForm(AuthenticationForm):
12     required_css_class = 'required'
13
14
15 # has to be this order, because otherwise the form is lacking fields
16 class RegistrationForm(UserCreationForm, NewsletterForm):
17     required_css_class = 'required'
18     data_processing_part2 = '''\
19 Dane są przetwarzane w zakresie niezbędnym do prowadzenia serwisu, a także w celach prowadzenia statystyk, \
20 ewaluacji i sprawozdawczości. W przypadku wyrażenia dodatkowej zgody adres e-mail zostanie wykorzystany \
21 także w celu przesyłania newslettera Wolnych Lektur.'''
22
23     class Meta:
24         model = User
25         fields = ('username', 'email')
26
27     def save(self, commit=True):
28         super(RegistrationForm, self).save(commit=commit)
29         NewsletterForm.save(self)
30
31
32 class SocialSignupForm(SignupForm, NewsletterForm):
33     data_processing_part2 = '''\
34 Dane są przetwarzane w zakresie niezbędnym do prowadzenia serwisu, a także w celach prowadzenia statystyk, \
35 ewaluacji i sprawozdawczości. W przypadku wyrażenia dodatkowej zgody adres e-mail zostanie wykorzystany \
36 także w celu przesyłania newslettera Wolnych Lektur.'''
37
38     def save(self, *args, **kwargs):
39         super(SocialSignupForm, self).save(*args, **kwargs)
40         NewsletterForm.save(self)