Пример #1
0
        public string LikeIt(UserModel user, int id)
        {
            var    link     = _context.Links.Include(x => x.Likes).FirstOrDefault(x => x.Id == id);
            var    userData = _context.Users.Include(y => y.MyLinks).Include(z => z.LinksILike).FirstOrDefault(x => x.Id == user.Id);
            string message;

            if (userData.LinksILike is null)
            {
                _likeService.CreateLike(link, user);
                LikesCounter(link);
                return(message = "You like this link");
            }
            else if (userData.MyLinks.Contains(link))
            {
                return(message = "This is your link");
            }
            else
            {
                var like = _context.Likes.FirstOrDefault(like => like.Link == link & like.User == user);
                if (like is null)
                {
                    _likeService.CreateLike(link, user);
                    LikesCounter(link);
                    return(message = "You like this link");
                }
                else
                {
                    message = _likeService.ChangeStatus(like);
                    LikesCounter(link);
                    return(message);
                }
            }
        }