Ejemplo n.º 1
0
        public async Task <IActionResult> AddLike(int petId, int likerId)
        {
            if (likerId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }
            var pet = await petsRepository.GetPet(petId);

            if (pet.Likes != null && pet.Likes.Select(like => like.PetWhichLikedId).Contains(likerId))
            {
                return(BadRequest("Użytkownik został już polubiony"));
            }
            else
            {
                petsRepository.AddLike(likerId, petId);
            }

            if (await petsRepository.Save())
            {
                return(Ok());
            }
            return(BadRequest("Server nie zapisał zmian"));
        }