first commit

This commit is contained in:
2025-08-02 16:30:27 +02:00
commit 23646bfcee
14851 changed files with 1750626 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
<?php
declare(strict_types=1);
namespace KupShop\PreordersBundle\Email;
use KupShop\KupShopBundle\Email\BaseEmail;
use KupShop\KupShopBundle\Email\EmailGroupTypeEnum;
use KupShop\PreordersBundle\Entity\UserPreorder;
use KupShop\PreordersBundle\Entity\UserPreorderMessage;
class UserPreorderEmail extends BaseEmail
{
protected static $name = 'Zpráva předobjednávky uživatele';
protected static $type = 'PREORDER_MESSAGE';
protected static $priority = -1;
protected static $group = EmailGroupTypeEnum::PREORDER;
protected $subject = 'Informace k Vaší předobjednávce';
protected $defaultEnabled = 'Y';
private UserPreorderMessage $message;
protected UserPreorder $userPreorder;
public function setMessage(UserPreorderMessage $message): self
{
$this->message = $message;
return $this;
}
public function setUserPreorder(UserPreorder $userPreorder): self
{
$this->userPreorder = $userPreorder;
return $this;
}
public function getEmail($replacements = []): array
{
$replacements += [
'EMAIL' => $this->message->text,
];
$message = parent::getEmail($replacements);
$message['to'] = $this->userPreorder->getUser()->email;
return $message;
}
public function testEmail(): array
{
return parent::getEmail([
'EMAIL' => 'Testovací zpráva předobjednávky uživatele!',
'to' => 'test@test.cz',
]);
}
}

View File

@@ -0,0 +1,34 @@
<?php
declare(strict_types=1);
namespace KupShop\PreordersBundle\Email;
use KupShop\KupShopBundle\Email\UserMessagesInterface;
use KupShop\KupShopBundle\Email\UserMessagesTrait;
class UserPreorderMessageEmail extends UserPreorderEmail implements UserMessagesInterface
{
use UserMessagesTrait;
protected static $type = 'PREORDER_USER_MESSAGE';
public function getMessages($languageID = null): array
{
if (!$languageID) {
$languageID = $this->userPreorder->getCustomData()->get('language');
}
return $this->fetchMessages($languageID);
}
public function getMessagesByStatus($status, $languageID = null): array
{
return [];
}
public function getObjectId(): ?int
{
return $this->userPreorder->getPreorder()->id;
}
}