From 5c39e5a975c7f8814f413b648273afbbdc75d2b6 Mon Sep 17 00:00:00 2001 From: Markus Klein <klein.t3@reelworx.at> Date: Wed, 26 Nov 2014 18:39:36 +0100 Subject: [PATCH] [BUGFIX] Pagination wrong in IndexedSearch Fix variable type issues in IndexedSearch pagination. (classic and extbase VH) This will ensure the CSS classes are correct again for current page and next/prev page. Resolves: #63350 Releases: master, 6.2 Change-Id: I6db4f2850ca9adc9d0aa07e908fc613036071676 Reviewed-on: http://review.typo3.org/34646 Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl> Tested-by: Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by: Markus Klein <klein.t3@reelworx.at> Tested-by: Markus Klein <klein.t3@reelworx.at> --- .../Classes/Controller/SearchFormController.php | 2 +- .../Classes/ViewHelpers/PageBrowsingViewHelper.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/typo3/sysext/indexed_search/Classes/Controller/SearchFormController.php b/typo3/sysext/indexed_search/Classes/Controller/SearchFormController.php index 0cca36b69655..6ecd242a5683 100644 --- a/typo3/sysext/indexed_search/Classes/Controller/SearchFormController.php +++ b/typo3/sysext/indexed_search/Classes/Controller/SearchFormController.php @@ -1495,7 +1495,7 @@ class SearchFormController extends \TYPO3\CMS\Frontend\Plugin\AbstractPlugin { $pointer = (int)$this->piVars['pointer']; $count = (int)$this->internal['res_count']; $results_at_a_time = \TYPO3\CMS\Core\Utility\MathUtility::forceIntegerInRange($this->internal['results_at_a_time'], 1, 1000); - $pageCount = ceil($count / $results_at_a_time); + $pageCount = (int)ceil($count / $results_at_a_time); $links = array(); // only show the result browser if more than one page is needed diff --git a/typo3/sysext/indexed_search/Classes/ViewHelpers/PageBrowsingViewHelper.php b/typo3/sysext/indexed_search/Classes/ViewHelpers/PageBrowsingViewHelper.php index 050dd88e84ca..ddd9d6ab73c0 100644 --- a/typo3/sysext/indexed_search/Classes/ViewHelpers/PageBrowsingViewHelper.php +++ b/typo3/sysext/indexed_search/Classes/ViewHelpers/PageBrowsingViewHelper.php @@ -40,7 +40,7 @@ class PageBrowsingViewHelper extends \TYPO3\CMS\Fluid\Core\ViewHelper\AbstractVi * @return string The content */ public function render($maximumNumberOfResultPages, $numberOfResults, $resultsPerPage, $currentPage = 0, $freeIndexUid = NULL) { - $pageCount = ceil($numberOfResults / $resultsPerPage); + $pageCount = (int)ceil($numberOfResults / $resultsPerPage); // only show the result browser if more than one page is needed if ($pageCount === 1) { return ''; @@ -59,7 +59,7 @@ class PageBrowsingViewHelper extends \TYPO3\CMS\Fluid\Core\ViewHelper\AbstractVi // Check if $maximumNumberOfResultPages is in range $maximumNumberOfResultPages = \TYPO3\CMS\Core\Utility\MathUtility::forceIntegerInRange($maximumNumberOfResultPages, 1, $pageCount, 10); // Assume $currentPage is in the middle and calculate the index limits of the result page listing - $minPage = $currentPage - floor($maximumNumberOfResultPages / 2); + $minPage = $currentPage - (int)floor($maximumNumberOfResultPages / 2); $maxPage = $minPage + $maximumNumberOfResultPages - 1; // Check if the indexes are within the page limits if ($minPage < 0) { -- GitLab