def change_comment(self, request, id, action): comment = Comment.query.get(id) if action in ('hide', 'restore'): message = { 'hide': _(u'Do you really want to hide the comment?'), 'restore': _(u'Do you really want to restore the comment?') } if confirm_action(request, message[action], 'news/edit_comment', id=id, action=action): comment.deleted = action == 'hide' db.session.commit() request.flash(_(u'The comment has been hidden') if \ action == 'hide' else _(u'The comment has been restored')) return redirect_to(comment) return redirect_to(comment.article) # action == 'edit' form = EditCommentForm(request.form) if form.validate_on_submit(): if form.validate(): comment.text = form.text.data db.session.commit() request.flash(_(u'The comment was saved'), True) return redirect_to(comment) else: form.text.data = comment.text return { 'comment': comment, 'form': form, }
def detail(self, request, slug): article = Article.query.filter_by(slug=slug).one() if article.hidden: # TODO: ACL Check request.flash(_(u"This article is hidden"), False) if article.comments_enabled: form = EditCommentForm(request.form) if form.validate_on_submit(): if form.data.get("comment_id", None): comment = Comment.query.get(form.comment_id.data) comment.text = form.text.data request.flash(_(u"The comment was successfully edited"), True) else: comment = Comment(text=form.text.data, author=request.user) article.comments.append(comment) Subscription.new(comment, "news.comment.new") request.flash(_(u"Your comment was successfully created"), True) db.session.commit() return redirect_to(comment) else: form = EditCommentForm() # increase counters article.touch() comments = list(article.comments.options(db.joinedload("author"))) Subscription.accessed(request.user, object=article, subject=article) return {"article": article, "comments": comments, "form": form}
def detail(self, request, slug): article = Article.query.filter_by(slug=slug).one() if article.hidden: #TODO: ACL Check request.flash(_(u'This article is hidden'), False) if article.comments_enabled: form = EditCommentForm(request.form) if form.validate_on_submit(): if form.data.get('comment_id', None): comment = Comment.query.get(form.comment_id.data) comment.text = form.text.data request.flash(_(u'The comment was successfully edited'), True) else: comment = Comment(text=form.text.data, author=request.user) article.comments.append(comment) Subscription.new(comment, 'news.comment.new') request.flash(_(u'Your comment was successfully created'), True) db.session.commit() return redirect_to(comment) else: form = EditCommentForm() # increase counters article.touch() comments = list(article.comments.options(db.joinedload('author'))) Subscription.accessed(request.user, object=article, subject=article) return {'article': article, 'comments': comments, 'form': form}
def change_comment(self, request, id, action): comment = Comment.query.get(id) if action in ("hide", "restore"): message = { "hide": _(u"Do you really want to hide the comment?"), "restore": _(u"Do you really want to restore the comment?"), } if confirm_action(request, message[action], "news/edit_comment", id=id, action=action): comment.deleted = action == "hide" db.session.commit() request.flash( _(u"The comment has been hidden") if action == "hide" else _(u"The comment has been restored") ) return redirect_to(comment) return redirect_to(comment.article) # action == 'edit' form = EditCommentForm(request.form) if form.validate_on_submit(): if form.validate(): comment.text = form.text.data db.session.commit() request.flash(_(u"The comment was saved"), True) return redirect_to(comment) else: form.text.data = comment.text return {"comment": comment, "form": form}