From 02150e0e62afdead2e50ac62f80695b223842068 Mon Sep 17 00:00:00 2001 From: oberon Date: Mon, 16 Feb 2026 16:28:12 +0100 Subject: [PATCH] fixxed load_configs in helpers.py --- app/utils/helpers.py | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/app/utils/helpers.py b/app/utils/helpers.py index b70ed0d..ea46d1e 100644 --- a/app/utils/helpers.py +++ b/app/utils/helpers.py @@ -11,24 +11,29 @@ def load_configs(config_dir='configs'): außer default_sounds.json (die wird separat geladen). """ configs = [] - data = json.load(f) if not os.path.exists(config_dir): logger.warning(f"Config-Verzeichnis nicht gefunden: {config_dir}") return configs for filename in os.listdir(config_dir): - if filename.lower().endswith('.json') and filename != 'default_sounds.json': - path = os.path.join(config_dir, filename) - try: - with open(path, 'r', encoding='utf-8') as f: - data = json.load(f) - data['filename'] = filename - data.setdefault('name', filename.replace('.json', '').replace('_', ' ').title()) - configs.append(data) - except json.JSONDecodeError as e: - logger.error(f"Ungültiges JSON in {filename}: {e}") - except Exception as e: - logger.error(f"Fehler beim Laden von {filename}: {e}") + if not filename.lower().endswith('.json'): + continue + if filename == 'default_sounds.json': + continue # globale Sounds separat laden + + path = os.path.join(config_dir, filename) + try: + with open(path, 'r', encoding='utf-8') as f: + data = json.load(f) + data['filename'] = filename + data.setdefault('name', filename.replace('.json', '').replace('_', ' ').title()) + configs.append(data) + except json.JSONDecodeError as e: + logger.error(f"Ungültiges JSON in {filename}: {e}") + except FileNotFoundError: + logger.error(f"Datei nicht gefunden (trotz listdir): {path}") + except Exception as e: + logger.error(f"Fehler beim Laden von {filename}: {e}") return sorted(configs, key=lambda x: x.get('name', ''))