select included documents for generating

# Conflicts:
#	Application/views/admin/de/pdfdocuments_lang.php
#	Application/views/admin/en/pdfdocuments_lang.php
#	metadata.php
This commit is contained in:
2025-05-17 22:12:02 +02:00
parent ba519af750
commit fd5896b5af
5 changed files with 65 additions and 9 deletions

View File

@ -15,13 +15,16 @@ declare(strict_types=1);
namespace D3\PdfDocuments\Application\Model\Registries;
use D3\PdfDocuments\Application\Model\Constants;
use D3\PdfDocuments\Application\Model\Documents\deliverynotePdf;
use D3\PdfDocuments\Application\Model\Documents\deliverynotewithoutlogoPdf;
use D3\PdfDocuments\Application\Model\Documents\invoicePdf;
use D3\PdfDocuments\Application\Model\Documents\invoicewithoutlogoPdf;
use D3\PdfDocuments\Application\Model\Exceptions\wrongPdfGeneratorInterface;
use D3\PdfDocuments\Application\Model\Interfaces\pdfdocumentsGenericInterface;
use D3\PdfDocuments\Application\Model\Interfaces\pdfdocumentsOrderInterface;
use OxidEsales\EshopCommunity\Internal\Container\ContainerFactory;
use OxidEsales\EshopCommunity\Internal\Framework\Module\Facade\ModuleSettingService;
use OxidEsales\EshopCommunity\Internal\Framework\Module\Facade\ModuleSettingServiceInterface;
class registryOrdermanagerActions extends registryAbstract implements registryOrdermanagerActionsInterface
{
@ -30,9 +33,15 @@ class registryOrdermanagerActions extends registryAbstract implements registryOr
*/
public function __construct()
{
/** @var ModuleSettingService $settingsService */
$settingsService = ContainerFactory::getInstance()->getContainer()->get(ModuleSettingServiceInterface::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocInvoice', Constants::OXID_MODULE_ID))
$this->addGenerator(invoicePdf::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocDeliveryNote', Constants::OXID_MODULE_ID))
$this->addGenerator(deliverynotePdf::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocInvoiceNoLogo', Constants::OXID_MODULE_ID))
$this->addGenerator(invoicewithoutlogoPdf::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocDeliveryNoteNoLogo', Constants::OXID_MODULE_ID))
$this->addGenerator(deliverynotewithoutlogoPdf::class);
}

View File

@ -15,12 +15,16 @@ declare(strict_types=1);
namespace D3\PdfDocuments\Application\Model\Registries;
use D3\PdfDocuments\Application\Model\Constants;
use D3\PdfDocuments\Application\Model\Documents\deliverynotePdf;
use D3\PdfDocuments\Application\Model\Documents\deliverynotewithoutlogoPdf;
use D3\PdfDocuments\Application\Model\Documents\invoicePdf;
use D3\PdfDocuments\Application\Model\Documents\invoicewithoutlogoPdf;
use D3\PdfDocuments\Application\Model\Exceptions\wrongPdfGeneratorInterface;
use D3\PdfDocuments\Application\Model\Interfaces\pdfdocumentsOrderInterface;
use OxidEsales\EshopCommunity\Internal\Container\ContainerFactory;
use OxidEsales\EshopCommunity\Internal\Framework\Module\Facade\ModuleSettingService;
use OxidEsales\EshopCommunity\Internal\Framework\Module\Facade\ModuleSettingServiceInterface;
class registryOrderoverview extends registryAbstract implements registryOrderoverviewInterface
{
@ -29,9 +33,15 @@ class registryOrderoverview extends registryAbstract implements registryOrderove
*/
public function __construct()
{
$this->addGenerator(invoicePdf::class);
/** @var ModuleSettingService $settingsService */
$settingsService = ContainerFactory::getInstance()->getContainer()->get(ModuleSettingServiceInterface::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocInvoice', Constants::OXID_MODULE_ID))
$this->addGenerator( invoicePdf::class );
if ($settingsService->getBoolean('d3PdfDocumentsDocDeliveryNote', Constants::OXID_MODULE_ID))
$this->addGenerator(deliverynotePdf::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocInvoiceNoLogo', Constants::OXID_MODULE_ID))
$this->addGenerator(invoicewithoutlogoPdf::class);
if ($settingsService->getBoolean('d3PdfDocumentsDocDeliveryNoteNoLogo', Constants::OXID_MODULE_ID))
$this->addGenerator(deliverynotewithoutlogoPdf::class);
}

View File

@ -35,6 +35,12 @@ return [
'SHOP_MODULE_GROUP_'. Constants::OXID_MODULE_ID.'invoice' => 'Rechnung',
'SHOP_MODULE_invoicePaymentTerm' => 'Zahlungsziel (in Tagen)',
'SHOP_MODULE_GROUP_d3PdfDocumentsdocuments' => 'Dokumente',
'SHOP_MODULE_d3PdfDocumentsDocInvoice' => 'Rechnung',
'SHOP_MODULE_d3PdfDocumentsDocInvoiceNoLogo' => 'Rechnung ohne Logo',
'SHOP_MODULE_d3PdfDocumentsDocDeliveryNote' => 'Lieferschein',
'SHOP_MODULE_d3PdfDocumentsDocDeliveryNoteNoLogo' => 'Lieferschein ohne Logo',
'D3_PDFDOCUMENTS' => 'PDF-Dokumente',
'D3_PDFDOCUMENTS_INVOICE' => 'Rechnung',
'D3_PDFDOCUMENTS_INVOICE_WITHOUT_LOGO' => 'Rechnung ohne Logo',

View File

@ -34,6 +34,13 @@ return [
'SHOP_MODULE_GROUP_'. Constants::OXID_MODULE_ID.'invoice' => 'Invoice',
'SHOP_MODULE_invoicePaymentTerm' => 'Payment term (in days)',
'SHOP_MODULE_GROUP_d3PdfDocumentsdocuments' => 'Documents',
'SHOP_MODULE_d3PdfDocumentsDocInvoice' => 'Invoice',
'SHOP_MODULE_d3PdfDocumentsDocInvoiceNoLogo' => 'Invoice without logo',
'SHOP_MODULE_d3PdfDocumentsDocDeliveryNote' => 'Delivery note',
'SHOP_MODULE_d3PdfDocumentsDocDeliveryNoteNoLogo' => 'Delivery note without logo',
'D3_PDFDOCUMENTS' => 'PDF Documents',
'D3_PDFDOCUMENTS_INVOICE' => 'Invoice',
'D3_PDFDOCUMENTS_INVOICE_WITHOUT_LOGO' => 'Invoice without logo',

View File

@ -106,6 +106,30 @@ $aModule = [
'type' => 'num',
'value' => 7,
],
[
'group' => $sModuleId.'documents',
'name' => $sModuleId.'DocInvoice',
'type' => 'bool',
'value' => true
],
[
'group' => $sModuleId.'documents',
'name' => $sModuleId.'DocInvoiceNoLogo',
'type' => 'bool',
'value' => true
],
[
'group' => $sModuleId.'documents',
'name' => $sModuleId.'DocDeliveryNote',
'type' => 'bool',
'value' => true
],
[
'group' => $sModuleId.'documents',
'name' => $sModuleId.'DocDeliveryNoteNoLogo',
'type' => 'bool',
'value' => true
],
],
];
// @codeCoverageIgnoreEnd