Пример #1
0
 def get_context(self, request):
     from mezzanine.forms.forms import FormForForm
     sent = False
     if request.method == 'POST':
         form = FormForForm(self, request.POST, request.FILES)
         if form.is_valid():
             entry = form.save()
             fields = ["%s: %s" % (v.label, form.format_value(form.cleaned_data[k]))
                       for (k, v) in form.fields.items()]
             subject = self.email_subject
             if not subject:
                 subject = "%s - %s" % (self.title, entry.entry_time)
             body = "\n".join(fields)
             if self.email_message:
                 body = "%s\n\n%s" % (self.email_message, body)
             email_from = self.email_from or settings.DEFAULT_FROM_EMAIL
             email_to = form.email_to()
             if email_to and self.send_email:
                 msg = EmailMessage(subject, body, email_from, [email_to])
                 msg.send()
             email_from = email_to or email_from  # Send from the email entered.
             email_copies = [e.strip() for e in self.email_copies.split(",") if e.strip()]
             if email_copies:
                 msg = EmailMessage(subject, body, email_from, email_copies)
                 for f in form.files.values():
                     f.seek(0)
                     msg.attach(f.name, f.read())
                 msg.send()
             sent = True
     else:
         form = FormForForm(self)
     return {"form": form, "sent": sent}