from flask import Flask, render_template, send_from_directory, request
from flask_socketio import SocketIO, emit
-import time
import os
from .utils import deindex
-from director.database.read import read as database_read
-from director.database.read import read_all_current as database_read_all_current
-from director.database.read import read_indexes as database_read_indexes
+import director.admin as admin
+
from director.database.read import read_views as database_read_views
-from director.database.write import write as database_write
app = Flask(__name__, instance_relative_config=False)
socketio = SocketIO(app, logger=False, engineio_logger=False)
+
+# root movements
+
@app.route("/", methods=['get'])
def index():
return render_template("index.html")
+@socketio.on('connect')
+def connecting():
+ emit("update", database_read_views(), json=True, namespace="/", broadcast=True)
+
+# info screen pages
+
@app.route("/info/<string:screen>", methods=["get"])
def info(screen):
return render_template(f"info/{screen}.html")
-@app.route("/admin", methods=["get"])
-def admin():
- return render_template("admin.html", indexes=database_read_indexes())
+# admin screen pages
-@app.route("/admin/<string:table_name>", methods=["get", "post"])
-def admin_table(table_name):
- start = time.time()
+app.route("/admin", methods=["get"])(admin.admin_main)
+app.route("/admin/<string:table_name>", methods=["get", "post"])(admin.admin_table)
- if request.method == "POST":
- database_write(request.form)
-
- emit(
- "update",
- database_read_views(table_name),
- json=True, namespace="/", broadcast=True
- )
-
- end = time.time()
-
- return render_template(
- "table.html",
- indexes=database_read_indexes(),
- table=database_read(table_name),
- table_name=table_name,
- time_taken = end - start
- )
+# script pages
@app.route("/script/<path:filename>", methods=["get"])
def script(filename):
return send_from_directory(os.path.join(app.root_path, "build"), filename)
-
-@socketio.on('connect')
-def connecting():
- emit("update", database_read_views(), json=True, namespace="/", broadcast=True)
--- /dev/null
+from flask import render_template, request
+from flask_socketio import emit
+import time
+
+from director.database.read import read_indexes as database_read_indexes
+from director.database.read import read_views as database_read_views
+from director.database.write import write as database_write
+from director.database.read import read as database_read
+
+def admin_main():
+ return render_template("admin.html", indexes=database_read_indexes())
+
+def admin_table(table_name):
+ start = time.time()
+
+ if request.method == "POST":
+ database_write(request.form)
+
+ emit(
+ "update",
+ database_read_views(table_name),
+ json=True, namespace="/", broadcast=True
+ )
+
+ end = time.time()
+
+ return render_template(
+ "table.html",
+ indexes=database_read_indexes(),
+ table=database_read(table_name),
+ table_name=table_name,
+ time_taken = end - start
+ )