getResultDataCollection() as $entry) { $row = new LoopResultRow($entry); $row ->set("ID", $entry->getId()) ->set("VISIBLE", $entry->getVisible()) ->set("TITLE", $entry->getVirtualColumn("i18n_TITLE")) ->set("DESCRIPTION", $entry->getVirtualColumn("i18n_DESCRIPTION")) ->set("GAME_ID", $entry->getGameId()) ; $this->addMoreResults($row, $entry); $loopResult->addRow($row); } return $loopResult; } /** * Definition of loop arguments * * example : * * public function getArgDefinitions() * { * return new ArgumentCollection( * * Argument::createIntListTypeArgument('id'), * new Argument( * 'ref', * new TypeCollection( * new Type\AlphaNumStringListType() * ) * ), * Argument::createIntListTypeArgument('category'), * Argument::createBooleanTypeArgument('new'), * ... * ); * } * * @return \Thelia\Core\Template\Loop\Argument\ArgumentCollection */ protected function getArgDefinitions() { return new ArgumentCollection( Argument::createIntListTypeArgument("id"), Argument::createBooleanOrBothTypeArgument("visible", BooleanOrBothType::ANY), Argument::createAnyTypeArgument("title"), Argument::createIntListTypeArgument("game_id"), Argument::createEnumListTypeArgument( "order", [ "id", "id-reverse", "visible", "visible-reverse", "title", "title-reverse", "description", "description-reverse", "game_id", "game_id-reverse", ], "id" ) ); } /** * this method returns a Propel ModelCriteria * * @return \Propel\Runtime\ActiveQuery\ModelCriteria */ public function buildModelCriteria() { $query = new QuestionQuery(); $this->configureI18nProcessing($query, ["TITLE", "DESCRIPTION", ]); if (null !== $id = $this->getId()) { $query->filterById($id); } if (BooleanOrBothType::ANY !== $visible = $this->getVisible()) { $query->filterByVisible($visible); } if (null !== $title = $this->getTitle()) { $title = array_map("trim", explode(",", $title)); $query->filterByTitle($title); } if (null !== $game_id = $this->getGameId()) { $query->filterByGameId($game_id); } foreach ($this->getOrder() as $order) { switch ($order) { case "id": $query->orderById(); break; case "id-reverse": $query->orderById(Criteria::DESC); break; case "visible": $query->orderByVisible(); break; case "visible-reverse": $query->orderByVisible(Criteria::DESC); break; case "title": $query->addAscendingOrderByColumn("i18n_TITLE"); break; case "title-reverse": $query->addDescendingOrderByColumn("i18n_TITLE"); break; case "description": $query->addAscendingOrderByColumn("i18n_DESCRIPTION"); break; case "description-reverse": $query->addDescendingOrderByColumn("i18n_DESCRIPTION"); break; case "game_id": $query->orderByGameId(); break; case "game_id-reverse": $query->orderByGameId(Criteria::DESC); break; } } return $query; } protected function addMoreResults(LoopResultRow $row, $entryObject) { } }