Exemple #1
0
        // 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));
        }
Exemple #2
0
        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));
        }