getContentId()) { $search->filterByContentId($content_id, Criteria::IN); } if (null !== $position = $this->getPosition()) { $search->filterByPosition($position, Criteria::IN); } if (null !== $selection_id = $this->getSelectionId()) { $search->filterBySelectionId($selection_id, Criteria::IN); } if (null !== $content_title = $this->getContentTitle()) { $join = new Join( ContentI18nTableMap::ID, SelectionContentTableMap::CONTENT_ID, Criteria::INNER_JOIN ); $search->addJoinObject($join, 'search') ->addJoinCondition('search', ContentI18nTableMap::TITLE."=". $content_title); } return $search->orderByPosition(Criteria::ASC); } /** * @param LoopResult $loopResult * @return LoopResult * @throws \Propel\Runtime\Exception\PropelException */ public function parseResults(LoopResult $loopResult) { foreach ($loopResult->getResultDataCollection() as $content) { /** @var SelectionContent $content */ $loopResultRow = new LoopResultRow($content); $lang = $this->request->getSession()->get('thelia.current.lang'); $loopResultRow ->set("CONTENT_ID", $content->getContentId()) ->set("CONTENT_TITLE", $content->getContent()->getTitle()) ->set("POSITION", $content->getPosition()) ->set("selection_id", $content->getSelectionId()); $loopResult->addRow($loopResultRow); } return $loopResult; } }