Add a basket element into the current basket.
public addBasketElement ( Sonata\Component\Basket\BasketElementInterface $basketElement ) | ||
$basketElement | Sonata\Component\Basket\BasketElementInterface |
/** * Creates an OrderElement from a given Product. * * @param BasketInterface $basket A basket instance * @param BaseProduct $product A product instance * * @return OrderElement */ protected function createOrderElement(BasketInterface $basket, BaseProduct $product) { $productProvider = $this->getProductPool()->getProvider($product); $productManager = $this->getProductPool()->getManager($product); $productDefinition = new ProductDefinition($productProvider, $productManager); $basketElement = $productProvider->createBasketElement($product); $basketElement->setProductDefinition($productDefinition); $basket->addBasketElement($basketElement); $productProvider->updateComputationPricesFields($basket, $basketElement, $product); $orderElement = $productProvider->createOrderElement($basketElement); return $orderElement; }