isCsrfTokenValid('delete' . $menuItem->getId(), $request->getPayload()->getString('_token'))) { $menuItem->delete(); $entityManager->flush(); } return $this->redirectToRoute('app_food_vendor_show', [ 'id' => $menuItem->getFoodVendor() ->getId(), ], Response::HTTP_SEE_OTHER); } #[Route('/{id}/edit', name: 'app_menu_item_edit', methods: ['GET', 'POST'])] public function edit(Request $request, MenuItem $menuItem, EntityManagerInterface $entityManager): Response { $form = $this->createForm(MenuItemType::class, $menuItem); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { foreach ($menuItem->getFoodVendor()->getMenuItems() as $vendorItem) { if ($menuItem->getAliases()->contains($vendorItem)) { $vendorItem->setAliasOf($menuItem); } elseif ($vendorItem->getAliasOf() === $menuItem) { $vendorItem->setAliasOf(null); } $entityManager->persist($vendorItem); } $entityManager->persist($menuItem); $entityManager->flush(); return $this->redirectToRoute('app_menu_item_show', [ 'id' => $menuItem->getId(), ], Response::HTTP_SEE_OTHER); } return $this->render('menu_item/edit.html.twig', [ 'menu_item' => $menuItem, 'form' => $form, ]); } #[Route('/{id}', name: 'app_menu_item_show', methods: ['GET'])] public function show(MenuItem $menuItem): Response { return $this->render('menu_item/show.html.twig', [ 'menu_item' => $menuItem, ]); } }