mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-14 02:26:55 -07:00
MORE!
This commit is contained in:
parent
4118f0de41
commit
6ee9606f7c
23 changed files with 314 additions and 29 deletions
|
@ -68,6 +68,34 @@ namespace Ombi.Api.TheMovieDb
|
|||
return await Api.Request<TheMovieDbContainer<DiscoverMovies>>(request);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public async Task<List<MovieDbSearchResult>> AdvancedSearch(DiscoverModel model, CancellationToken cancellationToken)
|
||||
{
|
||||
var request = new Request($"discover/{model.Type}", BaseUri, HttpMethod.Get);
|
||||
request.FullUri = request.FullUri.AddQueryParameter("api_key", ApiToken);
|
||||
if(model.ReleaseYear.HasValue && model.ReleaseYear.Value > 1900)
|
||||
{
|
||||
request.FullUri = request.FullUri.AddQueryParameter("year", model.ReleaseYear.Value.ToString());
|
||||
}
|
||||
if (model.KeywordIds.Any())
|
||||
{
|
||||
request.FullUri = request.FullUri.AddQueryParameter("with_keyword", string.Join(',', model.KeywordIds));
|
||||
}
|
||||
if (model.GenreIds.Any())
|
||||
{
|
||||
request.FullUri = request.FullUri.AddQueryParameter("with_genres", string.Join(',', model.GenreIds));
|
||||
}
|
||||
if (model.WatchProviders.Any())
|
||||
{
|
||||
request.FullUri = request.FullUri.AddQueryParameter("with_watch_providers", string.Join(',', model.WatchProviders));
|
||||
}
|
||||
request.FullUri = request.FullUri.AddQueryParameter("sort_by", "popularity.desc");
|
||||
|
||||
var result = await Api.Request<TheMovieDbContainer<SearchResult>>(request, cancellationToken);
|
||||
return Mapper.Map<List<MovieDbSearchResult>>(result.results);
|
||||
}
|
||||
|
||||
public async Task<Collections> GetCollection(string langCode, int collectionId, CancellationToken cancellationToken)
|
||||
{
|
||||
// https://developers.themoviedb.org/3/discover/movie-discover
|
||||
|
@ -368,6 +396,17 @@ namespace Ombi.Api.TheMovieDb
|
|||
return result.results ?? new List<TheMovidDbKeyValue>();
|
||||
}
|
||||
|
||||
public async Task<List<WatchProvidersResults>> SearchWatchProviders(string media, string searchTerm, CancellationToken cancellationToken)
|
||||
{
|
||||
var request = new Request($"/watch/providers/{media}", BaseUri, HttpMethod.Get);
|
||||
request.AddQueryString("api_key", ApiToken);
|
||||
request.AddQueryString("query", searchTerm);
|
||||
AddRetry(request);
|
||||
|
||||
var result = await Api.Request<TheMovieDbContainer<WatchProvidersResults>>(request, cancellationToken);
|
||||
return result.results ?? new List<WatchProvidersResults>();
|
||||
}
|
||||
|
||||
public async Task<TheMovidDbKeyValue> GetKeyword(int keywordId)
|
||||
{
|
||||
var request = new Request($"keyword/{keywordId}", BaseUri, HttpMethod.Get);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue