mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-06-22 15:00:35 -04:00
Fixing tracks edits, still need to fix slugs
This commit is contained in:
parent
cfc3e4b865
commit
d0715055f1
@ -94,6 +94,7 @@ namespace Kyoo.Models
|
|||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
|
// TODO other type of tracks should still have slugs. The slug should never be an ID. Maybe a und-number format.
|
||||||
if (Type != StreamType.Subtitle)
|
if (Type != StreamType.Subtitle)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
|
@ -172,17 +172,13 @@ namespace Kyoo.Controllers
|
|||||||
if (changed.Tracks != null || resetOld)
|
if (changed.Tracks != null || resetOld)
|
||||||
{
|
{
|
||||||
ICollection<Track> oldTracks = await _tracks.GetAll(x => x.EpisodeID == resource.ID);
|
ICollection<Track> oldTracks = await _tracks.GetAll(x => x.EpisodeID == resource.ID);
|
||||||
resource.Tracks = await changed.Tracks.SelectAsync(async track =>
|
await _tracks.DeleteRange(oldTracks);
|
||||||
{
|
resource.Tracks = await changed.Tracks.SelectAsync(x =>
|
||||||
Track oldValue = oldTracks?.FirstOrDefault(x => Utility.ResourceEquals(track, x));
|
{
|
||||||
if (oldValue == null)
|
x.Episode = resource;
|
||||||
return await _tracks.CreateIfNotExists(track, true);
|
x.EpisodeID = resource.ID;
|
||||||
oldTracks.Remove(oldValue);
|
return _tracks.Create(x);
|
||||||
return oldValue;
|
}).ToListAsync();
|
||||||
})
|
|
||||||
.ToListAsync();
|
|
||||||
foreach (Track x in oldTracks)
|
|
||||||
await _tracks.Delete(x);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (changed.ExternalIDs != null || resetOld)
|
if (changed.ExternalIDs != null || resetOld)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user