# HG changeset patch # User Goffi # Date 1431790099 -7200 # Node ID 26353615cc2ea4ddf8788c52e14ba1e02ca1c4b5 # Parent 1fb1e233d63fb6915f242d10eef91fba0d5b90f3 fixed email sending in form diff -r 1fb1e233d63f -r 26353615cc2e sat_website/forms.py --- a/sat_website/forms.py Sat May 16 10:13:52 2015 +0200 +++ b/sat_website/forms.py Sat May 16 17:28:19 2015 +0200 @@ -22,12 +22,10 @@ """ from django.utils.translation import ugettext_lazy as _, ugettext, string_concat, get_language -from django.utils.html import format_html from django.core.mail import send_mail from django import forms from django.conf import settings from collections import OrderedDict -from email import email import unicodecsv import utils import re @@ -69,7 +67,7 @@ def choice_label(self, value): """Return the label corresponding to the given value. - + @param value (unicode): a choice value @return: unicode """ @@ -78,7 +76,7 @@ return unicode(label) return u'' - + ## Forms ## @@ -122,9 +120,9 @@ def sections(self): """Get the fields grouped in sections. - + @return: OrderedDict binding section name to a list of fields - """ + """ sections = OrderedDict() current_section = None for field in self: @@ -146,7 +144,7 @@ def results(self, user_readable=True): """Get the results submitted by the user as a list. - + @param user_readable: (bool) set to True to prefer the fields' labels to their names, also filter out the empty fields. @return: list of couple (name, value) or (label, value) @@ -197,7 +195,7 @@ @return: unicode """ return '\n'.join([name + ': ' + value for name, value in self.results(user_readable)]) - + def prepareResultForUser(self): """Get the email body to send to the subscriber. @@ -214,7 +212,7 @@ } HEADER = ugettext(u"""Tank you, {name}! - + We received your submission and we are happy to count you in the members of the association. """) @@ -269,8 +267,8 @@ if not self.is_valid(): return # send email to user - send_mail(_(u'Subscription to Salut à Toi'), self.prepareResultForUser(), settings.EMAIL_BACKEND, [self['email'].value()], fail_silently=False) + send_mail(_(u'Subscription to Salut à Toi'), self.prepareResultForUser(), settings.FORM_FROM_EMAIL, [self['email'].value()], fail_silently=False) # send email to admins - send_mail(_(u'Subscription to Salut à Toi'), self.prepareResultForAdmin(), settings.EMAIL_BACKEND, [email for name, email in settings.ADMINS], fail_silently=False) + send_mail(_(u'Subscription to Salut à Toi'), self.prepareResultForAdmin(), settings.FORM_FROM_EMAIL, settings.FORM_TO_EMAILS, fail_silently=False) # save to a CSV file self.writeResultToCSV() diff -r 1fb1e233d63f -r 26353615cc2e sat_website/local_settings.py --- a/sat_website/local_settings.py Sat May 16 10:13:52 2015 +0200 +++ b/sat_website/local_settings.py Sat May 16 17:28:19 2015 +0200 @@ -30,11 +30,10 @@ # Email settings # print email to stdout instead of actually sending it -EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' +# EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' -DEFAULT_FROM_EMAIL = u'contact@salut-a-toi.org' - -ADMINS = ((u'Salut à Toi', 'contact@salut-a-toi.org'),) +FORM_FROM_EMAIL = 'no-reply@example.net' +FORM_TO_EMAIL = ['email@example.net'] # Application definition