/** * @Route("/card/change", name="change_card") */ public function changeCardAction(Request $request) { if (!$this->getRequest()->isXmlHttpRequest()) { throw $this->createNotFoundException(); } $em = $this->getDoctrine()->getManager(); $cardId = $request->request->get('cardId'); $action = $request->request->get('action'); $statusList = Card::getStatusList(); $card = $em->getRepository('AppBundle:Card')->findOneById($cardId); if (!empty($card)) { if ($action == 'status') { if ($card->getStatus() == 'Inactive') { $card->setStatus($statusList[1]); $card->setUsageDate(new \DateTime()); } elseif ($card->getStatus() == 'Active') { $card->setStatus($statusList[0]); $card->setUsageDate(null); } $em->persist($card); } elseif ($action == 'remove') { $em->remove($card); } else { return; } $em->flush(); $cards = $em->getRepository('AppBundle:Card')->findAll(); $view = $this->renderView('card/partial/card_list.html.twig', array('cards' => $cards)); $response = new Response($view); return $response; } else { return; } }