src/Controller/PageController.php line 45

Open in your IDE?
  1. <?php
  2. /**
  3.  * Page Controller
  4.  *
  5.  * (c) Bertin van den Ham <b.vandenham@dappr.nl>
  6.  */
  7. namespace App\Controller;
  8. use App\Manager\PageManager;
  9. use Symfony\Component\HttpFoundation\Cookie;
  10. use Symfony\Component\HttpFoundation\JsonResponse;
  11. use Symfony\Component\HttpFoundation\Request;
  12. use Symfony\Component\HttpFoundation\Response;
  13. use VisualMedia\LisaBundle\Component\ManagerData;
  14. use VisualMedia\NewsBundle\Manager\BaseNewsManager;
  15. use VisualMedia\PageBundle\Controller\PageController as BasePageController;
  16. /**
  17.  * Page Controller
  18.  */
  19. class PageController extends BasePageController
  20. {
  21.     /**
  22.      * Ssi Page Expertise Action
  23.      *
  24.      * @param Request $request
  25.      * @param integer $count
  26.      * @param bool $shuffle
  27.      *
  28.      * @return Response
  29.      */
  30.     public function ssiExpertiseAction(Request $request, ?int $count nullbool $shuffle false): Response
  31.     {
  32.         $manager $this->get(PageManager::class);
  33.         $expertisePages $manager->getIndex(new ManagerData(array(
  34.             $manager::OPTION_PUBLISHED => true,
  35.             $manager::OPTION_EXPERTISE => true
  36.         ), array($manager::OPTION_ID => $manager::ORDER_DIR_ASC), $count));
  37.         if($shuffle) {
  38.             shuffle($expertisePages);
  39.         }
  40.         return $this->render('@VisualMediaPage/Ssi/ssi_expertises.html.twig', array(
  41.             'expertise_pages' => $expertisePages,
  42.         ));
  43.     }
  44.     /**
  45.      * WebShopPopupClosed
  46.      *
  47.      * @param Request $request
  48.      *
  49.      * @return Response
  50.      */
  51.     public function webShopPopupClosed(Request $request): Response
  52.     {
  53.         $expireDate = new \DateTime('+1 year', new \DateTimeZone('Europe/Amsterdam'));
  54.         $cookie Cookie::create('webshop_popup_closed'true$expireDate);
  55.         $response = new JsonResponse('success');
  56.         $response->headers->setCookie($cookie);
  57.         return $response;
  58.     }
  59. }