src/DcSiteBundle/Controller/Mazda/AboutController.php line 75

Open in your IDE?
  1. <?php
  2. namespace DcSiteBundle\Controller\Mazda;
  3. use CoreBundle\Component\CoreFormFactory;
  4. use CoreBundle\Component\FormManager;
  5. use CoreBundle\Entity\Post;
  6. use CoreBundle\Factory\Vehicle as VehicleFactory;
  7. use CoreBundle\Model\Api\OnlineService\ApiServer1C;
  8. use CoreBundle\Model\Vehicles\Repository;
  9. use CoreBundle\Model\ViDiWorkerModel;
  10. use CoreBundle\Services\MediaExtensionVidi;
  11. use DcSiteBundle\Entity\Vacancy;
  12. use Doctrine\ORM\EntityManagerInterface;
  13. use PortalBundle\Model\SeoMetaTag;
  14. use Symfony\Component\Filesystem\Filesystem;
  15. use Symfony\Component\HttpFoundation\Request;
  16. use Symfony\Component\HttpFoundation\RequestStack;
  17. use Symfony\Component\HttpFoundation\Response;
  18. use Symfony\Component\HttpFoundation\Session\SessionInterface;
  19. use Symfony\Component\Routing\RouterInterface;
  20. use Twig\Environment;
  21. class AboutController extends BaseController
  22. {
  23.     public function __construct(CoreFormFactory $coreFormFactorySeoMetaTag $seoMetaTagRequestStack $requestStackRouterInterface $routerFormManager $formManagerEntityManagerInterface $emApiServer1C $apiServer1CSessionInterface $sessionFilesystem $filesystemMediaExtensionVidi $mediaExtensionVidiRepository $vehicleRepositoryVehicleFactory $vehicleFactoryEnvironment $twig)
  24.     {
  25.         parent::__construct($coreFormFactory$seoMetaTag$requestStack$router$formManager$em$apiServer1C$session$filesystem$mediaExtensionVidi$vehicleRepository$vehicleFactory$twig);
  26.     }
  27.     public function about(): Response
  28.     {
  29.         return $this->baseMazdaRender('@DcSite/Mazda/About/about.html.twig');
  30.     }
  31.     public function contacts(): Response
  32.     {
  33.         return $this->baseMazdaRender('@DcSite/Mazda/About/contacts.html.twig');
  34.     }
  35.     public function news(): Response
  36.     {
  37.         $news $this->em->getRepository(Post::class)->getNewsByDealer($this->getDealer());
  38.         return $this->baseMazdaRender('@DcSite/Mazda/About/news.html.twig', ['news' => $news]);
  39.     }
  40.     public function newsSingle(\CoreBundle\Model\Post $postModel$url): Response
  41.     {
  42.         $post $postModel->initByUrl($this->getDealer(), $url);
  43.         return $this->baseMazdaRender('@DcSite/Mazda/About/news-single.html.twig', [
  44.             'post' => $post,
  45.         ]);
  46.     }
  47.     public function qualityPolicy(): Response
  48.     {
  49.         return $this->baseMazdaRender('@DcSite/Mazda/About/quality-policy.html.twig', [
  50.             'dealer_name_ru' => $this->getDealer()->getNameRu(),
  51.         ]);
  52.     }
  53.     public function personalDataProcessing(): Response
  54.     {
  55.         return $this->baseMazdaRender('@DcSite/Mazda/About/personal-data-processing.html.twig');
  56.     }
  57.     public function staff(Request $requestViDiWorkerModel $viDiWorkerModel): Response
  58.     {
  59.         $workers $viDiWorkerModel->getAllByDealer($this->getDealer(), $request->getLocale());
  60.         return $this->baseMazdaRender('@DcSite/Mazda/About/staff.html.twig', [
  61.             'workers' => $workers,
  62.         ]);
  63.     }
  64.     public function vacancy(): Response
  65.     {
  66.         $vacancies $this->em->getRepository(Vacancy::class)->getByDealer($this->getDealer());
  67.         return $this->baseMazdaRender('@DcSite/Mazda/About/vacancy.html.twig', [
  68.             'vacancies' => $vacancies,
  69.         ]);
  70.     }
  71.     public function vacancySingle($id): Response
  72.     {
  73.         $vacancy $this->em->getRepository(Vacancy::class)->getByID($id);
  74.         return $this->baseMazdaRender('@DcSite/Mazda/About/vacancy-single.html.twig', [
  75.             'vacancy' => $vacancy,
  76.             'vacancyForm' => $this->CoreFormFactory()->vacancyForm($this->getDealer(), $vacancy)->createView(),
  77.         ]);
  78.     }
  79.     public function publicOffer(): Response
  80.     {
  81.         return $this->baseMazdaRender('@DcSite/Mazda/About/public-offer.html.twig', ['dealer' => $this->getDealer()]);
  82.     }
  83. }