summaryrefslogtreecommitdiffstats
path: root/hyperkitty/views/message.py
diff options
context:
space:
mode:
Diffstat (limited to 'hyperkitty/views/message.py')
-rw-r--r--hyperkitty/views/message.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/hyperkitty/views/message.py b/hyperkitty/views/message.py
index e64ac5f..b0f543b 100644
--- a/hyperkitty/views/message.py
+++ b/hyperkitty/views/message.py
@@ -26,7 +26,7 @@ import urllib
import django.utils.simplejson as simplejson
from django.http import HttpResponse, HttpResponseRedirect, Http404
-from django.shortcuts import redirect, render
+from django.shortcuts import redirect, render, render_to_response
from django.template import RequestContext, loader
from django.conf import settings
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger, InvalidPage
@@ -139,7 +139,7 @@ def vote(request, mlist_fqdn, message_id_hash):
@login_required
def reply(request, mlist_fqdn, message_id_hash):
""" Sends a reply to the list.
- TODO: unit tests
+ TODO: unit tests, make sure a message-id is generated
"""
if request.method != 'POST':
return HttpResponse("Something went wrong", content_type="text/plain", status=500)
@@ -165,3 +165,17 @@ def reply(request, mlist_fqdn, message_id_hash):
})
reply.send()
return HttpResponse("The reply has been sent successfully.", mimetype="text/plain")
+
+
+@login_required
+def new_message(request, mlist_fqdn):
+ """ Sends a new thread-starting message to the list.
+ TODO: unit tests, make sure a message-id is generated
+ """
+ store = get_store(request)
+ mlist = store.get_list(mlist_fqdn)
+ context = {
+ "mlist": mlist,
+ }
+ return render_to_response("message_new.html", context,
+ context_instance=RequestContext(request))