Пример #1
0
        public int Like(int postId)
        {
            var userId = postService.GetUserIdByPostId(postId);

            if (!friendService.AreFriends(userId, currentUser.Id) &&
                !(currentUser.Id == userId))
            {
                return(likeService.GetNumberOfLikes(postId));
            }

            if (likeService.CanLike(currentUser.Id, postId) == false)
            {
                return(likeService.GetNumberOfLikes(postId));
            }

            likeService.Like(currentUser.Id, postId);

            return(likeService.GetNumberOfLikes(postId));
        }
Пример #2
0
        public IActionResult Index(int page = 1)
        {
            var posts         = postService.GetFeed(currentUser.Id, page, settings.PageSize);
            var numberOfPosts = postService.GetNumberOfPosts(currentUser.Id);
            var model         = new List <PostFeedModel>();

            posts.ForEach(p => {
                var post     = mapper.Map <PostFeedModel>(p);
                post.CanLike = likeService.CanLike(currentUser.Id, post.Id);
                model.Add(post);
            });

            var pagedModel = PaginatedList <PostFeedModel> .Create(model, numberOfPosts, page, settings.PageSize);

            return(View(pagedModel));
        }