public IActionResult Index(SubredditPageViewModel vm) { if (!HasPasswordAlready()) { return(RedirectToAction("Index", "Password", new { redirectTo = "Subreddits" })); } vm.IsMobile = IsMobile(); return(View(vm)); }
public IActionResult _Subreddits(SubredditPageViewModel vm) { if (!HasPasswordAlready()) { return(RedirectToAction("Index", "Password", new { redirectTo = "Subreddits" })); } IQueryable <RedditPost> postsQuery = from m in _redditPostContext.RedditPost select m; var subredditNames = postsQuery.Select(post => post.Subreddit).Distinct().OrderBy(subredditName => subredditName.ToLower()).ToList(); var iconQuery = from m in _subredditInfoContext.SubredditInfo select m; var subredditsAlreadyStored = iconQuery.Select(subreddit => subreddit.SubredditName).ToList(); var subredditsToRetrieve = subredditNames.Where(subName => !subredditsAlreadyStored.Contains(subName)).ToList(); foreach (string subredditName in subredditsToRetrieve) { GetSubredditInfo(subredditName); } SubredditsViewModel itemsVm = CreateViewModel(postsQuery, vm.SortingSetting, vm.NsfwSetting); return(PartialView(itemsVm)); }