Esempio n. 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)
Esempio n. 2
0
def post_moderate(request, uid):
    user = request.user
    post = Post.objects.filter(uid=uid).first()
    form = forms.PostModForm(post=post, user=user, request=request)

    if request.method == "POST":

        form = forms.PostModForm(post=post,
                                 data=request.POST,
                                 user=user,
                                 request=request)
        if form.is_valid():
            url = form.save()
            if tasks.HAS_UWSGI:
                tasks.moderated_post(pid=post.id)
            return redirect(url)
        else:
            msg = ','.join([y for x in form.errors.values() for y in x])
            messages.error(request, msg)
            return redirect(post.root.get_absolute_url())

    context = dict(form=form, post=post)
    return render(request, "post_moderate.html", context)
Esempio n. 3
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')
            dupe = form.cleaned_data.get('dupe', '').split("\n")
            dupe_comment = form.cleaned_data.get('comment')
            mod_uid = form.cleaned_data.get('pid')
            offtopic = form.cleaned_data.get('offtopic')
            redir = auth.moderate_post(post=post,
                                       request=request,
                                       action=action,
                                       comment=dupe_comment,
                                       dupes=dupe,
                                       pid=mod_uid,
                                       offtopic=offtopic)
            return redirect(redir)
        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, "post_moderate.html", context)