Small refactor in messaging.
[wolnelektury.git] / src / suggest / forms.py
index 717cbc7..952c4fe 100644 (file)
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
 #
@@ -6,8 +5,8 @@ from django import forms
 from django.contrib.sites.models import Site
 from django.core.exceptions import ValidationError
 from django.core.mail import send_mail, mail_managers
-from django.core.urlresolvers import reverse
 from django.core.validators import validate_email
+from django.urls import reverse
 from django.utils.translation import ugettext_lazy as _
 from django.utils.translation import ugettext
 
@@ -21,17 +20,21 @@ class SuggestForm(NewsletterForm):
     contact = forms.CharField(label=_('Contact'), max_length=120, required=False)
     description = forms.CharField(label=_('Description'), widget=forms.Textarea, required=True)
 
+    data_processing_part2 = '''\
+Dane są przetwarzane w zakresie niezbędnym do obsługi zgłoszenia. W przypadku wyrażenia dodatkowej zgody \
+adres e-mail zostanie wykorzystany także w celu przesyłania newslettera Wolnych Lektur.'''
+
     def save(self, request):
         super(SuggestForm, self).save()
         contact = self.cleaned_data['contact']
         description = self.cleaned_data['description']
 
         suggestion = Suggestion(contact=contact, description=description, ip=request.META['REMOTE_ADDR'])
-        if request.user.is_authenticated():
+        if request.user.is_authenticated:
             suggestion.user = request.user
         suggestion.save()
 
-        mail_managers(u'Nowa sugestia na stronie WolneLektury.pl', u'''\
+        mail_managers('Nowa sugestia na stronie WolneLektury.pl', '''\
 Zgłoszono nową sugestię w serwisie WolneLektury.pl.
 http://%(site)s%(url)s
 
@@ -41,7 +44,7 @@ Kontakt: %(contact)s
 %(description)s''' % {
             'site': Site.objects.get_current().domain,
             'url': reverse('admin:suggest_suggestion_change', args=[suggestion.id]),
-            'user': str(request.user) if request.user.is_authenticated() else '',
+            'user': str(request.user) if request.user.is_authenticated else '',
             'contact': contact,
             'description': description,
             }, fail_silently=True)
@@ -52,8 +55,8 @@ Kontakt: %(contact)s
             pass
         else:
             send_noreply_mail(
-                ugettext(u'Thank you for your suggestion.'),
-                ugettext(u"""\
+                ugettext('Thank you for your suggestion.'),
+                ugettext("""\
 Thank you for your comment on WolneLektury.pl.
 The suggestion has been referred to the project coordinator."""),
                 [contact], fail_silently=True)
@@ -66,9 +69,11 @@ class PublishingSuggestForm(NewsletterForm):
     ebook = forms.BooleanField(label=_('ebook'), required=False, initial=True)
     audiobook = forms.BooleanField(label=_('audiobook'), required=False)
 
+    data_processing_part2 = SuggestForm.data_processing_part2
+
     def clean(self):
         if not self.cleaned_data['ebook'] and not self.cleaned_data['audiobook']:
-            msg = ugettext(u"One of these options is required.")
+            msg = ugettext("One of these options is required.")
             self._errors['ebook'] = self.error_class([msg])
             self._errors['audiobook'] = self.error_class([msg])
         return super(PublishingSuggestForm, self).clean()
@@ -84,12 +89,12 @@ class PublishingSuggestForm(NewsletterForm):
         suggestion = PublishingSuggestion(
             contact=contact, books=books,
             audiobooks=audiobooks, ip=request.META['REMOTE_ADDR'])
-        if request.user.is_authenticated():
+        if request.user.is_authenticated:
             suggestion.user = request.user
         suggestion.save()
 
         if not suggestion.is_spam():
-            mail_managers(u'Konsultacja planu wydawniczego na WolneLektury.pl', u'''\
+            mail_managers('Konsultacja planu wydawniczego na WolneLektury.pl', '''\
     Zgłoszono nową sugestię nt. planu wydawniczego w serwisie WolneLektury.pl.
     %(url)s
 
@@ -102,7 +107,7 @@ class PublishingSuggestForm(NewsletterForm):
     Audiobooki:
     %(audiobooks)s''' % {
                 'url': request.build_absolute_uri(reverse('admin:suggest_suggestion_change', args=[suggestion.id])),
-                'user': str(request.user) if request.user.is_authenticated() else '',
+                'user': str(request.user) if request.user.is_authenticated else '',
                 'contact': contact,
                 'books': books,
                 'audiobooks': audiobooks,
@@ -113,9 +118,9 @@ class PublishingSuggestForm(NewsletterForm):
             except ValidationError:
                 pass
             else:
-                send_mail(
-                    ugettext(u'Thank you for your suggestion.'),
-                    ugettext(u"""\
+                send_noreply_mail(
+                    ugettext('Thank you for your suggestion.'),
+                    ugettext("""\
 Thank you for your comment on WolneLektury.pl.
 The suggestion has been referred to the project coordinator."""),
                     [contact], fail_silently=True)