summaryrefslogtreecommitdiff
path: root/animism-align/cli/app/controllers/paragraph_controller.py
blob: 9e6d4bc31049ecf22dfec2b0680b09bbeab4cd2e (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
from flask import request, jsonify, redirect
from flask_classful import route
from werkzeug.datastructures import MultiDict

from app.sql.common import db, Session
from app.sql.models.paragraph import Paragraph, ParagraphForm
from app.controllers.crud_controller import CrudView

class ParagraphView(CrudView):
  model = Paragraph
  form = ParagraphForm
  index_all = False
  use_limit = False
  default_sort = "start_ts"

  def where(self, query, args):
    episode_id = args.get('episode_id', default=None)
    if episode_id is not None:
      query = query.filter(Paragraph.episode_id == int(episode_id))
    return query

  def on_create(self, session, form, item):
    if 'settings' in form:
      item.settings = form['settings']

  def on_update(self, session, form, item):
    if 'settings' in form:
      item.settings = form['settings']