From 1fc6e88bc4652b6d225aecdd3338578c5ba537dd Mon Sep 17 00:00:00 2001 From: Bogdan Date: Sun, 12 May 2024 22:20:13 +0300 Subject: [PATCH] New: Add `isExisting` flag for movies in collections API --- src/Radarr.Api.V3/Collections/CollectionController.cs | 11 +++++++++-- .../Collections/CollectionMovieResource.cs | 1 + 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Radarr.Api.V3/Collections/CollectionController.cs b/src/Radarr.Api.V3/Collections/CollectionController.cs index 871a26412..98f71d1da 100644 --- a/src/Radarr.Api.V3/Collections/CollectionController.cs +++ b/src/Radarr.Api.V3/Collections/CollectionController.cs @@ -66,6 +66,7 @@ protected override CollectionResource GetResourceById(int id) } [HttpGet] + [Produces("application/json")] public List GetCollections(int? tmdbId) { var collectionResources = new List(); @@ -181,10 +182,13 @@ private IEnumerable MapToResource(List coll var movieResource = movie.ToResource(translation); movieResource.Folder = _fileNameBuilder.GetMovieFolder(new Movie { MovieMetadata = movie }, namingConfig); + var isExisting = existingMoviesTmdbIds.Contains(movie.TmdbId); + movieResource.IsExisting = isExisting; + var isExcluded = listExclusions.Any(e => e.TmdbId == movie.TmdbId); movieResource.IsExcluded = isExcluded; - if (!existingMoviesTmdbIds.Contains(movie.TmdbId) && !isExcluded) + if (!isExisting && !isExcluded) { resource.MissingMovies++; } @@ -215,10 +219,13 @@ private CollectionResource MapToResource(MovieCollection collection) var movieResource = movie.ToResource(translation); movieResource.Folder = _fileNameBuilder.GetMovieFolder(new Movie { MovieMetadata = movie }, namingConfig); + var isExisting = existingMoviesTmdbIds.Contains(movie.TmdbId); + movieResource.IsExisting = isExisting; + var isExcluded = listExclusions.Any(e => e.TmdbId == movie.TmdbId); movieResource.IsExcluded = isExcluded; - if (!existingMoviesTmdbIds.Contains(movie.TmdbId) && !isExcluded) + if (!isExisting && !isExcluded) { resource.MissingMovies++; } diff --git a/src/Radarr.Api.V3/Collections/CollectionMovieResource.cs b/src/Radarr.Api.V3/Collections/CollectionMovieResource.cs index 4dbf27b16..ac778437e 100644 --- a/src/Radarr.Api.V3/Collections/CollectionMovieResource.cs +++ b/src/Radarr.Api.V3/Collections/CollectionMovieResource.cs @@ -20,6 +20,7 @@ public class CollectionMovieResource public Ratings Ratings { get; set; } public List Genres { get; set; } public string Folder { get; set; } + public bool IsExisting { get; set; } public bool IsExcluded { get; set; } }