private PsychologistDTO MakePsychologistDTO(User user, User psychoUser)
        {
            //check if current user like for psycho
            bool isCurrentUserSetLike = _context
                                        .Likes
                                        .Where(l => l.UserId == user.Id && l.PsychologistId == psychoUser.Id)
                                        .Any();

            //number of all likes
            int likes = _context
                        .Likes
                        .Where(l => l.PsychologistId == psychoUser.Id)
                        .Count();

            //prepare DTO
            PsychologistDTO psychoDTO = new PsychologistDTO()
            {
                Id = psychoUser.Id,

                NickName           = psychoUser.Nickname,
                Age                = psychoUser.Age,
                AvatarImage        = psychoUser.AvatarImage,
                IsAccountActivated = psychoUser.IsAccountActivated,
                Education          = psychoUser.Education,
                AreaOfExpertise    = psychoUser.AreaOfExpertise,
                WorkExperience     = psychoUser.WorkExperience,

                IsCurrentUserSetLike = isCurrentUserSetLike,
                Likes = likes
            };

            return(psychoDTO);
        }
        public async Task <ActionResult <PsychologistDTO> > GetPsychologist(long id)
        {
            User user = await _userManager.GetUserAsync(User);

            User psychoUser = _context
                              .Users
                              .Where(u => u.Id == id)
                              .FirstOrDefault();

            if (user == null || psychoUser == null)
            {
                return(NotFound());
            }

            PsychologistDTO psychoDTO = MakePsychologistDTO(user, psychoUser);

            return(Ok(psychoDTO));
        }