<?php
declare(strict_types=1);
namespace BitBag\OpenMarketplace\Component\Vendor\EventListener;
use BitBag\OpenMarketplace\Component\Vendor\Email\VendorEmailManagerInterface;
use BitBag\OpenMarketplace\Component\Vendor\Entity\VendorInterface;
use Sylius\Bundle\ResourceBundle\Event\ResourceControllerEvent;
final class VendorVerificationListener
{
public function __construct(
private VendorEmailManagerInterface $vendorEmailManager,
) {
}
public function onVendorAccept(ResourceControllerEvent $event): void
{
$vendor = $event->getSubject();
if (!$vendor instanceof VendorInterface) {
return;
}
$this->vendorEmailManager->sendVendorAcceptedEmail($vendor);
$this->vendorEmailManager->sendBuySubscriptionEmail($vendor);
}
public function onVendorReject(ResourceControllerEvent $event): void
{
$vendor = $event->getSubject();
if (!$vendor instanceof VendorInterface) {
return;
}
$this->vendorEmailManager->sendVendorRejectedEmail($vendor);
}
}