use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
+/**
+ * @Rest\Prefix("/api")
+ */
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();
}
}
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);
}
/**
* @Rest\Post("/person/{id}/localisation")
+ * @Rest\View(StatusCode = Response::HTTP_CREATED)
*/
public function updateLocalisationAction(Request $request)
{
* 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;
}
* 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;
}
* 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();
}
* 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();
}
}