diff --git a/README.en.md b/README.en.md index 3d5bd01..fe02056 100644 --- a/README.en.md +++ b/README.en.md @@ -9,7 +9,7 @@ Use it to display the results on a TV or to serve results for the competitors.
Made with ❤️ on 603 NYÍRSÉG IC
\ No newline at end of file +Made with ❤️ and ☕ on 603 NYÍRSÉG IC
\ No newline at end of file diff --git a/README.md b/README.md index 0a84672..3fc3522 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Egyszerű python program, amivel a tájfutó eseményeken használt OE11 és OE1Készült sok ❤️-el a 603 NYÍRSÉG IC-n
\ No newline at end of file +Készült sok ❤️-el és ☕-val a 603 NYÍRSÉG IC-n
\ No newline at end of file diff --git a/main.py b/main.py index be75d3e..517e3b3 100644 --- a/main.py +++ b/main.py @@ -1,7 +1,8 @@ import os -from flask import Flask -from watchdog.observers import Observer +from flask import Flask, Response +import threading from watchdog.events import FileSystemEventHandler +from watchdog.observers import Observer # -------------- VARIABLES -------------- html_file_path = r"PATH" @@ -12,20 +13,27 @@ scroll_pixels = 100 scroll_interval = 3 # seconds bottom_wait_time = 3 # seconds top_wait_time = 3 # seconds -reload_interval = 35 # seconds # -------------- END VARIABLES -------------- app = Flask(__name__) +file_change_event = threading.Event() class FileChangeHandler(FileSystemEventHandler): - def __init__(self, app): - self.app = app - def on_modified(self, event): if event.src_path == html_file_path: - with self.app.app_context(): - self.app.config["TEMPLATES_AUTO_RELOAD"] = True + file_change_event.set() + + +@app.route("/_file_change") +def file_change_stream(): + def stream(): + while True: + file_change_event.wait() + yield "data: reload\n\n" + file_change_event.clear() + + return Response(stream(), content_type="text/event-stream") @app.route("/") @@ -38,12 +46,11 @@ def serve_html(): scroll-behavior: smooth; }} -