public static string GetValidImdbId(this IImdbItem item) { return(item?.ImdbId != null && (item.ImdbId.StartsWith("tt") || item.ImdbId.StartsWith("nm")) ? item.ImdbId : null); }
public VideoRoleViewModel(VideoRole source, VideoRoleCollectionViewModel parent, IImdbItem imdbItem, bool isMajor) : base(source) { this.parent = parent; this.ImdbItem = imdbItem; this.IsMajor = isMajor; this.CoverViewModel.AutoGenerateCoverProvider = new AutoGenerateCoverProvider() { ImdbItem = imdbItem, TheTVDBItem = this.ImdbItem as ITheTVDBItem }; }
private async Task <bool> AutoGenerateCoverAsync(TheTVDBClient client, IImdbItem item) { var imdbId = item.GetValidImdbId(); if (imdbId == null) { return(false); } foreach (var series in await client.GetSeriesByImdbIdAsync(imdbId)) { if (await this.AutoGenerateCoverOverTheTVDBIdAsync(client, series.SeriesId, this.source.InfoView.Source.Index.ToString())) { return(true); } } return(false); }
private async Task<bool> AutoGenerateCoverAsync(TheTVDBClient client, IImdbItem item) { var imdbId = item.GetValidImdbId(); if (imdbId == null) return false; foreach (var series in await client.GetSeriesByImdbIdAsync(imdbId)) { if (await this.AutoGenerateCoverOverTheTVDBIdAsync(client, series.SeriesId, this.source.InfoView.Source.Index.ToString())) return true; } return false; }