src/Controller/HymnCategoryController.php line 25

Open in your IDE?
  1. <?php namespace App\Controller;
  2. use App\Entity\{HymnCategory, Hymns, HymnsView};
  3. use Doctrine\Persistence\ManagerRegistry;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\HttpFoundation\Response;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. class HymnCategoryController extends AbstractController
  8. {
  9. /**
  10. * @Route("/hymn/category", name="hymn_category")
  11. */
  12. public function index(ManagerRegistry $doctrine): Response
  13. {
  14. $category = $doctrine->getRepository(HymnCategory::class)->findAll();
  15. return $this->render('hymn_category/index.html.twig', [
  16. 'hymn_category' => $category,
  17. ]);
  18. }
  19. /**
  20. * @Route("/hymn/category/show/{slug}", name="hymn_category_show")
  21. */
  22. public function show(ManagerRegistry $doctrine, string $slug): Response
  23. {
  24. $category = $doctrine->getRepository(HymnCategory::class)->findBy(['slug' => $slug])[0];
  25. $hymns = $doctrine->getRepository(HymnsView::class)->findByCategoryOrderedByTitle($slug);
  26. return $this->render('hymn_category/show.html.twig', [
  27. 'hymns' => $hymns,
  28. 'category' => $category,
  29. ]);
  30. }
  31. }