Example #1
0
def new_post(request, forum_id):
    
    member = request.user.get_profile()
    forum = get_object_or_404(Forum, id=forum_id)
    
    if request.method == "POST":
        
        title = request.POST.get("title")
        content = request.POST.get("content")
        subscribe = {"true": True, "false": False, False: False}.get(request.POST.get("subscribe", False), True)
        
        thread = ForumThread(forum=forum, title=title, content=content, author=request.user)
        thread.save()
        
        # subscribe the poster to the thread if requested (default value is True)
        if subscribe:
            thread.subscribe(thread.author, "email")
        
        # all users are automatically subscribed to onsite
        thread.subscribe(thread.author, "onsite")
        
        return HttpResponseRedirect(reverse("agora_thread", args=[thread.id]))
    
    return render_to_response("agora/new_post.html", {
        "member": member,
        "forum_id": forum_id,
    }, context_instance=RequestContext(request))