def new_thread(request, slug, template_name="forum/new_thread_form.html"): forum = Forum.objects.get(titre_slug=slug) if request.POST: preview = request.POST.get('preview', None) editpreview = request.POST.get('editpreview', None) new_threadform = ThreadForm(request.POST) new_messageform = MessageForm(request.POST) if not editpreview and new_threadform.is_valid() and new_messageform.is_valid(): contenu = request.POST.get('contenu') newthread = new_threadform.save(commit=False) if not preview: newthread.save() newthread.generate_slug() create_message(auteur=request.user, contenu=contenu, thread=newthread, isnewthread=True) return HttpResponseRedirect(newthread.get_absolute_url()) else: newmessage = Message(auteur=request.user, contenu=contenu, date_publication=datetime.datetime.now()) return internal_view_thread(request, newthread, urlretour=reverse("newthread", kwargs={"slug":slug}), messagesuppl=newmessage) else: threadform = new_threadform messageform = new_messageform else: threadform = ThreadForm(initial={"forum":forum.pk}) messageform = MessageForm(initial={"auteur":request.user.pk}) context = RequestContext(request, { 'forum': forum, 'full': True, 'threadform': threadform, 'messageform': messageform, }) return render_to_response(template_name, context)
def new_message(request, slug, template_name="forum/new_message_form.html"): thread = Thread.objects.get(titre_slug=slug) if request.POST: preview = request.POST.get('preview', None) editpreview = request.POST.get('editpreview', None) messageform = MessageForm(request.POST) if not editpreview and messageform.is_valid(): contenu = request.POST.get('contenu') if not preview: create_message(auteur=request.user, contenu=contenu, thread=thread) else: newmessage = Message(auteur=request.user, contenu=contenu, date_publication=datetime.datetime.now()) return internal_view_thread(request, thread, urlretour=thread.get_absolute_url(), messagesuppl=newmessage) return HttpResponseRedirect("%s#commentaires-posting" % thread.get_absolute_url())