From 270b5f64990b00c1e383cdd20f212a9fba42bf06 Mon Sep 17 00:00:00 2001 From: Manuel Raynaud Date: Wed, 30 Apr 2014 10:32:17 +0200 Subject: [PATCH] filter with contentFolder table for finding next/prev content --- core/lib/Thelia/Core/Template/Loop/Content.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/core/lib/Thelia/Core/Template/Loop/Content.php b/core/lib/Thelia/Core/Template/Loop/Content.php index e567b13ac..5cd2ade60 100644 --- a/core/lib/Thelia/Core/Template/Loop/Content.php +++ b/core/lib/Thelia/Core/Template/Loop/Content.php @@ -202,6 +202,7 @@ class Content extends BaseI18nLoop implements PropelSearchLoopInterface public function parseResults(LoopResult $loopResult) { + /** @var \Thelia\Model\Content $content */ foreach ($loopResult->getResultDataCollection() as $content) { $loopResultRow = new LoopResultRow($content); @@ -224,14 +225,19 @@ class Content extends BaseI18nLoop implements PropelSearchLoopInterface if ($this->getBackend_context() || $this->getWithPrevNextInfo()) { + $defaultFolderId = $content->getDefaultFolderId(); // Find previous and next category $previous = ContentQuery::create() + ->joinContentFolder() + ->where('ContentFolder.folder_id = ?', $defaultFolderId) ->filterByPosition($content->getPosition(), Criteria::LESS_THAN) ->orderByPosition(Criteria::DESC) ->findOne() ; $next = ContentQuery::create() + ->joinContentFolder() + ->where('ContentFolder.folder_id = ?', $defaultFolderId) ->filterByPosition($content->getPosition(), Criteria::GREATER_THAN) ->orderByPosition(Criteria::ASC) ->findOne()