limited stopwords + better search by author + remove descendant results
[wolnelektury.git] / src / suggest / forms.py
index 57e5eee..15f5f2c 100644 (file)
@@ -10,14 +10,19 @@ from django.core.urlresolvers import reverse
 from django.core.validators import validate_email
 from django.utils.translation import ugettext_lazy as _
 from django.utils.translation import ugettext
+
+from newsletter.forms import NewsletterForm
 from suggest.models import PublishingSuggestion, Suggestion
+from wolnelektury.utils import send_noreply_mail
 
 
-class SuggestForm(forms.Form):
+class SuggestForm(NewsletterForm):
+    email_field = 'contact'
     contact = forms.CharField(label=_('Contact'), max_length=120, required=False)
     description = forms.CharField(label=_('Description'), widget=forms.Textarea, required=True)
 
     def save(self, request):
+        super(SuggestForm, self).save()
         contact = self.cleaned_data['contact']
         description = self.cleaned_data['description']
 
@@ -46,15 +51,16 @@ Kontakt: %(contact)s
         except ValidationError:
             pass
         else:
-            send_mail(u'[WolneLektury] ' + ugettext(u'Thank you for your suggestion.'),
-                      ugettext(u"""\
+            send_noreply_mail(
+                ugettext(u'Thank you for your suggestion.'),
+                ugettext(u"""\
 Thank you for your comment on WolneLektury.pl.
-The suggestion has been referred to the project coordinator.""") +
-                      u'\n\n-- \n' + ugettext(u'''Message sent automatically. Please do not reply.'''),
-                      'no-reply@wolnelektury.pl', [contact], fail_silently=True)
+The suggestion has been referred to the project coordinator."""),
+                [contact], fail_silently=True)
 
 
-class PublishingSuggestForm(forms.Form):
+class PublishingSuggestForm(NewsletterForm):
+    email_field = 'contact'
     contact = forms.CharField(label=_('Contact'), max_length=120, required=False)
     books = forms.CharField(label=_('books'), widget=forms.Textarea, required=True)
     ebook = forms.BooleanField(label=_('ebook'), required=False, initial=True)
@@ -68,6 +74,7 @@ class PublishingSuggestForm(forms.Form):
         return super(PublishingSuggestForm, self).clean()
 
     def save(self, request):
+        super(PublishingSuggestForm, self).save()
         contact = self.cleaned_data['contact']
         suggestion_text = self.cleaned_data['books'].strip(', \n\r')
 
@@ -106,10 +113,9 @@ class PublishingSuggestForm(forms.Form):
             except ValidationError:
                 pass
             else:
-                send_mail(
-                    u'[WolneLektury] ' + ugettext(u'Thank you for your suggestion.'),
+                send_noreply_mail(
+                    ugettext(u'Thank you for your suggestion.'),
                     ugettext(u"""\
 Thank you for your comment on WolneLektury.pl.
-The suggestion has been referred to the project coordinator.""") +
-                    u"\n\n-- \n" + ugettext(u'''Message sent automatically. Please do not reply.'''),
-                    'no-reply@wolnelektury.pl', [contact], fail_silently=True)
+The suggestion has been referred to the project coordinator."""),
+                    [contact], fail_silently=True)