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)
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('/')