src/Controller/FrontendBundle/Ideas/CompanyIdeasController.php line 28

Open in your IDE?
  1. <?php
  2. namespace App\Controller\FrontendBundle\Ideas;
  3. use Doctrine\ORM\EntityManagerInterface;
  4. use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
  5. use Symfony\Component\HttpFoundation\Request;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\Routing\Annotation\Route;
  8. use App\BackendBundle\Helper\InfoSectionHelper;
  9. use App\BackendBundle\Helper\SiteTitleHelper;
  10. use App\Entity\InfoSectionCategory;
  11. class CompanyIdeasController extends AbstractController {
  12.     private $siteTitleHelper;
  13.     private $infoSectionHelper;
  14.     public function __construct(InfoSectionHelper $infosectionhelperSiteTitleHelper $sitetitlehelper) {
  15.         $this->infoSectionHelper $infosectionhelper;
  16.         $this->siteTitleHelper $sitetitlehelper;
  17.     }
  18.     /**
  19.      * @return \Symfony\Component\HttpFoundation\Response
  20.      * @Route("/ideen-unternehmen", name="company_ideas_list", defaults={"title": "Informationsbereich für Unternehmen", "description": "Sie sind als Unternehmen auf der Suche nach Lehrlingen? Hier finden Sie einen Überblick an Möglichkeiten, interessierte Jugendliche anzusprechen."}) 
  21.      */
  22.     public function listIdeasAction(Request $request) {
  23.         $this->siteTitleHelper->setTitleDescription($request);
  24.         $em $this->getDoctrine()->getManager();
  25.         $entities $em->getRepository(InfoSectionCategory::class)->findBy(array('sectionType' => 1), array('position' => 'ASC'));
  26.         return $this->render('@frontend/public/ideas/ideas_company.html.twig', array(
  27.                     'heading' => 'Ideen für Unternehmen',
  28.                     'categoryRoute' => 'company_ideas_category',
  29.                     'entities' => $entities
  30.         ));
  31.     }
  32.     /**
  33.      * @return \Symfony\Component\HttpFoundation\Response
  34.      * @Route("/ideen-unternehmen/{category}", name="company_ideas_category", defaults={"title": "Informationsbereich für Unternehmen", "description": "Sie sind als Unternehmen auf der Suche nach Lehrlingen? Hier finden Sie einen Überblick an Möglichkeiten, interessierte Jugendliche anzusprechen."}) 
  35.      */
  36.     public function categoryAction(Request $request$category) {
  37.         $infoSectionCategory $this->infoSectionHelper->getInfoSectionCategoryByUrlText($category);
  38.         if (empty($infoSectionCategory)) {
  39.             throw new NotFoundHttpException("Category $category wurde nicht gefunden");
  40.         }
  41.         $this->siteTitleHelper->setInfoSectionCategoryTitle($request$infoSectionCategory);
  42.         $entities $this->infoSectionHelper->getInfoSectionSubCategoriesByCategory($infoSectionCategory);
  43.         return $this->render('@frontend/public/ideas/ideas_category.html.twig', array(
  44.                     'category' => $infoSectionCategory,
  45.                     'entities' => $entities
  46.         ));
  47.     }
  48. }