packages/porpaginas-bundle/Twig/KnpPagerRenderingAdapter.php line 37

Open in your IDE?
  1. <?php
  2. /**
  3.  * Created by simpson <simpsonwork@gmail.com>
  4.  * Date: 08/11/2018
  5.  * Time: 11:42
  6.  */
  7. namespace AngelGamez\PorpaginasBundle\Twig;
  8. use Knp\Bundle\PaginatorBundle\Twig\Extension\PaginationExtension;
  9. use Knp\Component\Pager\Paginator;
  10. use Porpaginas\Page;
  11. use Porpaginas\Twig\RenderingAdapter;
  12. use Twig\Environment;
  13. class KnpPagerRenderingAdapter implements RenderingAdapter
  14. {
  15.     private $paginator;
  16.     private $template;
  17.     /**
  18.      * KnpPagerRenderingAdapter constructor.
  19.      *
  20.      * @param $paginator
  21.      * @param $template
  22.      */
  23.     public function __construct(Paginator $paginator$template null)
  24.     {
  25.         $this->paginator $paginator;
  26.         $this->template $template;
  27.     }
  28.     /**
  29.      * @inheritDoc
  30.      */
  31.     public function renderPagination(Page $pageEnvironment $environment)
  32.     {
  33.         return $environment->getExtension(PaginationExtension::class)->render(
  34.             $environment,
  35.             $this->paginator->paginate(
  36.                 $page,
  37.                 $page->getCurrentPage(),
  38.                 $page->getCurrentLimit()
  39.             ),
  40.             $this->template
  41.         );
  42.     }
  43. }