/// <summary> /// Returns list of movies and youtube result according to the selected relevance /// </summary> /// <param name="relevance">ie. Latest, Popular, Top Rated</param> /// <param name="page">The Result Page</param> /// <returns></returns> public AggregatedModel GetByRelevance(MovieRelevance relevance, string page = "1") { AggregatedModel aggregatedModel; switch (relevance) { case MovieRelevance.Trending: aggregatedModel = _tmdbConnection.GetTrendingMovies(page); aggregatedModel.YoutubeResults = _youtubeConnection.RetrieveData("trending"); aggregatedModel.RelevanceType = MovieRelevance.Trending; return(aggregatedModel); case MovieRelevance.Popular: aggregatedModel = _tmdbConnection.GetPopularMovies(page); aggregatedModel.YoutubeResults = _youtubeConnection.RetrieveData("most popular"); aggregatedModel.RelevanceType = MovieRelevance.Popular; return(aggregatedModel); case MovieRelevance.TopRated: aggregatedModel = _tmdbConnection.GetTopRatedMovies(page); aggregatedModel.YoutubeResults = _youtubeConnection.RetrieveData("top rated"); aggregatedModel.RelevanceType = MovieRelevance.TopRated; return(aggregatedModel); case MovieRelevance.Upcomming: aggregatedModel = _tmdbConnection.GetUpcommingMovies(page); aggregatedModel.YoutubeResults = _youtubeConnection.RetrieveData("upcomming"); aggregatedModel.RelevanceType = MovieRelevance.Upcomming; return(aggregatedModel); default: throw new Exception("Incorret Relevance Type"); } }
public async Task <ActionResult> Relevance(MovieRelevance relevance, string page = "1") { var relevanceName = CustomEnumHelper.DisplayNameFor(relevance); ViewBag.Title = $"{relevanceName} Movies"; return(await CallApiAndPopulateView <AggregatedModel>($"relevance={relevance}&page={page}", "Content")); }