summaryrefslogtreecommitdiff
path: root/news/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'news/views.py')
-rw-r--r--news/views.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/news/views.py b/news/views.py
index 274ba75d..f799fc08 100644
--- a/news/views.py
+++ b/news/views.py
@@ -1,6 +1,9 @@
from django import forms
+from django.conf import settings
+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 +40,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('[%s] %s' % (settings.NEWS_MAILINGLIST, newsitem.title),
+ template.render(ctx),
+ '"%s: Recent news updates: %s" <%s@%s>' % (settings.BRANDING_DISTRONAME, newsitem.author.get_full_name(), settings.NEWS_MAILINGLIST, settings.MAILMAN_DOMAIN),
+ ['%s@%s' % (settings.NEWS_MAILINGLIST, settings.MAILMAN_DOMAIN)],
+ fail_silently=True)
return super(NewsCreateView, self).form_valid(form)