fix: disambiguate tmdb ids by media type across lookups (#2577)

This commit is contained in:
fallenbagel
2026-03-14 23:47:21 +05:00
committed by GitHub
parent d25d0ca570
commit 0be18968b4
22 changed files with 479 additions and 70 deletions

View File

@@ -7,6 +7,7 @@ import logger from '@server/logger';
import { Router } from 'express';
import { QueryFailedError } from 'typeorm';
import { MediaType } from '@server/constants/media';
import { watchlistCreate } from '@server/interfaces/api/watchlistCreate';
const watchlistRoutes = Router();
@@ -57,12 +58,24 @@ watchlistRoutes.delete('/:tmdbId', async (req, res, next) => {
});
}
try {
await Watchlist.deleteWatchlist(Number(req.params.tmdbId), req.user);
const mediaType = req.query.mediaType;
if (mediaType !== MediaType.MOVIE && mediaType !== MediaType.TV) {
return next({
status: 400,
message: 'Invalid mediaType query parameter.',
});
}
await Watchlist.deleteWatchlist(
Number(req.params.tmdbId),
mediaType,
req.user
);
return res.status(204).send();
} catch (e) {
if (e instanceof NotFoundError) {
return next({
status: 401,
status: 404,
message: e.message,
});
}