diff --git a/init.py b/init.py index 9d67306..13b4f38 100644 --- a/init.py +++ b/init.py @@ -5,6 +5,7 @@ from flask_talisman import Talisman from get_mysql import get_mysql import atexit from flask_apscheduler import APScheduler +from turbo_flask import Turbo def create(): @@ -13,6 +14,7 @@ def create(): :return app: """ app = Flask(__name__) + turbo.init_app(app) dbpw = get_mysql()[1] dbun = get_mysql()[0] @@ -70,10 +72,10 @@ class Meals(db.Model): scheduler = APScheduler() +turbo = Turbo() app = create() def_src = ["*.paulmartin.cloud", '\'self\''] -Talisman(app, content_security_policy={"default-src": def_src, "script-src": def_src # + ["'unsafe-inline'"] - }) +# Talisman(app, content_security_policy={"default-src": def_src, "script-src": def_src # + ["'unsafe-inline'"]}) scheduler.init_app(app) scheduler.start() scheduler.api_enabled = True diff --git a/routing.py b/routing.py index 4cde145..44b91d3 100644 --- a/routing.py +++ b/routing.py @@ -23,10 +23,14 @@ def index(): Leitet den normalen Website-Aufruf zum Login weiter. :return HTML: """ - return redirect(url_for("login")) + if current_user.is_authenticated: + return welcome() + else: + return login() -@app.route("/dashboard") + +@app.route("/dashboard", methods=["GET", "POST"]) @login_required def welcome(): """ @@ -46,7 +50,15 @@ def welcome(): else: t = "hidden" p = "" - return render_template('dashboard.html', kurs=kurs, name=name, theorie=t, praxis=p) + if turbo.can_stream(): + print ("Streaming...") + return turbo.stream([ + turbo.update( + render_template('dashboard.html', kurs=kurs, name=name, theorie=t, praxis=p), target="content") + ]) + else: + print ("Not streaming!") + return render_template('dashboard.html', kurs=kurs, name=name, theorie=t, praxis=p) @app.route("/theorie/noten") diff --git a/templates/index.html b/templates/index.html index 5e41350..d7c18fd 100644 --- a/templates/index.html +++ b/templates/index.html @@ -5,37 +5,38 @@ + {{ turbo() }} {% block head %} {% endblock %}
-