Exemplo n.º 1
0
 /**
  * Return the list of the most viewed answers for a given user.
  *
  * @ApiDoc(
  *  description="Return the list of the most viewed answers for a given user.",
  *  section="Answer",
  *  statusCodes = {
  *    200 = "List of answers",
  *    403 = "Forbidden",
  *    404 = "No answers stored",
  *    500 = "Server error"
  *  },
  * )
  * @Route("/show/{slug}", name="aalto_api_answer_show", methods={"GET"})
  * @ParamConverter("answer", class="AppBundle:Answer", options={"slug" = "slug"})
  *
  * @param Request $request
  * @param Answer  $answer
  *
  * @return JsonResponse
  */
 public function showAction(Request $request, Answer $answer)
 {
     $params = ['title' => $answer->getTitle(), 'description' => $answer->getDescription(), 'createdBy' => $answer->getUser()->__toString(), 'createdAt' => $answer->getCreated(), 'files' => [], 'comments' => []];
     $comments = $answer->getComments()->toArray();
     foreach ($comments as $comment) {
         /** @var Comment $comment */
         $params['comments'][] = ['text' => $comment->getContent(), 'createdBy' => $comment->getUser()->__toString(), 'createdAt' => $comment->getCreated(), 'files' => []];
     }
     return new JsonResponse($params, Response::HTTP_OK);
 }