diff options
| author | Luke <luke.pulverenti@gmail.com> | 2016-03-24 11:59:51 -0400 |
|---|---|---|
| committer | Luke <luke.pulverenti@gmail.com> | 2016-03-24 11:59:51 -0400 |
| commit | 6bdfb4c9db91f74377ad5ce33e60094d33d35121 (patch) | |
| tree | 68228afd45da4fd19baadea70b029a996761831f | |
| parent | 5d0abc280dc84598574515ba203388c0e22d3acf (diff) | |
| parent | c0cf5ea0c9993b453b75cc45a60a76454c33334b (diff) | |
Merge pull request #1580 from softworkz/TvDbProviderFix
MovieDbEpisodeProvider: Implement GetSearchResults to allow usage from auto-organize
| -rw-r--r-- | MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs index 6a98fcf61..42254f360 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs @@ -28,9 +28,36 @@ namespace MediaBrowser.Providers.TV : base(httpClient, configurationManager, jsonSerializer, fileSystem, localization, logManager) { } - public Task<IEnumerable<RemoteSearchResult>> GetSearchResults(EpisodeInfo searchInfo, CancellationToken cancellationToken) + public async Task<IEnumerable<RemoteSearchResult>> GetSearchResults(EpisodeInfo searchInfo, CancellationToken cancellationToken) { - return Task.FromResult<IEnumerable<RemoteSearchResult>>(new List<RemoteSearchResult>()); + var list = new List<RemoteSearchResult>(); + + // The search query must either provide an episode number or date + if (!searchInfo.IndexNumber.HasValue || !searchInfo.ParentIndexNumber.HasValue) + { + return list; + } + + var metadataResult = await GetMetadata(searchInfo, cancellationToken); + + if (metadataResult.HasMetadata) + { + var item = metadataResult.Item; + + list.Add(new RemoteSearchResult + { + IndexNumber = item.IndexNumber, + Name = item.Name, + ParentIndexNumber = item.ParentIndexNumber, + PremiereDate = item.PremiereDate, + ProductionYear = item.ProductionYear, + ProviderIds = item.ProviderIds, + SearchProviderName = Name, + IndexNumberEnd = item.IndexNumberEnd + }); + } + + return list; } public async Task<MetadataResult<Episode>> GetMetadata(EpisodeInfo info, CancellationToken cancellationToken) |
