src/Controller/NewsController.php line 27

Open in your IDE?
  1. <?php
  2. /**
  3.  * News Controller
  4.  *
  5.  * (c) Bertin van den Ham <b.vandenham@dappr.nl>
  6.  */
  7. namespace App\Controller;
  8. use App\Entity\News;
  9. use DateTime;
  10. use Symfony\Component\HttpFoundation\Request;
  11. use Symfony\Component\HttpFoundation\Response;
  12. use VisualMedia\LisaBundle\Component\ManagerData;
  13. use VisualMedia\NewsBundle\Controller\NewsController as BaseNewsController;
  14. use VisualMedia\NewsBundle\Manager\BaseNewsManager;
  15. /**
  16.  * Project Controller
  17.  */
  18. class NewsController extends BaseNewsController
  19. {
  20.     /**
  21.      * {@inheritDoc}
  22.      */
  23.     public function ssiAction(Request $request, ?int $count null, ?int $offset nullNews $currentNews null): Response
  24.     {
  25.         $manager $this->get(BaseNewsManager::class);
  26.         $news $manager->getIndex(new ManagerData([
  27.             $manager::OPTION_PUBLISHED => true,
  28.             $manager::OPTION_UNPUBLICATION_DATE_GTE => new DateTime(),
  29.             $manager::OPTION_PUBLICATION_DATE_LTE => new DateTime(),
  30.         ], array($manager::OPTION_PUBLICATIONDATE => $manager::ORDER_DIR_DESC), $count$offset));
  31.         if($currentNews !== null) {
  32.             $news array_filter($news, function($item) use ($currentNews) {
  33.                  return $currentNews !== $item;
  34.             });
  35.         }
  36.         return $this->render('@VisualMediaNews/News/ssi.html.twig', array(
  37.             'news' => $news,
  38.         ));
  39.     }
  40. }