public IActionResult Profile(int id) { try { var targetUser = _userService.GetUserById(id); if (targetUser is null) { return(StatusCode(StatusCodes.Status404NotFound)); } var sessionUser = _userService.GetSessionUser(); var requestIsSent = _networkService.CheckIfRequestIsSent(targetUser.Id, sessionUser.Id); var areFriends = _networkService.CheckIfFriends(targetUser.Id, sessionUser.Id); var userDTO = targetUser.ConvertToProfileUserDTO(); userDTO.Posts = _postService.GetPostsOfUser(targetUser.Id). Select(x => x.ConvertToViewPostDTO()) .ToList(); RegulateUserType(targetUser, sessionUser, userDTO, requestIsSent, areFriends); return(View(userDTO)); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }