diff --git a/VERSION b/VERSION index 46c5dc5..6c7a25b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.8.7-imdb-path-extraction +2.8.8-movie-id-tuple-fix diff --git a/core/database_populator.py b/core/database_populator.py index 11304b5..c04e121 100644 --- a/core/database_populator.py +++ b/core/database_populator.py @@ -94,25 +94,36 @@ class DatabasePopulator: # Get release date released = None - if movie.get('digitalRelease'): - released = movie.get('digitalRelease') + if movie.get('digital_release'): + released = movie.get('digital_release') source_type = 'radarr:digital' - elif movie.get('physicalRelease'): - released = movie.get('physicalRelease') + elif movie.get('physical_release'): + released = movie.get('physical_release') source_type = 'radarr:physical' - elif movie.get('inCinemas'): - released = movie.get('inCinemas') + elif movie.get('in_cinemas'): + released = movie.get('in_cinemas') source_type = 'radarr:theatrical' else: source_type = 'radarr:unknown' - # Get import date from Radarr history - import_date = self.radarr.get_movie_import_date(imdb_id) - if import_date: - dateadded = import_date - source = 'radarr:import_history' + # Get import date from Radarr history using Radarr's internal movie ID + radarr_movie_id = movie.get('id') + if radarr_movie_id: + # get_movie_import_date returns tuple (date, source) + import_date, import_source = self.radarr.get_movie_import_date(radarr_movie_id) + if import_date: + dateadded = import_date + source = import_source + elif released: + # Use release date as fallback + dateadded = released + source = f'{source_type}_fallback' + else: + _log("DEBUG", f"No date available for movie {imdb_id}, skipping") + stats['skipped'] += 1 + continue elif released: - # Use release date as fallback + # No Radarr ID, use release date dateadded = released source = f'{source_type}_fallback' else: diff --git a/nfoguard-web/main_web.py b/nfoguard-web/main_web.py index 451e0d2..a8f1069 100644 --- a/nfoguard-web/main_web.py +++ b/nfoguard-web/main_web.py @@ -33,7 +33,7 @@ def create_web_app() -> FastAPI: app = FastAPI( title="NFOGuard Web Interface", description="Web interface for NFOGuard media database management", - version="2.8.7-imdb-path-extraction", + version="2.8.8-movie-id-tuple-fix", docs_url="/docs" if web_config.web_debug else None, redoc_url="/redoc" if web_config.web_debug else None ) diff --git a/start_web.py b/start_web.py index 4bcac15..4479e98 100644 --- a/start_web.py +++ b/start_web.py @@ -29,7 +29,7 @@ def create_web_app() -> FastAPI: app = FastAPI( title="NFOGuard Web Interface", description="Web interface for NFOGuard media database management", - version="2.8.7-imdb-path-extraction", + version="2.8.8-movie-id-tuple-fix", docs_url=None, # Disable docs in production redoc_url=None ) @@ -94,7 +94,7 @@ def setup_static_files(app: FastAPI) -> None: "status": "healthy", "service": "nfoguard-web", "timestamp": time.time(), - "version": "2.8.7-imdb-path-extraction" + "version": "2.8.8-movie-id-tuple-fix" } except Exception as e: from fastapi import HTTPException