Пример #1
0
        public async Task <IActionResult> Favorite(UserFavoriteRequestModel userFavoriteRequestModel)
        {
            userFavoriteRequestModel.UserId = Convert.ToInt32(HttpContext.User.Claims.FirstOrDefault(u => u.Type == ClaimTypes.NameIdentifier).Value);
            var favorite = await _userFavoriteService.AddFavorite(userFavoriteRequestModel);

            return(LocalRedirect("~/Movies/Details/" + userFavoriteRequestModel.MovieId));
        }
Пример #2
0
        public async Task <IActionResult> Unfavorite(UserFavoriteRequestModel requestModel)
        {
            // var userId = Convert.ToInt32(HttpContext.User.Claims
            //     .FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier)?.Value);
            var userId = _currentUserService.Id ?? 0;
            await _userService.RemoveFavoriteMovie(requestModel.MovieId, userId);

            return(Redirect($"~/Movies/Details/{requestModel.MovieId}"));
        }
Пример #3
0
        public async Task <IActionResult> FavoriteMovie([FromBody] UserFavoriteRequestModel model)
        {
            model.UserId = _currentUserService.Id ?? 0;
            var favorite = await _userService.FavoriteMovie(model.MovieId, model.UserId);

            if (favorite == null)
            {
                return(BadRequest(new { errorMessage = "You have already liked the movie." }));
            }
            return(Ok());
        }
Пример #4
0
        public async Task <IActionResult> FavoriteMovie([FromBody] UserFavoriteRequestModel model)
        {
            model.UserId = (int)_currentUserService.UserId;
            var favorite = await _userService.FavoriteMovie(model.MovieId, model.UserId);

            if (favorite == null)
            {
                return(NotFound("Failed to favorite the movie"));
            }
            return(Ok());
        }
        //public async Task<IEnumerable<Favorite>> GetFavoritsByUserId(int userId) {

        //    return await _userFavoriteRepository.GetFavoritsByUserId(userId);
        //}


        public async Task <Favorite> AddFavorite(UserFavoriteRequestModel userFavoriteRequestModel)
        {
            if (await IsMovieFavorited(userFavoriteRequestModel.UserId, userFavoriteRequestModel.MovieId) == true)
            {
                throw new Exception("You added this movie as favorite");
            }

            Favorite favorite = new Favorite()
            {
                userId  = userFavoriteRequestModel.UserId,
                MovieId = userFavoriteRequestModel.MovieId
            };

            var addFavorite = await _userFavoriteRepository.AddAsync(favorite);



            return(addFavorite);
        }