feat(sync): Emby+Jellyfin - sync multi-episode files of 3+ episodes

This commit is contained in:
sephrat 2022-05-04 11:20:57 +02:00
commit 0ab93a7ba3
2 changed files with 37 additions and 22 deletions

View file

@ -170,18 +170,26 @@ namespace Ombi.Schedule.Jobs.Emby
if (ep.IndexNumberEnd.HasValue && ep.IndexNumberEnd.Value != ep.IndexNumber) if (ep.IndexNumberEnd.HasValue && ep.IndexNumberEnd.Value != ep.IndexNumber)
{ {
epToAdd.Add(new EmbyEpisode int episodeNumber = ep.IndexNumber;
do
{ {
EmbyId = ep.Id, _logger.LogDebug($"Multiple-episode file detected. Adding episode ${episodeNumber}");
EpisodeNumber = ep.IndexNumberEnd.Value, episodeNumber++;
SeasonNumber = ep.ParentIndexNumber, epToAdd.Add(new EmbyEpisode
ParentId = ep.SeriesId, {
TvDbId = ep.ProviderIds.Tvdb, EmbyId = ep.Id,
TheMovieDbId = ep.ProviderIds.Tmdb, EpisodeNumber = episodeNumber,
ImdbId = ep.ProviderIds.Imdb, SeasonNumber = ep.ParentIndexNumber,
Title = ep.Name, ParentId = ep.SeriesId,
AddedAt = DateTime.UtcNow TvDbId = ep.ProviderIds.Tvdb,
}); TheMovieDbId = ep.ProviderIds.Tmdb,
ImdbId = ep.ProviderIds.Imdb,
Title = ep.Name,
AddedAt = DateTime.UtcNow
});
} while (episodeNumber < ep.IndexNumberEnd.Value);
} }
} }
} }

View file

@ -146,18 +146,25 @@ namespace Ombi.Schedule.Jobs.Jellyfin
if (ep.IndexNumberEnd.HasValue && ep.IndexNumberEnd.Value != ep.IndexNumber) if (ep.IndexNumberEnd.HasValue && ep.IndexNumberEnd.Value != ep.IndexNumber)
{ {
epToAdd.Add(new JellyfinEpisode int episodeNumber = ep.IndexNumber;
do
{ {
JellyfinId = ep.Id, _logger.LogDebug($"Multiple-episode file detected. Adding episode ${episodeNumber}");
EpisodeNumber = ep.IndexNumberEnd.Value, episodeNumber++;
SeasonNumber = ep.ParentIndexNumber, epToAdd.Add(new JellyfinEpisode
ParentId = ep.SeriesId, {
TvDbId = ep.ProviderIds.Tvdb, JellyfinId = ep.Id,
TheMovieDbId = ep.ProviderIds.Tmdb, EpisodeNumber = episodeNumber,
ImdbId = ep.ProviderIds.Imdb, SeasonNumber = ep.ParentIndexNumber,
Title = ep.Name, ParentId = ep.SeriesId,
AddedAt = DateTime.UtcNow TvDbId = ep.ProviderIds.Tvdb,
}); TheMovieDbId = ep.ProviderIds.Tmdb,
ImdbId = ep.ProviderIds.Imdb,
Title = ep.Name,
AddedAt = DateTime.UtcNow
});
} while (episodeNumber < ep.IndexNumberEnd.Value);
} }
} }
} }