public TmdbMovie[] GetRatedMovies(TmdbRatedSortType sortBy = TmdbRatedSortType.Default) { var sessionId = Id; string sb = null; switch (sortBy) { case TmdbRatedSortType.DateCreated | TmdbRatedSortType.Ascending: sb = "created_at.asc"; break; default: // we want to cache the default return(RatedMovies); } var args = new JsonObject(); args.Add("sort_by", sb); var l = Tmdb.CollapsePagedJson(Tmdb.InvokePagedLang(string.Concat("/guest_session/", Id, "/rated/movies"), 0, 0, args)); if (null != l) { return(JsonArray.ToArray(l, (d) => new TmdbMovie((IDictionary <string, object>)d))); } return(null); }
public TmdbMovieList[] GetLists(int minPage = 0, int maxPage = 999) { var l = Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang(string.Concat("/", string.Join("/", PathIdentity), "/lists"), minPage, maxPage)); return(JsonArray.ToArray(l, (d) => new TmdbMovieList((IDictionary <string, object>)d))); }
public static TmdbMovie[] SearchMovies(string query, int minPage, int maxPage, int year = 0, int primaryReleaseYear = 0, string region = null, bool includeAdult = false) { var args = new JsonObject(); args.Add("query", query); if (!string.IsNullOrEmpty(region)) { args.Add("region", region); } if (includeAdult) { args.Add("include_adult", includeAdult); } if (0 < year) { args.Add("year", year); } if (0 < primaryReleaseYear) { args.Add("primary_release_year", primaryReleaseYear); } return(JsonArray.ToArray( Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/search/movie", minPage, maxPage, args)), (d) => new TmdbMovie((IDictionary <string, object>)d))); }
static TmdbShow[] _GetShows(string method, int minPage, int maxPage) { var args = new JsonObject(); var l = Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang(string.Concat("/tv/", method), minPage, maxPage, args)); return(JsonArray.ToArray(l, (d) => new TmdbShow((IDictionary <string, object>)d))); }
public static TmdbKeyword[] SearchKeywords(string query, int minPage, int maxPage) { var args = new JsonObject(); args.Add("query", query); return(JsonArray.ToArray( Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/search/keyword", minPage, maxPage, args)), (d) => new TmdbKeyword((IDictionary <string, object>)d))); }
public static TmdbMovie[] DiscoverMovies(TmdbDiscoverMoviesInfo query, int minPage, int maxPage) { if (null == query) { query = new TmdbDiscoverMoviesInfo(); } return(JsonArray.ToArray( Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/discover/movie", minPage, maxPage, query.ToArguments())), (d) => new TmdbMovie((IDictionary <string, object>)d))); }
static TmdbMovie[] _GetMovies(string method, string region, int minPage, int maxPage) { var args = new JsonObject(); if (null != region) { args.Add("region", region); } var l = Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang(string.Concat("/movie/", method), minPage, maxPage, args)); return(JsonArray.ToArray(l, (d) => new TmdbMovie((IDictionary <string, object>)d))); }
public TmdbMovie[] GetMovies(bool includeAdult = false) { // this routine does not accept a page parameter but returns the results // in paged format var args = new JsonObject(); if (includeAdult) { args.Add("include_adult", true); } return(JsonArray.ToArray( Tmdb.CollapsePagedJson(Tmdb.InvokePagedLang(string.Concat("/keyword/", Id.ToString(), "/movies"), 0, 0, args)), (d) => new TmdbMovie((IDictionary <string, object>)d))); }
public static TmdbShow[] SearchShows(string query, int minPage, int maxPage, int firstAirDateYear = 0) { var args = new JsonObject(); args.Add("query", query); if (0 < firstAirDateYear) { args.Add("first_air_date_year", firstAirDateYear); } return(JsonArray.ToArray( Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/search/tv", minPage, maxPage, args)), (d) => new TmdbShow((IDictionary <string, object>)d))); }
void _EnsureFetchedRatedShows() { var l = GetField <IList <object> >("rated_shows"); if (null == l) { // this function does not actually accept a page parameter, but it returns the result // in paged form, so we use the paged routines with the default page (0) which does not // send a page parameter. l = Tmdb.CollapsePagedJson(Tmdb.InvokePagedLang(string.Concat("/guest_session/", Id, "/rated/tv"), 0, 0)); if (null != l) { Json.Add("rated_shows", l); } } }
public static TmdbPerson[] SearchPeople(string query, int minPage, int maxPage, string region = null, bool includeAdult = false) { var args = new JsonObject(); args.Add("query", query); if (!string.IsNullOrEmpty(region)) { args.Add("region", region); } if (includeAdult) { args.Add("include_adult", includeAdult); } return(JsonArray.ToArray( Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/search/person", minPage, maxPage, args)), (d) => new TmdbPerson((IDictionary <string, object>)d))); }
public static TmdbPrimary[] Search(string query, int minPage, int maxPage, string region = null, bool includeAdult = false) { var args = new JsonObject(); args.Add("query", query); if (!string.IsNullOrEmpty(region)) { args.Add("region", region); } if (includeAdult) { args.Add("includeAdult", includeAdult); } var l = Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang("/search/multi", minPage, maxPage, args)); return(JsonArray.ToArray <TmdbPrimary>(l, (dd) => { var d = dd as IDictionary <string, object>; if (null != d) { object o; if (d.TryGetValue("media_type", out o)) { switch (o as string) { case "movie": return new TmdbMovie((IDictionary <string, object>)dd); case "tv": return new TmdbShow((IDictionary <string, object>)dd); case "person": return new TmdbPerson((IDictionary <string, object>)dd); } } } return null; } )); }
public static TmdbMovie[] GetGuestSessionRatedMovies(TmdbRatedSortType sortBy = TmdbRatedSortType.Default) { var sessionId = GuestSessionId; var args = new JsonObject(); string sb = null; switch (sortBy) { case TmdbRatedSortType.DateCreated | TmdbRatedSortType.Ascending: sb = "created_at.asc"; break; default: sb = "created_at.desc"; break; } args.Add("sort_by", sb); // this function does not actually accept a page parameter, but it returns the result // in paged form, so we use the paged routines with the default page (0) which does not // send a page parameter. return(JsonArray.ToArray( Tmdb.CollapsePagedJson(Tmdb.InvokePagedLang(string.Concat("/guest_session/", sessionId, "/rated/movies"), 0, 0, args)), (d) => new TmdbMovie((IDictionary <string, object>)d))); }
public TmdbShow[] GetSimilar(int minPage = 0, int maxPage = 999) { return(JsonArray.ToArray(Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang(string.Concat("/", string.Join("/", PathIdentity), "/similar"), minPage, maxPage)), (d) => new TmdbShow((IDictionary <string, object>)d))); }
public TmdbTaggedImage[] GetTaggedImages(int minPage = 0, int maxPage = 999) { return(JsonArray.ToArray(Tmdb.CollapsePagedJson( Tmdb.InvokePagedLang(string.Concat("/", string.Join("/", PathIdentity), "/tagged_images"))), (d) => new TmdbTaggedImage((IDictionary <string, object>)d))); }