mirror of
https://github.com/lidarr/Lidarr
synced 2025-02-23 14:30:49 +00:00
New: Setting SceneName and ReleaseGroup for TrackFiles via API
Closes #2248 Co-Authored-By: Michael Higgins <mdhiggins23@gmail.com>
This commit is contained in:
parent
9cce93b25d
commit
032089b1f9
3 changed files with 30 additions and 0 deletions
|
@ -11,6 +11,7 @@
|
||||||
using NzbDrone.Core.MediaFiles.Events;
|
using NzbDrone.Core.MediaFiles.Events;
|
||||||
using NzbDrone.Core.Messaging.Events;
|
using NzbDrone.Core.Messaging.Events;
|
||||||
using NzbDrone.Core.Music;
|
using NzbDrone.Core.Music;
|
||||||
|
using NzbDrone.Core.Parser;
|
||||||
using NzbDrone.SignalR;
|
using NzbDrone.SignalR;
|
||||||
using BadRequestException = Lidarr.Http.REST.BadRequestException;
|
using BadRequestException = Lidarr.Http.REST.BadRequestException;
|
||||||
using HttpStatusCode = System.Net.HttpStatusCode;
|
using HttpStatusCode = System.Net.HttpStatusCode;
|
||||||
|
@ -111,6 +112,17 @@ public ActionResult<TrackFileResource> SetQuality([FromBody] TrackFileResource t
|
||||||
{
|
{
|
||||||
var trackFile = _mediaFileService.Get(trackFileResource.Id);
|
var trackFile = _mediaFileService.Get(trackFileResource.Id);
|
||||||
trackFile.Quality = trackFileResource.Quality;
|
trackFile.Quality = trackFileResource.Quality;
|
||||||
|
|
||||||
|
if (trackFileResource.SceneName != null && SceneChecker.IsSceneTitle(trackFileResource.SceneName))
|
||||||
|
{
|
||||||
|
trackFile.SceneName = trackFileResource.SceneName;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (trackFileResource.ReleaseGroup != null)
|
||||||
|
{
|
||||||
|
trackFile.ReleaseGroup = trackFileResource.ReleaseGroup;
|
||||||
|
}
|
||||||
|
|
||||||
_mediaFileService.Update(trackFile);
|
_mediaFileService.Update(trackFile);
|
||||||
return Accepted(trackFile.Id);
|
return Accepted(trackFile.Id);
|
||||||
}
|
}
|
||||||
|
@ -126,6 +138,16 @@ public IActionResult SetQuality([FromBody] TrackFileListResource resource)
|
||||||
{
|
{
|
||||||
trackFile.Quality = resource.Quality;
|
trackFile.Quality = resource.Quality;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (resource.SceneName != null && SceneChecker.IsSceneTitle(resource.SceneName))
|
||||||
|
{
|
||||||
|
trackFile.SceneName = resource.SceneName;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resource.ReleaseGroup != null)
|
||||||
|
{
|
||||||
|
trackFile.ReleaseGroup = resource.ReleaseGroup;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_mediaFileService.Update(trackFiles);
|
_mediaFileService.Update(trackFiles);
|
||||||
|
|
|
@ -7,5 +7,7 @@ public class TrackFileListResource
|
||||||
{
|
{
|
||||||
public List<int> TrackFileIds { get; set; }
|
public List<int> TrackFileIds { get; set; }
|
||||||
public QualityModel Quality { get; set; }
|
public QualityModel Quality { get; set; }
|
||||||
|
public string SceneName { get; set; }
|
||||||
|
public string ReleaseGroup { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,8 @@ public class TrackFileResource : RestResource
|
||||||
public string Path { get; set; }
|
public string Path { get; set; }
|
||||||
public long Size { get; set; }
|
public long Size { get; set; }
|
||||||
public DateTime DateAdded { get; set; }
|
public DateTime DateAdded { get; set; }
|
||||||
|
public string SceneName { get; set; }
|
||||||
|
public string ReleaseGroup { get; set; }
|
||||||
public QualityModel Quality { get; set; }
|
public QualityModel Quality { get; set; }
|
||||||
public int QualityWeight { get; set; }
|
public int QualityWeight { get; set; }
|
||||||
public MediaInfoResource MediaInfo { get; set; }
|
public MediaInfoResource MediaInfo { get; set; }
|
||||||
|
@ -52,6 +54,8 @@ public static TrackFileResource ToResource(this TrackFile model)
|
||||||
Path = model.Path,
|
Path = model.Path,
|
||||||
Size = model.Size,
|
Size = model.Size,
|
||||||
DateAdded = model.DateAdded,
|
DateAdded = model.DateAdded,
|
||||||
|
SceneName = model.SceneName,
|
||||||
|
ReleaseGroup = model.ReleaseGroup,
|
||||||
Quality = model.Quality,
|
Quality = model.Quality,
|
||||||
QualityWeight = QualityWeight(model.Quality),
|
QualityWeight = QualityWeight(model.Quality),
|
||||||
MediaInfo = model.MediaInfo.ToResource()
|
MediaInfo = model.MediaInfo.ToResource()
|
||||||
|
@ -74,6 +78,8 @@ public static TrackFileResource ToResource(this TrackFile model, NzbDrone.Core.M
|
||||||
Path = model.Path,
|
Path = model.Path,
|
||||||
Size = model.Size,
|
Size = model.Size,
|
||||||
DateAdded = model.DateAdded,
|
DateAdded = model.DateAdded,
|
||||||
|
SceneName = model.SceneName,
|
||||||
|
ReleaseGroup = model.ReleaseGroup,
|
||||||
Quality = model.Quality,
|
Quality = model.Quality,
|
||||||
QualityWeight = QualityWeight(model.Quality),
|
QualityWeight = QualityWeight(model.Quality),
|
||||||
MediaInfo = model.MediaInfo.ToResource(),
|
MediaInfo = model.MediaInfo.ToResource(),
|
||||||
|
|
Loading…
Reference in a new issue