diff options
Diffstat (limited to 'news/views.py')
-rw-r--r-- | news/views.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/news/views.py b/news/views.py index 274ba75d..f85db171 100644 --- a/news/views.py +++ b/news/views.py @@ -1,6 +1,8 @@ from django import forms +from django.core.mail import send_mail from django.http import HttpResponse from django.shortcuts import get_object_or_404, redirect +from django.template import Context, loader from django.views.decorators.http import require_POST from django.views.generic import (DetailView, ListView, CreateView, UpdateView, DeleteView) @@ -37,6 +39,16 @@ class NewsCreateView(CreateView): newsitem.author = self.request.user newsitem.slug = find_unique_slug(News, newsitem.title) newsitem.save() + if newsitem.send_announce: + ctx = Context({ + 'news': newsitem, + }) + template = loader.get_template('news/news_email_notification.txt') + send_mail('[arch-announce] %s' % newsitem.title, + template.render(ctx), + '"Arch Linux: Recent news updates: %s" <arch-announce@archlinux.org>' % newsitem.author.get_full_name(), + ['arch-announce@archlinux.org'], + fail_silently=True) return super(NewsCreateView, self).form_valid(form) |