// GET: Tweets public async Task <IActionResult> Index() { var model = new TweetHomePageViewModel(); var userId = PrincipalExtensions.FindFirstValue(this.User, ClaimTypes.NameIdentifier); var tweets = await Queryable.Where <Tweet>(_context.Tweet, t => t.UserId == userId) .AsNoTracking() .ToListAsync(); var twitterUser = _context.TwitterUsers .SingleOrDefault(t => t.UserID == userId); if (twitterUser == null) { return(RedirectToAction("Join", new { id = userId })); } model.User = twitterUser; model.User.UserImage = "https://graph.facebook.com/" + _userManager.FindByIdAsync(userId).Result.FbProfile + "/?fields=picture&type=large"; model.User.UserName = _userManager.FindByIdAsync(twitterUser.UserID).Result.UserName; foreach (var tweet in tweets) { tweet.UserImage = "https://graph.facebook.com/" + _userManager.FindByIdAsync(userId).Result.FbProfile + "/?fields=picture&type=large"; tweet.UserName = _userManager.FindByIdAsync(tweet.UserId).Result.UserName; } model.Tweets = tweets; return(View(model)); }
public async Task <IActionResult> TweetUser(int id) { var user = _context.TwitterUsers .SingleOrDefault(p => p.ID == id); var userId = user.UserID; var model = new TweetHomePageViewModel(); var tweets = await Queryable.Where <Tweet>(_context.Tweet, t => t.UserId == userId) .AsNoTracking() .ToListAsync(); var twitterUser = _context.TwitterUsers .SingleOrDefault(t => t.UserID == userId); if (twitterUser == null) { return(RedirectToAction("Join", new { id = userId })); } model.User = twitterUser; model.User.UserImage = "https://graph.facebook.com/" + _userManager.FindByIdAsync(userId).Result.FbProfile + "/?fields=picture&type=large"; model.User.UserName = _userManager.FindByIdAsync(twitterUser.UserID).Result.UserName; foreach (var tweet in tweets) { tweet.UserImage = "https://graph.facebook.com/" + _userManager.FindByIdAsync(userId).Result.FbProfile + "/?fields=picture&type=large"; tweet.UserName = _userManager.FindByIdAsync(tweet.UserId).Result.UserName; } model.Tweets = tweets; var Follow = _context.Follows .SingleOrDefault(f => (f.FollowerId == twitterUser.ID && f.FolloweeId == id)); if (Follow != null) { model.IsFollowing = true; } return(View(model)); }