def edit_sub_forum(request, forumSlug): try: forum = SubForum.objects.get(slug=forumSlug) except SubForum.DoesNotExist: raise Http404("Sub-forum doesn't exist.") if request.method == 'POST': form = SubForumForm(request.POST) if form.is_valid(): forumName = form.cleaned_data['forumName'] forum.name = forumName utilities.unique_slugify(forum, forumName) forum.save() return HttpResponseRedirect(forum.get_url()) else: form = SubForumForm(initial={'forumName': forum.name}) context = {'form': form, 'sub_forum': forum} return render(request, 'edit/edit_sub_forum.html', context)
def edit_category(request, categorySlug): try: category = Category.objects.get(slug=categorySlug) except Category.DoesNotExist: raise Http404("Category doesn't exist.") if request.method == 'POST': form = CategoryForm(request.POST) if form.is_valid(): categoryName = form.cleaned_data['category'] category.name = categoryName utilities.unique_slugify(category, categoryName) category.save() return HttpResponseRedirect(reverse('index')) else: form = CategoryForm(initial={'category': category.name}) context = {'form': form, 'category': category} return render(request, 'edit/edit_category.html', context)
def new_sub_forum(request, categorySlug): try: category = Category.objects.get(slug=categorySlug) except Category.DoesNotExist: raise Http404("Wrong category.") if request.method == 'POST': form = SubForumForm(request.POST) if form.is_valid(): forumName = form.cleaned_data['forumName'] forum = SubForum(name=forumName, slug='', category=category) utilities.unique_slugify(forum, forumName) forum.save() return HttpResponseRedirect(reverse('index')) else: form = SubForumForm() context = {'categorySlug': categorySlug, 'form': form} return render(request, 'new/new_sub_forum.html', context)
def new_thread(request, forumSlug): try: forum = SubForum.objects.get(slug=forumSlug) except SubForum.DoesNotExist: raise Http404("Sub-forum doesn't exist.") if request.method == 'POST': form = ThreadForm(request.POST) if form.is_valid(): title = form.cleaned_data['title'] content = form.cleaned_data['content'] theThread = Thread(sub_forum=forum, user=request.user, title=title, slug='', text=content) utilities.unique_slugify(theThread, title) theThread.save() return HttpResponseRedirect(theThread.get_url()) else: form = ThreadForm() context = {'forumSlug': forumSlug, 'form': form} return render(request, 'new/new_thread.html', context)
def new_category(request): if request.method == 'POST': form = CategoryForm(request.POST) if form.is_valid(): categoryName = form.cleaned_data['category'] category = Category(name=categoryName, slug='') utilities.unique_slugify(category, categoryName) category.save() return HttpResponseRedirect(reverse('index')) else: form = CategoryForm() context = {'form': form} return render(request, 'new/new_category.html', context)
def edit_thread(request, threadSlug): try: theThread = Thread.objects.get(slug=threadSlug) except Thread.DoesNotExist: raise Http404("Thread doesn't exist.") if request.user != theThread.user and not request.user.has_moderator_rights( ): return HttpResponseForbidden("Not your thread (and not a moderator).") if request.method == 'POST': form = ThreadForm(request.POST) if form.is_valid(): title = form.cleaned_data['title'] content = form.cleaned_data['content'] theThread.title = title theThread.text = content theThread.was_edited = True theThread.date_edited = timezone.localtime(timezone.now()) theThread.edited_by = request.user utilities.unique_slugify(theThread, title) theThread.save() return HttpResponseRedirect(theThread.get_url()) else: form = ThreadForm(initial={ 'title': theThread.title, 'content': theThread.text }) context = {'form': form, 'thread': theThread} return render(request, 'edit/edit_thread.html', context)