Il faudrait que je trouve du temps pour faire un module explicatif. J'ai appris beaucoup de chose en 3 jours mais faut pas avoir peur de lire le code source. Le plus dur d'ailleurs c'est pas la doc c'est de convertir les personnes utilisant Prestashop pour utiliser Thelia
Une question sur les boucles, j'ai cette boucle dans AdminIncludes/order-edit.html
{loop type="order_product" name="order-product" order=$order_id}
{loop type="order_product_svg" name="order-products-svg" order_product=$ID}
{$ID} {$CONTENT}
{/loop}
{/loop}
Ma boucle est la suivante :
<?php
namespace MyModule\Loop;
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\Loop\Argument\Argument;
use Thelia\Core\Template\Loop\Argument\ArgumentCollection;
use MyModule\Model\OrderProductSvg;
use MyModule\Model\OrderProductSvgQuery;
class OrderProductSVGLoop extends BaseLoop implements PropelSearchLoopInterface
{
/**
* @param LoopResult $loopResult
*
* @return LoopResult
*/
public function parseResults(LoopResult $loopResult)
{
/** @var OrderProductSvg $orderProductSVG */
foreach($loopResult->getResultDataCollection() as $orderProductSVG) {
$loopResultRow = new LoopResultRow($orderProductSVG);
$loopResultRow
->set('ID', $orderProductSVG->getOrderProductId())
->set('CONTENT', 'content');
$loopResult->addRow($loopResultRow);
}
return $loopResult;
}
protected function getArgDefinitions()
{
return new ArgumentCollection(
Argument::createIntListTypeArgument('order_product')
);
}
public function buildModelCriteria() {
$orderId = $this->getOrderProduct();
var_dump($orderId);
$search = OrderProductSvgQuery::create();
$search->filterByOrderProductId(
$orderId
);
return $search;
}
}
Ce que je voudrais c'est afficher dans la boucle seulement les OrderProductSvg avec pour id la clé primaire de OrderProduct.