summaryrefslogtreecommitdiff
path: root/cli/app/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'cli/app/controllers')
-rw-r--r--cli/app/controllers/collection_controller.py20
-rw-r--r--cli/app/controllers/graph_controller.py18
-rw-r--r--cli/app/controllers/page_controller.py15
-rw-r--r--cli/app/controllers/tile_controller.py11
4 files changed, 44 insertions, 20 deletions
diff --git a/cli/app/controllers/collection_controller.py b/cli/app/controllers/collection_controller.py
deleted file mode 100644
index 7206bd8..0000000
--- a/cli/app/controllers/collection_controller.py
+++ /dev/null
@@ -1,20 +0,0 @@
-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.collection import Collection, CollectionForm, getMediaCounts
-from app.controllers.crud_controller import CrudView
-
-from app.data.export import export_zip
-
-class CollectionView(CrudView):
- model = Collection
- form = CollectionForm
-
- def on_index(self, session, data):
- data['counts'] = getMediaCounts(session)
- return data
-
- def on_destroy(self, session, item):
- session.query(CollectionMedia).filter(CollectionMedia.collection_id == item.id).delete(synchronize_session=False)
diff --git a/cli/app/controllers/graph_controller.py b/cli/app/controllers/graph_controller.py
new file mode 100644
index 0000000..25b49aa
--- /dev/null
+++ b/cli/app/controllers/graph_controller.py
@@ -0,0 +1,18 @@
+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.graph import Graph, GraphForm
+from app.sql.models.page import Page
+from app.sql.models.tile import Tile
+from app.controllers.crud_controller import CrudView
+
+class GraphView(CrudView):
+ model = Graph
+ form = GraphForm
+
+ def on_destroy(self, session, item):
+ for item in item.pages:
+ session.query(Tile).filter(Tile.page_id == item.id).delete(synchronize_session=False)
+ session.query(Page).filter(Page.graph_id == item.id).delete(synchronize_session=False)
diff --git a/cli/app/controllers/page_controller.py b/cli/app/controllers/page_controller.py
new file mode 100644
index 0000000..5263cf0
--- /dev/null
+++ b/cli/app/controllers/page_controller.py
@@ -0,0 +1,15 @@
+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.page import Page, PageForm
+from app.sql.models.tile import Tile
+from app.controllers.crud_controller import CrudView
+
+class PageView(CrudView):
+ model = Page
+ form = PageForm
+
+ def on_destroy(self, session, item):
+ session.query(Tile).filter(Tile.page_id == item.id).delete(synchronize_session=False)
diff --git a/cli/app/controllers/tile_controller.py b/cli/app/controllers/tile_controller.py
new file mode 100644
index 0000000..c47237b
--- /dev/null
+++ b/cli/app/controllers/tile_controller.py
@@ -0,0 +1,11 @@
+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.tile import Tile, TileForm
+from app.controllers.crud_controller import CrudView
+
+class TileView(CrudView):
+ model = Tile
+ form = TileForm