From 162db60f592954a26263af12c273f192b00be226 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Thu, 18 Nov 2021 14:28:51 +0100 Subject: [PATCH] fix: Fix FamilyMemberController and Repository. --- .../Controller/FamilyMemberController.php | 97 +++++++++---------- .../Repository/FamilyMemberRepository.php | 25 ++++- 2 files changed, 66 insertions(+), 56 deletions(-) diff --git a/src/Bundle/ChillFamilyMembersBundle/Controller/FamilyMemberController.php b/src/Bundle/ChillFamilyMembersBundle/Controller/FamilyMemberController.php index a6378fa5c..1e25915ac 100644 --- a/src/Bundle/ChillFamilyMembersBundle/Controller/FamilyMemberController.php +++ b/src/Bundle/ChillFamilyMembersBundle/Controller/FamilyMemberController.php @@ -1,38 +1,46 @@ em = $em; + $this->em = $entityManager; $this->translator = $translator; $this->chillMainLogger = $chillMainLogger; + $this->familyMemberRepository = $familyMemberRepository; } - /** * @Route( * "{_locale}/family-members/family-members/by-person/{id}", @@ -43,14 +51,12 @@ class FamilyMemberController extends Controller { $this->denyAccessUnlessGranted(FamilyMemberVoter::SHOW, $person); - $familyMembers = $this->em - ->getRepository(FamilyMember::class) - ->findByPerson($person); + $familyMembers = $this->familyMemberRepository->findByPerson($person); - return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:index.html.twig', array( + return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:index.html.twig', [ 'person' => $person, 'familyMembers' => $familyMembers - )); + ]); } /** @@ -61,8 +67,7 @@ class FamilyMemberController extends Controller */ public function newAction(Person $person, Request $request) { - $familyMember = (new FamilyMember()) - ->setPerson($person); + $familyMember = (new FamilyMember())->setPerson($person); $this->denyAccessUnlessGranted(FamilyMemberVoter::CREATE, $familyMember); @@ -71,10 +76,9 @@ class FamilyMemberController extends Controller $form->handleRequest($request); - if ($form->isSubmitted() and $form->isValid()) { - $em = $this->getDoctrine()->getManager(); - $em->persist($familyMember); - $em->flush(); + if ($form->isSubmitted() && $form->isValid()) { + $this->em->persist($familyMember); + $this->em->flush(); $this->addFlash('success', $this->translator->trans('Family member created')); @@ -83,10 +87,10 @@ class FamilyMemberController extends Controller ]); } - return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:new.html.twig', array( + return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:new.html.twig', [ 'form' => $form->createView(), 'person' => $person - )); + ]); } /** @@ -104,9 +108,8 @@ class FamilyMemberController extends Controller $form->handleRequest($request); - if ($form->isSubmitted() and $form->isValid()) { - $em = $this->getDoctrine()->getManager(); - $em->flush(); + if ($form->isSubmitted() && $form->isValid()) { + $this->em->flush(); $this->addFlash('success', $this->translator->trans('Family member updated')); @@ -115,11 +118,11 @@ class FamilyMemberController extends Controller ]); } - return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:edit.html.twig', array( + return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:edit.html.twig', [ 'familyMember' => $familyMember, 'form' => $form->createView(), 'person' => $familyMember->getPerson() - )); + ]); } /** @@ -128,47 +131,42 @@ class FamilyMemberController extends Controller * "{_locale}/family-members/family-members/{id}/delete", * name="chill_family_members_family_members_delete" * ) - * - * @param FamilyMember $familyMember - * @param Request $request - * @return \Symfony\Component\BrowserKit\Response */ - public function deleteAction(FamilyMember $familyMember, Request $request) + public function deleteAction(FamilyMember $familyMember, Request $request): Response { $this->denyAccessUnlessGranted(FamilyMemberVoter::DELETE, $familyMember, 'You are not ' . 'allowed to delete this family membership'); - $form = $this->createDeleteForm($id); + $form = $this->createDeleteForm(); if ($request->getMethod() === Request::METHOD_DELETE) { $form->handleRequest($request); if ($form->isValid()) { - $this->chillMainLogger->notice("A family member has been removed", array( + $this->chillMainLogger->notice("A family member has been removed", [ 'by_user' => $this->getUser()->getUsername(), 'family_member_id' => $familyMember->getId(), 'name' => $familyMember->getFirstname()." ".$familyMember->getLastname(), 'link' => $familyMember->getLink() - )); + ]); - $em = $this->getDoctrine()->getManager(); - $em->remove($familyMember); - $em->flush(); + $this->em->remove($familyMember); + $this->em->flush(); $this->addFlash('success', $this->translator ->trans("The family member has been successfully removed.")); - return $this->redirectToRoute('chill_family_members_family_members_index', array( + return $this->redirectToRoute('chill_family_members_family_members_index', [ 'id' => $familyMember->getPerson()->getId() - )); + ]); } } - return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:confirm_delete.html.twig', array( + return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:confirm_delete.html.twig', [ 'familyMember' => $familyMember, 'delete_form' => $form->createView() - )); + ]); } /** @@ -181,23 +179,20 @@ class FamilyMemberController extends Controller { $this->denyAccessUnlessGranted(FamilyMemberVoter::SHOW, $familyMember); - return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:view.html.twig', array( + return $this->render('ChillAMLIFamilyMembersBundle:FamilyMember:view.html.twig', [ 'familyMember' => $familyMember - )); + ]); } /** * Creates a form to delete a help request entity by id. - * - * @param mixed $id The entity id - * - * @return \Symfony\Component\Form\Form The form */ - private function createDeleteForm($id) + private function createDeleteForm(): FormInterface { - return $this->createFormBuilder() + return $this + ->createFormBuilder() ->setMethod(Request::METHOD_DELETE) - ->add('submit', SubmitType::class, array('label' => 'Delete')) + ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm() ; } diff --git a/src/Bundle/ChillFamilyMembersBundle/Repository/FamilyMemberRepository.php b/src/Bundle/ChillFamilyMembersBundle/Repository/FamilyMemberRepository.php index 618128c96..a6754981b 100644 --- a/src/Bundle/ChillFamilyMembersBundle/Repository/FamilyMemberRepository.php +++ b/src/Bundle/ChillFamilyMembersBundle/Repository/FamilyMemberRepository.php @@ -1,17 +1,32 @@ findBy([ 'person' => $person ]); + parent::__construct($registry, FamilyMember::class); + } + + /** + * @return FamilyMember[] + */ + public function findByPerson(Person $person): array + { + return $this->findBy(['person' => $person]); } }