src/DcSiteBundle/Controller/Jeep/AboutController.php line 50

Open in your IDE?
  1. <?php
  2. namespace DcSiteBundle\Controller\Jeep;
  3. use CoreBundle\Component\CoreFormFactory;
  4. use CoreBundle\Component\FormManager;
  5. use CoreBundle\Factory\Vehicle as VehicleFactory;
  6. use CoreBundle\Model\Api\OnlineService\ApiServer1C;
  7. use CoreBundle\Model\Post;
  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\HttpKernel\Exception\NotFoundHttpException;
  20. use Symfony\Component\Routing\RouterInterface;
  21. use Twig\Environment;
  22. class AboutController extends BaseController
  23. {
  24.     public function __construct(CoreFormFactory $coreFormFactorySeoMetaTag $seoMetaTagRequestStack $requestStackRouterInterface $routerFormManager $formManagerEntityManagerInterface $emApiServer1C $apiServer1CSessionInterface $sessionFilesystem $filesystemMediaExtensionVidi $mediaExtensionVidiRepository $vehicleRepositoryVehicleFactory $vehicleFactoryEnvironment $twig)
  25.     {
  26.         parent::__construct($coreFormFactory$seoMetaTag$requestStack$router$formManager$em$apiServer1C$session$filesystem$mediaExtensionVidi$vehicleRepository$vehicleFactory$twig);
  27.     }
  28.     public function about(): ?Response
  29.     {
  30.         return $this->baseJeepRender('@DcSite/Jeep/About/about-us.html.twig', [
  31.         ]);
  32.     }
  33.     public function aboutCompany(): ?Response
  34.     {
  35.         return $this->baseJeepRender('@DcSite/Jeep/About/about-company.html.twig', [
  36.         ]);
  37.     }
  38.     public function contact(): ?Response
  39.     {
  40.         return $this->baseJeepRender('@DcSite/Jeep/About/contact.html.twig', [
  41.         ]);
  42.     }
  43.     public function qualityPolicy(): ?Response
  44.     {
  45.         return $this->baseJeepRender('@DcSite/Jeep/About/quality-policy.html.twig', [
  46.         ]);
  47.     }
  48.     public function personalData(): ?Response
  49.     {
  50.         return $this->baseJeepRender('@DcSite/Jeep/About/personal-data-policy.html.twig', [
  51.         ]);
  52.     }
  53.     public function team(Request $requestViDiWorkerModel $viDiWorkerModel): ?Response
  54.     {
  55.         $workers $viDiWorkerModel->getAllByDealer($this->getDealer(), $request->getLocale());
  56.         return $this->baseJeepRender('@DcSite/Jeep/About/team.html.twig', [
  57.             'workers' => $workers
  58.         ]);
  59.     }
  60.     public function vacancy(): ?Response
  61.     {
  62.         $vacancies $this->em->getRepository(Vacancy::class)->getByDealer($this->getDealer());
  63.         return $this->baseJeepRender('@DcSite/Jeep/About/vacancy.html.twig', [
  64.             'vacancies' => $vacancies,
  65.         ]);
  66.     }
  67.     //    Вакансія ID
  68.     public function vacancyId($id): ?Response
  69.     {
  70.         $vacancy $this->em->getRepository(Vacancy::class)->getByID($id);
  71.         if (!$vacancy) {
  72.             throw new NotFoundHttpException();
  73.         }
  74.         return $this->baseJeepRender('@DcSite/Jeep/About/vacancy-id.html.twig', [
  75.             'vacancy' => $vacancy,
  76.             'vacancyForm' => $this->CoreFormFactory()->vacancyForm($this->getDealer(), $vacancy)->createView(),
  77.         ]);
  78.     }
  79.     public function istruction(): ?Response
  80.     {
  81.         return $this->baseJeepRender('@DcSite/Jeep/About/istruction.html.twig', [
  82.         ]);
  83.     }
  84.     public function news(): ?Response
  85.     {
  86.         $posts $this->em->getRepository(\CoreBundle\Entity\Post::class)->getNewsByDealer($this->getDealer());
  87.         return $this->baseJeepRender('@DcSite/Jeep/About/news.html.twig', [
  88.             'posts' => $posts
  89.         ]);
  90.     }
  91.     public function newsSingle(Request $requestPost $postModel): ?Response
  92.     {
  93.         $post $postModel->initByUrl($this->getDealer(), $request->get('news'), Post::POST_TYPE_NEWS);
  94.         if (!$post) {
  95.             throw $this->createNotFoundException();
  96.         }
  97.         return $this->baseJeepRender('@DcSite/Jeep/About/news-single.html.twig', [
  98.             'post' => $post,
  99.         ]);
  100.     }
  101.     public function actions(): ?Response
  102.     {
  103.         $posts $this->em->getRepository(\CoreBundle\Entity\Post::class)->getActionsByDealer($this->getDealer());
  104.         return $this->baseJeepRender('@DcSite/Jeep/About/actions.html.twig', [
  105.             'posts' => $posts
  106.         ]);
  107.     }
  108.     public function actionsSingle(Request $requestPost $postModel): ?Response
  109.     {
  110.         $post $postModel->initByUrl($this->getDealer(), $request->get('actions'), Post::POST_TYPE_ACTIONS);
  111.         if (!$post) {
  112.             throw $this->createNotFoundException();
  113.         }
  114.         return $this->baseJeepRender('@DcSite/Jeep/About/actions-single.html.twig', [
  115.             'post' => $post,
  116.         ]);
  117.     }
  118.     public function publicOffer(): ?Response
  119.     {
  120.         return $this->baseJeepRender('@DcSite/Jeep/About/public-offer.html.twig', ['dealer' => $this->getDealer()]);
  121.     }
  122.     public function returnRefundPolicies(): ?Response
  123.     {
  124.         return $this->baseJeepRender('@DcSite/Jeep/return-refund-policies.html.twig');
  125.     }
  126. }