diff --git a/nova/models.py b/nova/models.py index 854fb68..0dbaf43 100644 --- a/nova/models.py +++ b/nova/models.py @@ -253,8 +253,9 @@ def save(self, *args, **kwargs): super(NewsletterIssue, self).save(*args, **kwargs) if self.template: - html_template, _ = self.premail(track=self.track, plaintext=False) - self.rendered_template = self.render(template=html_template) + html_template, _ = self.premail(track=self.track, plaintext=False, + template=self.render()) + self.rendered_template = html_template super(NewsletterIssue, self).save() def premailer(self, template, plaintext=False): @@ -360,7 +361,7 @@ def send(self, subject=None, email_addresses=None, extra_headers=None, mark_as_s subject = self.subject headers = { - 'Reply-To': self.newsletter.reply_to_email, + 'Reply-To': self.newsletter.reply_to_email, } # Set any extra headers @@ -376,16 +377,11 @@ def send(self, subject=None, email_addresses=None, extra_headers=None, mark_as_s self.sent_at = datetime.now() self.save() - # Premail template - html_template, plaintext_template = self.premail(track=self.track) + # Render and Premail template + rendered_html_template, rendered_plaintext_template = self.premail(track=self.track, + template=self.render()) for send_to in email_addresses: - # Render the newsletter for this subscriber - rendered_html_template = self.render(template=html_template, - extra_context={'email': send_to}) - rendered_plaintext_template = self.render(template=plaintext_template, - extra_context={'email': send_to}) - # Send multipart message send_multipart_mail(subject, txt_body=rendered_plaintext_template, diff --git a/nova/views.py b/nova/views.py index 7b8b6b4..2a3baa1 100644 --- a/nova/views.py +++ b/nova/views.py @@ -187,5 +187,6 @@ def preview(request, newsletter_issue_id): if subscribers.count() > 0: email = subscribers[0] - premailed_template, _ = issue.premail(track=issue.track, plaintext=False) - return HttpResponse(issue.render(template=premailed_template, extra_context={'email':email})) + premailed_template, _ = issue.premail(track=issue.track, plaintext=False, + template=issue.render()) + return HttpResponse(premailed_template)