public async Task <IActionResult> GetAllLikes() { var likes = await Task.Run(() => _likeService.GetAllLikes()); var model = _mapper.Map <IEnumerable <LikeModel> >(likes); return(Ok(model)); }
public async Task <IActionResult> GetFavorite() { //var getCourse = await _courseService.GetCourse(id); // var getUser = _userManager.GetUserId(User); // var likes = await _like.GetAllLikes(getUser); return(View(likes)); }
public ActionResult GetLikesNotesForCurrentUser(List <long> NoteIDList) { User user = Session["isLogin"] as User; if (NoteIDList == null && user != null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } List <long> liked = _likeService.GetAllLikes(x => x.UserId == user.UserId && NoteIDList.Contains(x.NoteId)).Select(s => s.NoteId).ToList(); if (!liked.Any()) { return(HttpNotFound()); } return(Json(liked)); }
public async Task <ActionResult <IEnumerable <LikesModel> > > GetAllLikes() { var likes = await _likeService.GetAllLikes(); var likesModel = _mapper.Map <IEnumerable <Likes>, IEnumerable <LikesModel> >(likes); foreach (LikesModel like in likesModel) { var profile = await _profileService.GetProfileById(like.UserId); like.Username = profile.Username; } return(Ok(likesModel)); }
public async Task <IActionResult> LikePost(ReturnPostVM postToLike) { var user = await _userManager.GetUserAsync(HttpContext.User); if (user == null) { return(RedirectToAction("Login", "Account")); } else { if (!ModelState.IsValid) { var returnedPost = await CreatePostVM(postToLike.PostId); return(RedirectToAction("Index", new { returnedPost.PostId })); } var allLikes = await _likeService.GetAllLikes(); var checkNonRepeat = allLikes.Any(like => like.LikedPost.PostId == postToLike.PostId && like.UserWhoLiked == user); if (checkNonRepeat) { var returnPost = await CreatePostVM(postToLike.PostId); return(View("Index", returnPost)); } else { var post = await _postService.GetPost(postToLike.PostId); var Like = PostMappers.AddLike(post, user); //Change to getuser method and remove Blogit.models namespace. await _likeService.LikePost(Like); var returnPost = await CreatePostVM(postToLike.PostId); return(RedirectToAction("Index", new { returnPost.PostId })); } } }