src/V4/Controller/Prospect/GetProspectSearchFormAction.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\V4\Controller\Prospect;
  3. use App\Model\Form\FormSchema;
  4. use App\V4\Service\Prospect\ProspectFormHandler;
  5. use App\V4\Voters\ProspectVoter;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\JsonResponse;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\Serializer\Exception\ExceptionInterface;
  10. class GetProspectSearchFormAction extends AbstractController
  11. {
  12.     /**
  13.      * @var ProspectFormHandler
  14.      */
  15.     private $prospectFormHandler;
  16.     /**
  17.      * @param ProspectFormHandler $prospectFormHandler
  18.      */
  19.     public function __construct(ProspectFormHandler $prospectFormHandler)
  20.     {
  21.         $this->prospectFormHandler $prospectFormHandler;
  22.     }
  23.     /**
  24.      * @param Request $request
  25.      *
  26.      * @return FormSchema|JsonResponse
  27.      *
  28.      * @throws ExceptionInterface
  29.      */
  30.     public function __invoke(Request $request)
  31.     {
  32.         $this->denyAccessUnlessGranted(ProspectVoter::PROSPECT_SHOW_LIST);
  33.         return $this->prospectFormHandler->getProspectSearchForm(
  34.             (bool) $request->query->get('isLegacy'false),
  35.             'true' === $request->query->get('isGeolocationSearch''false')
  36.         );
  37.     }
  38. }