Пример #1
0
def post_moderate(request, uid):
    """Used to make display post moderate form given a post request."""

    user = request.user
    post = Post.objects.filter(uid=uid).first()

    if request.method == "POST":
        form = forms.PostModForm(post=post, data=request.POST, user=user, request=request)

        if form.is_valid():
            action = form.cleaned_data.get('action')
            comment = form.cleaned_data.get('comment')
            mod = auth.Moderate(user=user, post=post, action=action, comment=comment)
            messages.success(request=request, message=mod.msg)
            auth.log_action(user=user, log_text=f"{mod.msg} ; post.uid={post.uid}.")
            return redirect(mod.url)
        else:
            errors = ','.join([err for err in form.non_field_errors()])
            messages.error(request, errors)
            return redirect(reverse("post_view", kwargs=dict(uid=post.root.uid)))
    else:
        form = forms.PostModForm(post=post, user=user, request=request)

    context = dict(form=form, post=post)
    return render(request, "forms/form_moderate.html", context)
Пример #2
0
def mark_spam(request, uid):
    """
    Mark post as a
    """
    post = Post.objects.filter(uid=uid).first()
    if not post:
        messages.error(request, "Post does noe exist.")
        return redirect('/')

    auth.Moderate(post=post, action=REPORT_SPAM, user=request.user)

    return redirect('/')