/** * Get a product * * @param int $id_product * @param bool $full * @param int|null $id_lang * @param int|null $id_shop * @param object|null $context * * @throws LogicException If the product id is not set * * @return \ProductCore $product */ public function getProduct($id_product, $full = false, $id_lang = null, $id_shop = null, $context = null) { if (!$id_product) { throw new LogicException('You need to provide a product id', 5002); } $product = new \ProductCore($id_product, $full, $id_lang, $id_shop, $context); if ($product) { if (!is_array($product->link_rewrite)) { $linkRewrite = $product->link_rewrite; } else { $linkRewrite = $product->link_rewrite[$id_lang ? $id_lang : key($product->link_rewrite)]; } $cover = \ProductCore::getCover($product->id); $product->image = \Context::getContext()->link->getImageLink($linkRewrite, $cover ? $cover['id_image'] : '', 'home_default'); } return $product; }