def make_comment_on_article(slug, body, **kwargs): article = Article.query.filter_by(slug=slug).first() if not article: raise InvalidUsage.article_not_found() comment = Comment(article, current_identity.profile, body, **kwargs) comment.save() return comment
def update_article(slug, **kwargs): article = Article.query.filter_by( slug=slug, author_id=current_identity.profile.id).first() if not article: raise InvalidUsage.article_not_found() article.update(updatedAt=dt.datetime.utcnow, **kwargs) article.save() return article
def unfavorite_an_article(slug): profile = current_identity.profile article = Article.query.filter_by(slug=slug).first() if not article: raise InvalidUsage.article_not_found() article.unfavourite(profile) article.save() return article
def delete_comment_on_article(slug, cid): article = Article.query.filter_by(slug=slug).first() if not article: raise InvalidUsage.article_not_found() comment = article.comments.filter_by( id=cid, author=current_identity.profile).first() comment.delete() return '', 200
def get_article(slug): article = Article.query.filter_by(slug=slug).first() if not article: raise InvalidUsage.article_not_found() return article