This commit is contained in:
+36
-1
@@ -320,4 +320,39 @@ def register_routes(
|
||||
}
|
||||
except Exception as e:
|
||||
_log("ERROR", f"Optimized scan failed: {e}")
|
||||
raise HTTPException(status_code=500, detail=f"Optimized scan failed: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"Optimized scan failed: {str(e)}")
|
||||
|
||||
@app.post("/nfo/strip-lockdata")
|
||||
async def strip_lockdata_from_library(background_tasks: BackgroundTasks):
|
||||
"""Strip lockdata elements from all NFO files for Emby compatibility"""
|
||||
try:
|
||||
_log("INFO", "Lockdata stripping initiated via API")
|
||||
|
||||
def strip_lockdata_task():
|
||||
total_processed = 0
|
||||
|
||||
# Process TV libraries
|
||||
for tv_path in config.tv_paths:
|
||||
if tv_path.exists():
|
||||
_log("INFO", f"Stripping lockdata from TV library: {tv_path}")
|
||||
processed = tv_processor.nfo_manager.strip_lockdata_from_directory(tv_path)
|
||||
total_processed += processed
|
||||
|
||||
# Process Movie libraries
|
||||
for movie_path in config.movie_paths:
|
||||
if movie_path.exists():
|
||||
_log("INFO", f"Stripping lockdata from movie library: {movie_path}")
|
||||
processed = movie_processor.nfo_manager.strip_lockdata_from_directory(movie_path)
|
||||
total_processed += processed
|
||||
|
||||
_log("INFO", f"Lockdata stripping complete: {total_processed} NFO files processed")
|
||||
|
||||
background_tasks.add_task(strip_lockdata_task)
|
||||
return {
|
||||
"status": "started",
|
||||
"message": "Lockdata stripping initiated for Emby compatibility",
|
||||
"note": "This will remove <lockdata>true</lockdata> from all NFO files"
|
||||
}
|
||||
except Exception as e:
|
||||
_log("ERROR", f"Lockdata stripping failed: {e}")
|
||||
raise HTTPException(status_code=500, detail=f"Lockdata stripping failed: {str(e)}")
|
||||
Reference in New Issue
Block a user