diff --git a/app.py b/app.py index 76fd288..5b457c0 100755 --- a/app.py +++ b/app.py @@ -51,7 +51,7 @@ CONFIG_FILE = os.path.join(BASE_DIR, "config.json") # Persistente Konfiguration USERS_FILE = os.path.join(BASE_DIR, "users.json") # User-Datenbank HISTORY_FILE = os.path.join(BASE_DIR, "history.json") # Aktivitätsverlauf -APP_VERSION = "6.2.4" +APP_VERSION = "6.2.5" UPLOAD_EXTENSIONS = {".jpg", ".jpeg", ".png", ".mp4"} app = Flask(__name__) @@ -446,7 +446,8 @@ def load_priority_files(site): "type": "url", "size": "URL", "zoom": url_data.get("zoom", 1.0), - "enabled": is_item_active(item), + "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": item.get("schedule") if isinstance(item, dict) else None }) @@ -469,7 +470,8 @@ def load_priority_files(site): "name": item_name, "type": ftype, "size": size, - "enabled": is_item_active(item), + "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "schedule": item.get("schedule") if isinstance(item, dict) else None }) @@ -1255,7 +1257,8 @@ def player(site, screen): if is_url(item): url_data = normalize_url(item) if url_data: - normal_files.append({"kind": "url", "url": url_data["url"], "zoom": url_data.get("zoom", 1.0), "enabled": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": item.get("schedule") if isinstance(item, dict) else None}) + normal_files.append({"kind": "url", "url": url_data["url"], "zoom": url_data.get("zoom", 1.0), "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": item.get("schedule") if isinstance(item, dict) else None}) continue if item_name and os.path.exists(os.path.join(folder, item_name)) and allowed_file(item_name): @@ -1285,7 +1288,8 @@ def player(site, screen): if is_url(item): url_data = normalize_url(item) if url_data: - prio_files.append({"kind": "url", "url": url_data["url"], "zoom": url_data.get("zoom", 1.0), "enabled": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": item.get("schedule") if isinstance(item, dict) else None}) + prio_files.append({"kind": "url", "url": url_data["url"], "zoom": url_data.get("zoom", 1.0), "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": item.get("schedule") if isinstance(item, dict) else None}) continue file_path = os.path.join(priority_dir(site), item_name) @@ -1298,8 +1302,10 @@ def player(site, screen): "player.html", site=site, screen=screen, - normal_files=[item for item in normal_files if item.get("enabled", True)], - prio_files=[item for item in prio_files if item.get("enabled", True)], + normal_files=[item for item in normal_files + if item.get("enabled", True) and item.get("active", True)], + prio_files=[item for item in prio_files + if item.get("enabled", True) and item.get("active", True)], interval=screen_cfg.get("interval", 10), newsticker_text=screen_cfg.get("newsticker_text", ""), newsticker_enabled=screen_cfg.get("newsticker_enabled", False), @@ -1495,7 +1501,8 @@ def admin(site): "type": "url", "size": "URL", "zoom": url_data.get("zoom", 1.0), - "enabled": is_item_active(item), + "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "passthrough": item.get("passthrough_params", False) if isinstance(item, dict) else False, "schedule": schedule }) @@ -1519,7 +1526,8 @@ def admin(site): "name": item_name, "type": ftype, "size": size, - "enabled": is_item_active(item), + "enabled": item.get("enabled", True) if isinstance(item, dict) else True, + "active": is_item_active(item), "schedule": schedule }) diff --git a/templates/admin.html b/templates/admin.html index 957508a..a8cf14f 100755 --- a/templates/admin.html +++ b/templates/admin.html @@ -251,7 +251,7 @@ title="URL: {{ file.name }}{% if file.zoom %} (Zoom: {{ file.zoom }}x){% endif %}" {% endif %}> {{ file.name }}{% if file.type == "url" and file.zoom != 1.0 %} [{{ file.zoom }}x]{% endif %}{% if file.type == "url" %}{% if file.get('passthrough', False) %} {% else %} {% endif %}{% endif %} - {% if file.schedule %}Zeit{% endif %} + {% if file.schedule %}Zeit{% endif %} diff --git a/templates/priority.html b/templates/priority.html index b1263b8..cfdbca9 100644 --- a/templates/priority.html +++ b/templates/priority.html @@ -153,7 +153,7 @@ title="URL: {{ file.name }}{% if file.zoom %} (Zoom: {{ file.zoom }}x){% endif %}" {% endif %}> {{ file.name }}{% if file.type == "url" and file.zoom != 1.0 %} [{{ file.zoom }}x]{% endif %}{% if file.type == "url" %}{% if file.get('passthrough', False) %} {% else %} {% endif %}{% endif %} - {% if file.schedule %}Zeit{% endif %} + {% if file.schedule %}Zeit{% endif %} {% if file.type == "image" %}