mirror of
https://github.com/Radarr/Radarr.git
synced 2026-04-23 22:25:14 -04:00
Fixed: Updating movie files via Manage Files
This commit is contained in:
@@ -183,6 +183,55 @@ namespace Radarr.Api.V3.MovieFiles
|
||||
return new { };
|
||||
}
|
||||
|
||||
[HttpPut("bulk")]
|
||||
[Consumes("application/json")]
|
||||
public object SetPropertiesBulk([FromBody] List<MovieFileResource> resources)
|
||||
{
|
||||
var movieFiles = _mediaFileService.GetMovies(resources.Select(r => r.Id));
|
||||
|
||||
foreach (var movieFile in movieFiles)
|
||||
{
|
||||
var resourceMovieFile = resources.Single(r => r.Id == movieFile.Id);
|
||||
|
||||
if (resourceMovieFile.Languages != null)
|
||||
{
|
||||
// Don't allow user to set files with 'Any' or 'Original' language
|
||||
movieFile.Languages = resourceMovieFile.Languages.Where(l => l != null && l != Language.Any && l != Language.Original).ToList();
|
||||
}
|
||||
|
||||
if (resourceMovieFile.Quality != null)
|
||||
{
|
||||
movieFile.Quality = resourceMovieFile.Quality;
|
||||
}
|
||||
|
||||
if (resourceMovieFile.SceneName != null && SceneChecker.IsSceneTitle(resourceMovieFile.SceneName))
|
||||
{
|
||||
movieFile.SceneName = resourceMovieFile.SceneName;
|
||||
}
|
||||
|
||||
if (resourceMovieFile.Edition != null)
|
||||
{
|
||||
movieFile.Edition = resourceMovieFile.Edition;
|
||||
}
|
||||
|
||||
if (resourceMovieFile.ReleaseGroup != null)
|
||||
{
|
||||
movieFile.ReleaseGroup = resourceMovieFile.ReleaseGroup;
|
||||
}
|
||||
|
||||
if (resourceMovieFile.IndexerFlags.HasValue)
|
||||
{
|
||||
movieFile.IndexerFlags = (IndexerFlags)resourceMovieFile.IndexerFlags;
|
||||
}
|
||||
}
|
||||
|
||||
_mediaFileService.Update(movieFiles);
|
||||
|
||||
var movie = _movieService.GetMovie(movieFiles.First().MovieId);
|
||||
|
||||
return Accepted(movieFiles.ConvertAll(f => f.ToResource(movie, _upgradableSpecification, _formatCalculator)));
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public void Handle(MovieFileAddedEvent message)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user