inform user that article data sheet can't rendered in Smarty engine
Dieser Commit ist enthalten in:
@ -19,6 +19,10 @@ use Assert\Assert;
|
||||
use Assert\InvalidArgumentException;
|
||||
use D3\PdfDocuments\Application\Model\AbstractClasses\pdfdocumentsGeneric;
|
||||
use OxidEsales\Eshop\Application\Model\Article;
|
||||
use OxidEsales\EshopCommunity\Internal\Container\ContainerFactory;
|
||||
use OxidEsales\EshopCommunity\Internal\Framework\Templating\TemplateRendererBridge;
|
||||
use OxidEsales\EshopCommunity\Internal\Framework\Templating\TemplateRendererBridgeInterface;
|
||||
use OxidEsales\Twig\TwigEngine;
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
@ -27,6 +31,22 @@ class articleDataSheet extends pdfdocumentsGeneric
|
||||
{
|
||||
protected ?Article $article = null;
|
||||
|
||||
public function genPdf( string $filename, int $language = 0, string $target = self::PDF_DESTINATION_STDOUT ): ?string
|
||||
{
|
||||
/** @var TemplateRendererBridge $bridge */
|
||||
$bridge = ContainerFactory::getInstance()->getContainer()->get(TemplateRendererBridgeInterface::class);
|
||||
Assert::that($bridge->getTemplateRenderer()->getTemplateEngine())
|
||||
->isInstanceOf(
|
||||
TwigEngine::class,
|
||||
<<<MSG
|
||||
The article data sheet is only provided by the Twig Engine.
|
||||
Please contact the author for further assistance.
|
||||
MSG
|
||||
);
|
||||
|
||||
return parent::genPdf( $filename, $language, $target );
|
||||
}
|
||||
|
||||
public function setArticle(Article $article): void
|
||||
{
|
||||
$this->article = $article;
|
||||
|
@ -28,7 +28,7 @@ class ArticleDetailsController_pdfdocuments extends ArticleDetailsController_pdf
|
||||
*/
|
||||
public function generateDataSheet(): void
|
||||
{
|
||||
$document = oxNew(ArticleDataSheet::class);
|
||||
$document = oxNew(articleDataSheet::class);
|
||||
$document->setArticle($this->getProduct());
|
||||
$document->downloadPdf();
|
||||
}
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren