using System.Collections.Generic; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; namespace MediaBrowser.Providers.Movies; /// /// External URLs for IMDb. /// public class ImdbExternalUrlProvider : IExternalUrlProvider { /// public string Name => "IMDb"; /// public IEnumerable GetExternalUrls(BaseItem item) { var baseUrl = "https://www.imdb.com/"; if (item is Season season) { if (season.Series?.TryGetProviderId(MetadataProvider.Imdb, out var seriesImdbId) == true && season.IndexNumber.HasValue) { yield return baseUrl + $"title/{seriesImdbId}/episodes/?season={season.IndexNumber.Value}"; } yield break; } if (item.TryGetProviderId(MetadataProvider.Imdb, out var externalId)) { if (item is Person) { yield return baseUrl + $"name/{externalId}"; } else { yield return baseUrl + $"title/{externalId}"; } } } }