Ejemplo n.º 1
0
        private void EditUserLike(ApplicationUser user, Post post, AspNetUserLike like, bool likes)
        {
            if (like != null)
            {
                if (like.Likes == likes)
                {
                    return;
                }
                else
                {
                    like.Likes    = likes;
                    like.Dislikes = !likes;

                    if (likes)
                    {
                        post.Likes++;
                        post.Dislikes--;
                    }
                    else
                    {
                        post.Likes--;
                        post.Dislikes++;
                    }
                }
            }

            db.SaveChanges();
        }
Ejemplo n.º 2
0
        public ActionResult Like(Post post, bool likes)
        {
            string          crntUserId = User.Identity.GetUserId();
            ApplicationUser crntUser   = db.Users.FirstOrDefault(x => x.Id == crntUserId);

            Post crntPost = db.Posts.FirstOrDefault(p => p.Id == post.Id);

            AspNetUserLike userLike = db.AspNetUserLikes.FirstOrDefault(
                l =>
                l.AspNetUser.Id == crntUser.Id &&
                l.Post.Id == post.Id
                );

            if (userLike != null)
            {
                EditUserLike(crntUser, crntPost, userLike, likes);
            }
            else
            {
                AddUserLike(crntUser, crntPost, likes);
            }

            return(RedirectToAction("Home", "Posts"));
        }