Bonsoir,
Je n'arrive toujours pas à utiliser ma boucle, écrite dans mon module, dans le template utilisé pour la configuration du module "module_configuration.html" dans le répertoire AdminIncludes du module.
Je vous passe le code de ma boucle, je ne retrouve même pas les Tlog pour vérifier le passage dans les fonctions, j'ai vérifier plusieurs fois si je n'avais pas fait d'erreur dans mon fichier config.xml.
namespace LPPretraits\Loop;
use LPPretraits\LPPretraits;
use LPPretraits\Model\LppDeliveryPointsQuery;
use Propel\Runtime\ActiveQuery\Criteria;
use Thelia\Core\Template\Element\BaseLoop;
use Thelia\Core\Template\Element\LoopResult;
use Thelia\Core\Template\Element\LoopResultRow;
use Thelia\Core\Template\Element\PropelSearchLoopInterface;
use Thelia\Core\Template\Element\SearchLoopInterface;
use Thelia\Core\Template\Loop\Argument\ArgumentCollection;
use Thelia\Core\Template\Loop\Argument\Argument;
use Thelia\Core\Template\Element\buildModelCriteria;
use Thelia\Core\Template\Element\LoopResult;
use Thelia\Core\Template\Element\LoopResultRow;
use Thelia\Log\Tlog;
/**
* Class LPPDeliveryPointId
* @package LPPDeliveryPoint\Loop
* @author Les Pousses Poussent <fabien.laverroux@lespoussespoussent.fr>
*/
class LPPDeliveryPointId extends BaseLoop implements PropelSearchLoopInterface
{
public $countable = true;
public $timestampable = false;
public $versionable = false;
// Tlog::getInstance()->info("LPPDeliveryPointId : countable=",$countable);
/**
* this method returns a Propel ModelCriteria
*
* @return \Propel\Runtime\ActiveQuery\ModelCriteria
*/
public function buildModelCriteria()
{
Tlog::getInstance()->info("lppdeliverypointid/buildModelCriteria");
$search = LppDeliveryPointsQuery::create();
$id = $this->getId();
if (!is_null($id)) {
$search->filterById($id, Criteria::IN);
}
return $search;
}
/**
* @param LoopResult $loopResult
*
* @return LoopResult
*/
public function parseResults(LoopResult $loopResult)
{
Tlog::getInstance()->info("lppdeliverypointid/parseResult");
foreach ($loopResult->getResultDataCollection() as $point_de_retrait) {
$loopResultRow = new LoopResultRow($point_de_retrait);
$loopResultRow
->set("ID",$point_de_retrait->getId())
->set("NAME",$point_de_retrait->getName())
;
$loopResult->addRow($loopResultRow);
}
return $loopResult;
}
protected function getArgDefinitions()
{
Tlog::getInstance()->info("lppdeliverypointid/getArgDefinitions");
return new ArgumentCollection(
Argument::createIntListTypeArgument('id')
);
}
}
Une idée ?
Last edited by macgaret (18-05-2015 19:37:05)