public function addPaginationLinks($url, array $queryParams, $offset, $limit, $total = null)
{
if (isset($queryParams['page']['number'])) {
$offset = floor($offset / $limit) * $limit;
}
$this->addPaginationLink('first', $url, $queryParams, 0, $limit);
if ($offset > 0) {
$this->addPaginationLink('prev', $url, $queryParams, max(0, $offset - $limit), $limit);
}
if ($total === null || $offset + $limit < $total) {
$this->addPaginationLink('next', $url, $queryParams, $offset + $limit, $limit);
}
if ($total) {
$this->addPaginationLink('last', $url, $queryParams, floor(($total - 1) / $limit) * $limit, $limit);
}
}