From f838943827c800dfbfc2c35b33fe8d5754adedd1 Mon Sep 17 00:00:00 2001 From: Audrey Jensen Date: Wed, 11 Oct 2023 20:42:58 +0000 Subject: [PATCH] point pages to user injected navbar controller --- src/Controller/ComplaintController.php | 4 ++-- src/Controller/NavbarController.php | 21 +++++++++++++++++++ src/Controller/PortalController.php | 6 ++++-- src/Controller/SafetyController.php | 15 +++++++------ .../Training/Safety/SafetyQuiz.html.twig | 4 ---- .../Training/Safety/safetyHome.html.twig | 4 ---- templates/_navbar.html.twig | 1 + templates/complaint.html.twig | 4 ---- templates/portal.html.twig | 3 +-- 9 files changed, 38 insertions(+), 24 deletions(-) create mode 100644 src/Controller/NavbarController.php diff --git a/src/Controller/ComplaintController.php b/src/Controller/ComplaintController.php index 8378a58..523213d 100644 --- a/src/Controller/ComplaintController.php +++ b/src/Controller/ComplaintController.php @@ -19,7 +19,7 @@ use Symfony\Component\Mime\Address; class ComplaintController extends AbstractController { #[Route('/complaint/anon', name: 'complaint')] - public function Index(Request $request, TransportTransportInterface $mailer,LoggerInterface $log) : Response + public function Index(Request $request, TransportTransportInterface $mailer,LoggerInterface $log, NavbarController $_navbar) : Response { $form = $this->createForm(AnonymousComplaintType::class); $form->handleRequest($request); @@ -33,7 +33,7 @@ class ComplaintController extends AbstractController { $sendMail = null; } - return $this->render('complaint.html.twig',['form' => $form, 'isSubmitted' => $sendMail, 'complaintReceiverName' => $_SERVER['COMPLAINT_RECIPIENT_NAME']]); + return new Response($_navbar->navbar() . $this->renderView('complaint.html.twig',['form' => $form, 'isSubmitted' => $sendMail, 'complaintReceiverName' => $_SERVER['COMPLAINT_RECIPIENT_NAME']])); } public function sendEmail(TransportTransportInterface $mailer, string $message, LoggerInterface $log) : bool { diff --git a/src/Controller/NavbarController.php b/src/Controller/NavbarController.php new file mode 100644 index 0000000..2bd66b7 --- /dev/null +++ b/src/Controller/NavbarController.php @@ -0,0 +1,21 @@ +twig->render('_navbar.html.twig', $contentFile); + return $content; + } +} \ No newline at end of file diff --git a/src/Controller/PortalController.php b/src/Controller/PortalController.php index 1b47083..7f3b138 100644 --- a/src/Controller/PortalController.php +++ b/src/Controller/PortalController.php @@ -8,10 +8,12 @@ use jv\intranet\Types\NavbarItem; class PortalController extends AbstractController { #[Route('/')] - public function page() : Response + public function page(NavbarController $navbar) : Response { + $navbar = $navbar->navbar(); $contentFile = Yaml::parseFile('../config/portalLinks.yaml', 2, 2, Yaml::PARSE_OBJECT_FOR_MAP); - return $this->render('portal.html.twig',$contentFile); + $page = $this->render('portal.html.twig',$contentFile); + return new Response($navbar . $page->getContent()); } } \ No newline at end of file diff --git a/src/Controller/SafetyController.php b/src/Controller/SafetyController.php index df1f79b..aea70ce 100644 --- a/src/Controller/SafetyController.php +++ b/src/Controller/SafetyController.php @@ -14,14 +14,17 @@ use function PHPUnit\Framework\containsIdentical; class SafetyController extends AbstractController { + + #[Route('/training/safety', name: 'safetyHome')] - public function Index() : Response + public function Index(NavbarController $_navbar) : Response { $contentFile = Yaml::parseFile('../config/safetyLinks.yaml', 2, 2, Yaml::PARSE_OBJECT_FOR_MAP); - return $this->render('Training/Safety/safetyHome.html.twig',['content' => $contentFile]); + $navbar = $_navbar->navbar(); + return new Response($navbar . $this->renderView('Training/Safety/safetyHome.html.twig',['content' => $contentFile])); } #[Route('/training/safety/quiz')] - public function Quiz(Request $request, LoggerInterface $log) + public function Quiz(Request $request, LoggerInterface $log, NavbarController $_navbar) { $form = $this->createForm(SafetyQuizType::class); $form->handleRequest($request); @@ -43,10 +46,10 @@ class SafetyController extends AbstractController return $this->render('Training/Safety/quizResults.html.twig', ['testerName'=>$testerName, 'correctAnswers'=>$correctAnswers, 'totalAnswers'=>count($data)]); } - return $this->render('Training/Safety/SafetyQuiz.html.twig',['quiz'=>$form]); + return new Response($navbar = $_navbar->navbar() . $this->renderView('Training/Safety/SafetyQuiz.html.twig',['quiz'=>$form])); } #[Route('/Training/Safety/Topics/{topic?}')] - public function Topics(?string $topic, LoggerInterface $log) : Response + public function Topics(?string $topic, LoggerInterface $log, NavbarController $navbar) : Response { //We want to show the safety homepage if this is blank if($topic == null) @@ -96,7 +99,7 @@ class SafetyController extends AbstractController $topic = strtolower($topic); //Render the page header - $header = $this->renderView('_header.html.twig') . $this->renderView ('_navbar.html.twig'); + $header = $navbar->navbar(); //prepare navButton data $navButtonData = ['previous'=> $previousTopic, 'next' => $nextTopic]; $contents = $this->renderView('Training/Safety/Topics/'.$topic.".html.twig"); //render main page contents diff --git a/templates/Training/Safety/SafetyQuiz.html.twig b/templates/Training/Safety/SafetyQuiz.html.twig index 34489c5..a088c6c 100644 --- a/templates/Training/Safety/SafetyQuiz.html.twig +++ b/templates/Training/Safety/SafetyQuiz.html.twig @@ -1,10 +1,6 @@ - -{{ include('_header.html.twig') }} - - {{ include('_navbar.html.twig')}}

Complete the Safety Quiz below

When you're finished, click 'Submit' at the bottom and print your results. diff --git a/templates/Training/Safety/safetyHome.html.twig b/templates/Training/Safety/safetyHome.html.twig index 03c1885..c5d93da 100644 --- a/templates/Training/Safety/safetyHome.html.twig +++ b/templates/Training/Safety/safetyHome.html.twig @@ -1,10 +1,6 @@ - -{{ include('_header.html.twig') }} - - {{ include('_navbar.html.twig')}}

diff --git a/templates/_navbar.html.twig b/templates/_navbar.html.twig index 14eaf7f..807be09 100644 --- a/templates/_navbar.html.twig +++ b/templates/_navbar.html.twig @@ -1,3 +1,4 @@ +{{ include('_header.html.twig') }}