<?php
namespace App\Controller\Product;
use App\Model\Form\FormSchema;
use App\Service\Product\ProductFormHandler;
use App\Voters\ProductVoter;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
class GetProductSearchFormAction extends AbstractController
{
/**
* @var ProductFormHandler
*/
private $productFormHandler;
/**
* @param ProductFormHandler $productFormHandler
*/
public function __construct(ProductFormHandler $productFormHandler)
{
$this->productFormHandler = $productFormHandler;
}
/**
* @return FormSchema|array
*/
public function __invoke(Request $request)
{
$this->denyAccessUnlessGranted(ProductVoter::PRODUCT_SHOW_LIST);
return $this->productFormHandler->getProductSearchForm((bool) $request->query->get('isLegacy', false));
}
}