update with the ability to add IMDB to skipped
Local Docker Build (Dev) / build-dev (push) Successful in 35s
Local Docker Build (Dev) / build-dev (push) Successful in 35s
This commit is contained in:
+72
-2
@@ -1524,7 +1524,42 @@ def register_web_routes(app, dependencies):
|
||||
except Exception as e:
|
||||
print(f"❌ Error deleting movie: {e}")
|
||||
raise HTTPException(status_code=500, detail=f"Failed to delete movie: {str(e)}")
|
||||
|
||||
|
||||
@app.post("/api/movies/{old_imdb_id}/migrate-imdb")
|
||||
async def api_migrate_movie_imdb(old_imdb_id: str, request: Request):
|
||||
"""Migrate a movie from placeholder IMDb ID to real IMDb ID"""
|
||||
db = dependencies["db"]
|
||||
|
||||
try:
|
||||
data = await request.json()
|
||||
new_imdb_id = data.get('new_imdb_id')
|
||||
|
||||
if not new_imdb_id:
|
||||
raise HTTPException(status_code=422, detail="new_imdb_id is required")
|
||||
|
||||
# Normalize IMDb ID
|
||||
if not new_imdb_id.startswith('tt'):
|
||||
new_imdb_id = f"tt{new_imdb_id}"
|
||||
|
||||
success = db.migrate_movie_imdb_id(old_imdb_id, new_imdb_id)
|
||||
|
||||
if success:
|
||||
return {
|
||||
"success": True,
|
||||
"status": "success",
|
||||
"message": f"Migrated movie from {old_imdb_id} to {new_imdb_id}",
|
||||
"old_imdb_id": old_imdb_id,
|
||||
"new_imdb_id": new_imdb_id
|
||||
}
|
||||
else:
|
||||
raise HTTPException(status_code=404, detail="Movie not found")
|
||||
|
||||
except HTTPException:
|
||||
raise
|
||||
except Exception as e:
|
||||
print(f"❌ Error migrating movie IMDb ID: {e}")
|
||||
raise HTTPException(status_code=500, detail=f"Failed to migrate IMDb ID: {str(e)}")
|
||||
|
||||
# TV series endpoints
|
||||
@app.get("/api/series")
|
||||
async def api_series_list(skip: int = 0, limit: int = 50, search: str = None,
|
||||
@@ -1542,7 +1577,42 @@ def register_web_routes(app, dependencies):
|
||||
@app.get("/api/series/debug/date-distribution")
|
||||
async def api_debug_series_date_distribution():
|
||||
return await debug_series_date_distribution(dependencies)
|
||||
|
||||
|
||||
@app.post("/api/series/{old_imdb_id}/migrate-imdb")
|
||||
async def api_migrate_series_imdb(old_imdb_id: str, request: Request):
|
||||
"""Migrate a series and all its episodes from placeholder IMDb ID to real IMDb ID"""
|
||||
db = dependencies["db"]
|
||||
|
||||
try:
|
||||
data = await request.json()
|
||||
new_imdb_id = data.get('new_imdb_id')
|
||||
|
||||
if not new_imdb_id:
|
||||
raise HTTPException(status_code=422, detail="new_imdb_id is required")
|
||||
|
||||
# Normalize IMDb ID
|
||||
if not new_imdb_id.startswith('tt'):
|
||||
new_imdb_id = f"tt{new_imdb_id}"
|
||||
|
||||
success = db.migrate_series_imdb_id(old_imdb_id, new_imdb_id)
|
||||
|
||||
if success:
|
||||
return {
|
||||
"success": True,
|
||||
"status": "success",
|
||||
"message": f"Migrated series and episodes from {old_imdb_id} to {new_imdb_id}",
|
||||
"old_imdb_id": old_imdb_id,
|
||||
"new_imdb_id": new_imdb_id
|
||||
}
|
||||
else:
|
||||
raise HTTPException(status_code=404, detail="Series not found")
|
||||
|
||||
except HTTPException:
|
||||
raise
|
||||
except Exception as e:
|
||||
print(f"❌ Error migrating series IMDb ID: {e}")
|
||||
raise HTTPException(status_code=500, detail=f"Failed to migrate IMDb ID: {str(e)}")
|
||||
|
||||
# Episode endpoints
|
||||
@app.post("/api/episodes/{imdb_id}/{season}/{episode}/update-date")
|
||||
async def api_update_episode_date(imdb_id: str, season: int, episode: int,
|
||||
|
||||
Reference in New Issue
Block a user