X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2FController%2FPersonController.php;h=f2e73c132454b5e4d3bf98fc763ab7f121b7fe0f;hb=1de9ba73a6b77b98e94f797623b80b9d993cf01e;hp=5dd8f2322cafe7cb4e0ef3fbb662be26466db59d;hpb=1d9d8d510cc147f9a71d4478c426bf7236ff1fb2;p=Project_proches_de_moi-server.git diff --git a/src/Controller/PersonController.php b/src/Controller/PersonController.php index 5dd8f23..f2e73c1 100644 --- a/src/Controller/PersonController.php +++ b/src/Controller/PersonController.php @@ -61,7 +61,7 @@ class PersonController extends Controller $person = $em->getRepository('App:Person')->find($request->get('id')); if (empty($person)) { - return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + return View::create(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } $person->setFirstName($request->get('firstname')); @@ -82,6 +82,26 @@ class PersonController extends Controller } + /** + * @Rest\Get("/api/person/{id}/localisations") + */ + public function getLocalisationsAction(Request $request) + { + $em = $this->getDoctrine()->getManager(); + $localisations = $em->getRepository('App:Localisation')->findBy(['person' => $request->get('id')]); + + if (empty($localisations)) { + return View::create(['message' => 'Person localisations not found'], Response::HTTP_NOT_FOUND); + } + + $view = View::create($localisations); + $view->setFormat('json'); + + $viewHandler = $this->get('fos_rest.view_handler'); + return $viewHandler->handle($view); + + } + /** * @Rest\Post("/api/person/{id}/localisation") * @Rest\View(StatusCode = Response::HTTP_CREATED) @@ -114,13 +134,14 @@ class PersonController extends Controller $person = $em->getRepository('App:Person')->find($request->get('id')); if (empty($person)) { - return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + return View::create(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } $view = View::create($person); $view->setFormat('json'); - return $view; + $viewHandler = $this->get('fos_rest.view_handler'); + return $viewHandler->handle($view); } /** @@ -137,13 +158,14 @@ class PersonController extends Controller $person = $em->getRepository('App:Person')->find($request->get('email')); if (empty($person)) { - return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + return View::create(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } $view = View::create($person); $view->setFormat('json'); - return $view; + $viewHandler = $this->get('fos_rest.view_handler'); + return $viewHandler->handle($view); } /** @@ -160,13 +182,14 @@ class PersonController extends Controller $person = $em->getRepository('App:Person')->find($request->get('id')); if (empty($person)) { - return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + return View::create(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } $view = View::create($person->getFriends()); $view->setFormat('json'); - return $view; + $viewHandler = $this->get('fos_rest.view_handler'); + return $viewHandler->handle($view); } /** @@ -183,12 +206,13 @@ class PersonController extends Controller $person = $em->getRepository('App:Person')->find($request->get('email')); if (empty($person)) { - return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + return View::create(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } $view = View::create($person->getFriends()); $view->setFormat('json'); - return $view; + $viewHandler = $this->get('fos_rest.view_handler'); + return $viewHandler->handle($view); } }