diff --git a/Classes/Common/SolrPaginator.php b/Classes/Common/SolrPaginator.php index 48a945bbe..1b7f8eade 100644 --- a/Classes/Common/SolrPaginator.php +++ b/Classes/Common/SolrPaginator.php @@ -42,7 +42,9 @@ public function __construct( protected function updatePaginatedItems(int $itemsPerPage, int $offset): void { $this->solrSearch->submit($offset, $itemsPerPage); - $this->paginatedItems = $this->solrSearch->toArray(); + foreach ($this->solrSearch as $item) { + $this->paginatedItems[] = $item; + } } protected function getTotalAmountOfItems(): int diff --git a/Classes/Controller/CollectionController.php b/Classes/Controller/CollectionController.php index 62c00cf37..0dd92029d 100644 --- a/Classes/Controller/CollectionController.php +++ b/Classes/Controller/CollectionController.php @@ -172,7 +172,6 @@ public function showAction(?Collection $collection = null): void $sortableMetadata = $this->metadataRepository->findByIsSortable(true); $solrResults = $this->documentRepository->findSolrByCollection($collection, $this->settings, $this->searchParams, $listedMetadata); - $numResults = $solrResults->getNumFound(); $itemsPerPage = $this->settings['list']['paginate']['itemsPerPage'] ?? 25; @@ -183,8 +182,8 @@ public function showAction(?Collection $collection = null): void $this->view->assignMultiple([ 'pagination' => $pagination, 'paginator' => $solrPaginator ]); $this->view->assign('viewData', $this->viewData); - $this->view->assign('documents', !empty($solrResults) ? $solrResults : []); - $this->view->assign('numResults', $numResults); + $this->view->assign('countDocuments', $solrResults->count()); + $this->view->assign('countResults', $solrResults->getNumFound()); $this->view->assign('collection', $collection); $this->view->assign('page', $currentPage); $this->view->assign('lastSearch', $this->searchParams); diff --git a/Classes/Controller/ListViewController.php b/Classes/Controller/ListViewController.php index d4528dd09..07a5bead8 100644 --- a/Classes/Controller/ListViewController.php +++ b/Classes/Controller/ListViewController.php @@ -101,10 +101,8 @@ public function mainAction(): void // get all metadata records to be shown in results $listedMetadata = $this->metadataRepository->findByIsListed(true); - $numResults = 0; if (!empty($this->searchParams)) { $solrResults = $this->documentRepository->findSolrWithoutCollection($this->settings, $this->searchParams, $listedMetadata); - $numResults = $solrResults->getNumFound(); $itemsPerPage = $this->settings['list']['paginate']['itemsPerPage'] ?? 25; @@ -116,8 +114,8 @@ public function mainAction(): void } $this->view->assign('viewData', $this->viewData); - $this->view->assign('documents', !empty($solrResults) ? $solrResults : []); - $this->view->assign('numResults', $numResults); + $this->view->assign('countDocuments', !empty($solrResults) ? $solrResults->count() : 0); + $this->view->assign('countResults', !empty($solrResults) ? $solrResults->getNumFound() : 0); $this->view->assign('page', $currentPage); $this->view->assign('lastSearch', $this->searchParams); $this->view->assign('sortableMetadata', $sortableMetadata); diff --git a/Resources/Private/Partials/ListView/SearchHits.html b/Resources/Private/Partials/ListView/SearchHits.html index 431bd690a..bc1555ce3 100644 --- a/Resources/Private/Partials/ListView/SearchHits.html +++ b/Resources/Private/Partials/ListView/SearchHits.html @@ -13,6 +13,6 @@ data-namespace-typo3-fluid="true">
-