summaryrefslogtreecommitdiff
path: root/src/controllers/replies_controller.py
blob: bd47a447d165e329873c22f019c740cebd2fb676 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
from flask import Blueprint, request, abort, render_template
from src.services import CreateReplyService
from src.queries import CommentsQuery
from src.database.models import Comment
from src.database import db


replies_blueprint = Blueprint('replies_controller',
                              '__replies_controller__')
comments_query = CommentsQuery()


@replies_blueprint.get('/api/comments/<int:comment_id>/replies')
def index(comment_id):
    return render_template('replies/index.jinja', page=comments_query.replies_of(comment_id))


@replies_blueprint.get('/api/replies/new')
def new():
    return render_template('replies/form.jinja')


@replies_blueprint.post('/api/comments/<int:comment_id>/replies')
def create(comment_id):
    service = CreateReplyService(request.form, comment_id)
    status_code = service.call()

    if status_code != 200:
        abort(status_code)

    return render_template('comments/index.jinja')