feat: use real metadata for fallback episodes

This commit is contained in:
2026-05-02 17:21:56 +02:00
committed by Mikkel Elvers
parent dd301384c5
commit 70dbc1ba85
3 changed files with 103 additions and 16 deletions

View File

@@ -143,9 +143,9 @@ func (s *Service) BuildWatchPageData(ctx context.Context, malID int, titleCandid
fallbackEpisodes := make(map[string]int)
if counts, err := s.allAnimeClient.GetAvailableEpisodes(ctx, showID); err == nil {
fallbackEpisodes["sub"] = counts.Sub
fallbackEpisodes["dub"] = counts.Dub
fallbackEpisodes["raw"] = counts.Raw
fallbackEpisodes["sub"] = len(counts.Sub)
fallbackEpisodes["dub"] = len(counts.Dub)
fallbackEpisodes["raw"] = len(counts.Raw)
}
watchTitle := strings.TrimSpace(resolvedTitle)
@@ -360,6 +360,14 @@ func clonePlaybackBaseData(data playbackBaseData) playbackBaseData {
}
}
func (s *Service) GetEpisodeMetadata(ctx context.Context, malID int, episode string) (map[string]any, error) {
showID, _, err := s.resolveShowCached(ctx, malID, nil)
if err != nil {
return nil, err
}
return s.allAnimeClient.GetEpisodeMetadata(ctx, showID, episode)
}
func cloneSlice[T any](items []T) []T {
if items == nil {
return []T{}