X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2FController%2FPersonController.php;h=8d4f1271ead0a1b7da8d750362f9f147c379cbc4;hb=df29951479f5e8012b541172fac893b7d476b402;hp=1a6821335bad4f2715b2a16dd788982940ada456;hpb=dec6d0310680edbf06e4564590d6e4a3ffde8a6e;p=Project_proches_de_moi-server.git diff --git a/src/Controller/PersonController.php b/src/Controller/PersonController.php index 1a68213..8d4f127 100644 --- a/src/Controller/PersonController.php +++ b/src/Controller/PersonController.php @@ -9,6 +9,9 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; +/** + * @Rest\Prefix("/api") + */ class PersonController extends FOSRestController { /** @@ -36,10 +39,10 @@ class PersonController extends FOSRestController public function removePersonAction(Request $request) { $em = $this->getDoctrine()->getManager(); - $person = $em->getRepository('App:Person')->find($request->get('id')); + $person = $em->getRepository('App::Person')->find($request->get('id')); - if ($person) { - $em->remove($place); + if (!empty($person)) { + $em->remove($person); $em->flush(); } } @@ -54,9 +57,9 @@ class PersonController extends FOSRestController public function updatePersonAction(Request $request) { $em = $this->getDoctrine()->getManager(); - $person = $em->getRepository('App:Person')->find($request->get('id')); + $person = $em->getRepository('App::Person')->find($request->get('id')); - if (empty($place)) { + if (empty($person)) { return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); } @@ -80,6 +83,7 @@ class PersonController extends FOSRestController /** * @Rest\Post("/person/{id}/localisation") + * @Rest\View(StatusCode = Response::HTTP_CREATED) */ public function updateLocalisationAction(Request $request) { @@ -101,10 +105,17 @@ class PersonController extends FOSRestController * name = "show_person", * requirements = {"id"="\d+"} * ) - * @Rest\View + * @Rest\View() */ - public function showPerson(Person $person) + public function showPerson(Request $request) { + $em = $this->getDoctrine()->getManager(); + $person = $em->getRepository('App::Person')->find($request->get('id')); + + if (empty($person)) { + return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + } + return $person; } @@ -114,10 +125,17 @@ class PersonController extends FOSRestController * name = "show_person_by_email", * requirements = {"email"="\s+"} * ) - * @Rest\View + * @Rest\View() */ - public function showPersonByEmail(Person $person) + public function showPersonByEmail(Request $request) { + $em = $this->getDoctrine()->getManager(); + $person = $em->getRepository('App::Person')->find($request->get('email')); + + if (empty($person)) { + return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + } + return $person; } @@ -127,10 +145,17 @@ class PersonController extends FOSRestController * name = "show_person_friends", * requirements = {"id"="\d+"} * ) - * @Rest\View + * @Rest\View() */ - public function showPersonFriends(Person $person) + public function showPersonFriends(Request $request) { + $em = $this->getDoctrine()->getManager(); + $person = $em->getRepository('App::Person')->find($request->get('id')); + + if (empty($person)) { + return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + } + return $person->getFriends(); } @@ -140,10 +165,17 @@ class PersonController extends FOSRestController * name = "show_person_friends_by_email", * requirements = {"email"="\s+"} * ) - * @Rest\View + * @Rest\View() */ - public function showPersonFriendsByEmail(Person $person) + public function showPersonFriendsByEmail(Request $request) { + $em = $this->getDoctrine()->getManager(); + $person = $em->getRepository('App::Person')->find($request->get('email')); + + if (empty($person)) { + return new JsonResponse(['message' => 'Person not found'], Response::HTTP_NOT_FOUND); + } + return $person->getFriends(); } }