From 0b27fc1c6540376d27200f4d3fc8870b27310e6a Mon Sep 17 00:00:00 2001 From: SBCrumb Date: Sun, 26 Oct 2025 12:40:20 -0400 Subject: [PATCH] web: debug --- api/routes.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/api/routes.py b/api/routes.py index 856a54e..3857ba3 100644 --- a/api/routes.py +++ b/api/routes.py @@ -2283,14 +2283,14 @@ def register_routes(app, dependencies: dict): async def nfo_repair_scan(dependencies: dict): """Scan filesystem for episodes/movies missing dateadded elements in NFO files""" - from nfoguard.utils.db_utils import get_db_connection import os import xml.etree.ElementTree as ET logger = dependencies.get("logger") config = dependencies.get("config") + db = dependencies.get("db") - if not logger or not config: + if not logger or not config or not db: raise HTTPException(status_code=500, detail="Dependencies not available") logger.info("🔧 Starting NFO repair scan from core container") @@ -2301,11 +2301,6 @@ async def nfo_repair_scan(dependencies: dict): } try: - # Get database connection - db_conn = get_db_connection(config) - if not db_conn: - raise HTTPException(status_code=500, detail="Database connection failed") - # Scan episodes logger.info("📺 Scanning episodes for missing dateadded elements") episode_query = """ @@ -2315,7 +2310,11 @@ async def nfo_repair_scan(dependencies: dict): ORDER BY imdb_id, season, episode """ - episodes = db_conn.fetch_all(episode_query) + with db.get_connection() as conn: + cursor = conn.cursor() + cursor.execute(episode_query) + episodes = [dict(row) for row in cursor.fetchall()] + logger.info(f"📊 Found {len(episodes)} episodes in database") for episode in episodes: @@ -2366,7 +2365,11 @@ async def nfo_repair_scan(dependencies: dict): ORDER BY title """ - movies = db_conn.fetch_all(movie_query) + with db.get_connection() as conn: + cursor = conn.cursor() + cursor.execute(movie_query) + movies = [dict(row) for row in cursor.fetchall()] + logger.info(f"📊 Found {len(movies)} movies in database") for movie in movies: @@ -2401,8 +2404,6 @@ async def nfo_repair_scan(dependencies: dict): "error": f"Parse error: {str(e)}" }) - db_conn.close() - total_missing = len(missing_items["episodes"]) + len(missing_items["movies"]) logger.info(f"✅ NFO repair scan complete: {total_missing} items missing dateadded elements")