Пример #1
0
def create():
    # TODO (code-master5): comment limit, revision and drafts, edit functionality
    form = CommentEditForm()
    if form.validate_on_submit():
        get_review_or_404(form.review_id.data)
        if current_user.is_blocked:
            flash.error(gettext("You are not allowed to write new comments because your "
                                "account has been blocked by a moderator."))
            return redirect(url_for('review.entity', id=form.review_id.data))
        # should be able to comment only if review exists
        db_comment.create(
            review_id=form.review_id.data,
            user_id=current_user.id,
            text=form.text.data,
        )
        flash.success(gettext("Comment has been saved!"))
    elif not form.text.data:
        # comment must have some text
        flash.error(gettext("Comment must not be empty!"))
    return redirect(url_for('review.entity', id=form.review_id.data))
Пример #2
0
def delete(id):
    comment = get_comment_or_404(id)
    # if comment exists, review must exist
    review = get_review_or_404(comment["review_id"])
    if comment["user"] != current_user:
        raise Unauthorized(gettext("Only the author can delete this comment."))
    if request.method == 'POST':
        db_comment.delete(comment["id"])
        flash.success(gettext("Comment has been deleted."))
        return redirect(url_for('review.entity', id=comment["review_id"]))
    if comment:
        comment["text_html"] = markdown(comment["last_revision"]["text"], safe_mode="escape")
    return render_template('review/delete_comment.html', review=review, comment=comment)
Пример #3
0
def create():
    # TODO (code-master5): comment limit, revision and drafts, edit functionality
    form = CommentEditForm()
    if form.validate_on_submit():
        get_review_or_404(form.review_id.data)
        if current_user.is_blocked:
            flash.error(
                gettext(
                    "You are not allowed to write new comments because your "
                    "account has been blocked by a moderator."))
            return redirect(url_for('review.entity', id=form.review_id.data))
        # should be able to comment only if review exists
        db_comment.create(
            review_id=form.review_id.data,
            user_id=current_user.id,
            text=form.text.data,
        )
        flash.success(gettext("Comment has been saved!"))
    elif not form.text.data:
        # comment must have some text
        flash.error(gettext("Comment must not be empty!"))
    return redirect(url_for('review.entity', id=form.review_id.data))
Пример #4
0
def delete(id):
    comment = get_comment_or_404(id)
    # if comment exists, review must exist
    review = get_review_or_404(comment["review_id"])
    if comment["user"] != current_user:
        raise Unauthorized(gettext("Only the author can delete this comment."))
    if request.method == 'POST':
        db_comment.delete(comment["id"])
        flash.success(gettext("Comment has been deleted."))
        return redirect(url_for('review.entity', id=comment["review_id"]))
    if comment:
        comment["text_html"] = markdown(comment["last_revision"]["text"],
                                        safe_mode="escape")
    return render_template('review/delete_comment.html',
                           review=review,
                           comment=comment)