<?php
declare(strict_types=1);
namespace App\EventListener;
use App\Files\Uploader\PartnerUploader;
use App\Files\Uploader\PaymentMethodUploader;
use Sylius\Bundle\ResourceBundle\Event\ResourceControllerEvent;
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
final class PaymentMethodListener {
private PaymentMethodUploader $paymentMethodUploader;
/**
* PaymentMethodListener constructor.
* @param PaymentMethodUploader $paymentMethodUploader
*/
public function __construct(PaymentMethodUploader $paymentMethodUploader)
{
$this->paymentMethodUploader = $paymentMethodUploader;
}
/**
* @param ResourceControllerEvent $paymentMethod
*/
public function pre_create(ResourceControllerEvent $paymentMethod): void
{
$file = $paymentMethod->getSubject()->getFile();
if ($file !== null) {
$pathFile = $this->paymentMethodUploader->upload($file);
$paymentMethod->getSubject()->setFilePath($pathFile);
}
}
public function pre_update(ResourceControllerEvent $paymentMethod): void{
$file = $paymentMethod->getSubject()->getFile();
if($file === null)
return;
$pathFile = $this->paymentMethodUploader->upload($file);
$paymentMethod->getSubject()->setFilePath($pathFile);
}
}