/**
  * Test an empty Item entity
  */
 public function testEmptyItem()
 {
     $item = new Item();
     $this->assertNull($item->getId());
     $this->assertEquals('New Item', $item->__toString());
     $this->assertNull($item->getTitle());
     $this->assertNull($item->getLatitude());
     $this->assertNull($item->getLongitude());
     $this->assertNull($item->getType());
     $this->assertNull($item->getDescription());
     $this->assertNull($item->getArea());
     $this->assertNull($item->getAreaType());
     $this->assertEquals(ItemStatusType::ACTUAL, $item->getStatus());
     $this->assertTrue($item->isActive());
     $this->assertNull($item->getDate());
     $this->assertNull($item->getCreatedBy());
     $this->assertFalse($item->isModerated());
     $this->assertNull($item->getModeratedAt());
     $this->assertFalse($item->isDeleted());
     $this->assertNull($item->getActivatedAt());
     $this->assertNull($item->getDeletedAt());
 }
 /**
  * Show item requests
  *
  * @param Item $item Item
  *
  * @return Response
  *
  * @Route("/item/{id}/requests", name="user_item_requests")
  * @ParamConverter("item", class="AppBundle\Entity\Item")
  */
 public function showItemRequestsAction(Item $item)
 {
     if ($item->getCreatedBy()->getId() != $this->getUser()->getId()) {
         throw $this->createAccessDeniedException();
     }
     $itemRepository = $this->getDoctrine()->getRepository('AppBundle:Item');
     $requests = $itemRepository->getItemRequests($item);
     return $this->render('frontend/user/show_item_requests.html.twig', ['requests' => $requests, 'title' => $item->getTitle()]);
 }
 /**
  * Request user facebook page
  *
  * @param Item    $item    Item
  * @param Request $request Request
  *
  * @return Response
  *
  * @Method("POST")
  * @Route("item/{id}/request-user", name="item_user_get_facebook", options={"expose"=true, "i18n"=false}))
  * @ParamConverter("item", class="AppBundle\Entity\Item")
  */
 public function requestUserAction(Item $item, Request $request)
 {
     if (!$request->isXmlHttpRequest()) {
         throw new AccessDeniedException();
     }
     $form = $this->createForm('item_details');
     if ($request->isMethod('post')) {
         $form->submit($request);
         if ($form->isValid()) {
             $user = $item->getCreatedBy();
             $userItemRequest = (new ItemRequest())->setItem($item)->setUser($this->getUser());
             $em = $this->getDoctrine()->getManager();
             $em->persist($userItemRequest);
             $em->flush();
             return new JsonResponse($user->getFacebookId());
         }
     }
     throw new BadRequestHttpException();
 }