events/Classes/Pagination/Factory.php

25 lines
648 B
PHP

<?php
declare(strict_types=1);
namespace Wrm\Events\Pagination;
use TYPO3\CMS\Core\Pagination\PaginationInterface;
use TYPO3\CMS\Extbase\Pagination\QueryResultPaginator;
use TYPO3\CMS\Extbase\Persistence\QueryResultInterface;
use Wrm\Events\Backports\V12\Pagination\SlidingWindowPagination;
class Factory
{
public function create(
int $currentPage,
int $itemsPerPage,
int $maximumLinks,
QueryResultInterface $items
): PaginationInterface {
return new SlidingWindowPagination(
new QueryResultPaginator($items, $currentPage, $itemsPerPage),
$maximumLinks
);
}
}