src/V4/Controller/CustomEventTrigger/GetCustomEventTriggerFormAction.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\V4\Controller\CustomEventTrigger;
  3. use ApiPlatform\Core\Exception\ResourceClassNotSupportedException;
  4. use App\Model\Form\FormSchema;
  5. use App\V4\Service\CustomEventTrigger\CustomEventTriggerFormHandler;
  6. use App\V4\Voters\CustomEventTriggerVoter;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\JsonResponse;
  9. use Symfony\Component\HttpFoundation\Request;
  10. class GetCustomEventTriggerFormAction extends AbstractController
  11. {
  12.     /**
  13.      * @var CustomEventTriggerFormHandler
  14.      */
  15.     private $customEventTriggerFormHandler;
  16.     /**
  17.      * @param CustomEventTriggerFormHandler $customEventTriggerFormHandler
  18.      */
  19.     public function __construct(CustomEventTriggerFormHandler $customEventTriggerFormHandler)
  20.     {
  21.         $this->customEventTriggerFormHandler $customEventTriggerFormHandler;
  22.     }
  23.     /**
  24.      * @param Request     $request
  25.      * @param string|null $id
  26.      *
  27.      * @return FormSchema|JsonResponse
  28.      *
  29.      * @throws ResourceClassNotSupportedException
  30.      */
  31.     public function __invoke(Request $request, ?string $id)
  32.     {
  33.         $this->denyAccessUnlessGranted(CustomEventTriggerVoter::CUSTOM_EVENT_TRIGGER_ADD_EDIT);
  34.         return $this->customEventTriggerFormHandler->getCustomEventTriggerForm($id$request->get('customerId'));
  35.     }
  36. }