This commit is contained in:
2025-09-10 08:29:04 -04:00
parent 4e786d775b
commit 6f356b1942
5 changed files with 41 additions and 7 deletions
+19 -2
View File
@@ -538,31 +538,41 @@ class MovieProcessor:
movie_id = radarr_movie.get("id")
if movie_id:
import_date, import_source = self.radarr.get_movie_import_date(movie_id, fallback_to_file_date=config.allow_file_date_fallback)
_log("INFO", f"Movie {imdb_id}: Radarr import result: date={import_date}, source={import_source}")
# Check for special case: rename-first scenario (should prefer release dates)
if import_source == "radarr:db.prefer_release_dates":
_log("INFO", f"Movie {imdb_id} has rename-first history - skipping import, preferring release dates")
_log("INFO", f"🎯 Movie {imdb_id} has rename-first history - skipping import, preferring release dates")
# Fall through to release date logic below
# Check if we got a real import date or just file date fallback
elif import_date and import_source != "radarr:db.file.dateAdded":
_log("INFO", f"✅ Movie {imdb_id}: Using import date {import_date} from {import_source}")
return import_date, import_source, released
# Get digital release date for comparison
# Get digital release date for comparison/fallback
_log("INFO", f"🔍 Movie {imdb_id}: Trying digital release date fallback...")
digital_date, digital_source = self._get_digital_release_date(imdb_id)
_log("INFO", f"Movie {imdb_id}: Digital release result: date={digital_date}, source={digital_source}")
# If we only have file date and release date exists, prefer it if reasonable and enabled
if import_date and import_source == "radarr:db.file.dateAdded" and digital_date and config.prefer_release_dates_over_file_dates:
# Compare dates - prefer release date if it's reasonable
if self._should_prefer_release_over_file_date(digital_date, digital_source, released, imdb_id):
_log("INFO", f"✅ Movie {imdb_id}: Preferring digital release date {digital_date} over file date")
return digital_date, digital_source, released
else:
_log("INFO", f"✅ Movie {imdb_id}: Keeping file date {import_date} - digital date not reasonable")
return import_date, import_source, released
# Use whichever we have
if import_date:
_log("INFO", f"✅ Movie {imdb_id}: Using import date {import_date} from {import_source}")
return import_date, import_source, released
elif digital_date:
_log("INFO", f"✅ Movie {imdb_id}: Using digital release date {digital_date} from {digital_source}")
return digital_date, digital_source, released
else:
_log("WARNING", f"⚠️ Movie {imdb_id}: No import date OR digital release date found - will try other fallbacks")
else: # digital_then_import
# Try digital release first
@@ -771,6 +781,13 @@ try:
except:
version = "0.1.0"
# Check if running in dev environment (set during Docker build)
build_type = os.environ.get('BUILD_TYPE', 'production')
image_tag = os.environ.get('IMAGE_TAG', 'latest')
if (build_type == 'dev' or 'dev' in image_tag.lower()):
version = f"{version}-dev"
app = FastAPI(
title="NFOGuard",
description="Webhook server for preserving media import dates",