fix: Add title enhancement for existing NFO files
- Modify extract_nfoguard_dates_from_episode_nfo() to detect missing titles - Add enhance_existing_episode_nfo_with_title() method to update NFOs with titles - Enhance Tier 1 processing to check for missing titles in existing NFO files - Extract titles from filenames and update existing NFOs that lack title elements - Fix NFO filename case to match S01E01.nfo format - Preserves all existing NFO content while adding missing title elements Addresses issue where existing NFO files with NFOGuard metadata were skipping title extraction due to Tier 1 optimization caching.
This commit is contained in:
+15
@@ -623,6 +623,21 @@ class TVProcessor:
|
||||
source = nfo_data["source"]
|
||||
aired = nfo_data.get("aired")
|
||||
|
||||
# Check if NFO is missing title and try to enhance it
|
||||
if not nfo_data.get("has_title", False):
|
||||
_log("INFO", f"NFO S{season_num:02d}E{episode_num:02d} missing title, attempting to extract from filename")
|
||||
filename_title = self._extract_title_from_filename(season_path, season_num, episode_num)
|
||||
if filename_title:
|
||||
enhanced = self.nfo_manager.enhance_existing_episode_nfo_with_title(
|
||||
season_path, season_num, episode_num, filename_title
|
||||
)
|
||||
if enhanced:
|
||||
_log("INFO", f"✅ Enhanced NFO S{season_num:02d}E{episode_num:02d} with title: '{filename_title}'")
|
||||
else:
|
||||
_log("WARNING", f"Failed to enhance NFO S{season_num:02d}E{episode_num:02d} with title")
|
||||
else:
|
||||
_log("WARNING", f"Could not extract title from filename for S{season_num:02d}E{episode_num:02d}")
|
||||
|
||||
# Update file mtime if enabled (NFO is already correct)
|
||||
if config.fix_dir_mtimes and dateadded:
|
||||
self.nfo_manager.set_file_mtime(episode_file, dateadded)
|
||||
|
||||
Reference in New Issue
Block a user