src/Form/EventListener/Franchise/AddTemplateNameFieldSubscriber.php line 27

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Form\EventListener\Franchise;
  4. use App\Entity\Admin\TemplateName;
  5. use App\Form\FormHelper;
  6. use App\Repository\Admin\TemplateNameRepository;
  7. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  8. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  9. use Symfony\Component\Form\FormEvent;
  10. use Symfony\Component\Form\FormEvents;
  11. class AddTemplateNameFieldSubscriber extends FormHelper implements EventSubscriberInterface
  12. {
  13.     public function __construct(
  14.         private TemplateNameRepository $templateNameRepository
  15.     ) {
  16.     }
  17.     public static function getSubscribedEvents(): array
  18.     {
  19.         return [FormEvents::PRE_SET_DATA => 'preSetData'];
  20.     }
  21.     public function preSetData(FormEvent $event): void
  22.     {
  23.         $event->getForm()->add('templateName'EntityType::class, $this->getEntityParameters(
  24.             TemplateName::class,
  25.             'app.manager.pages.domains.form.template',
  26.             null,
  27.             true,
  28.             ['query_builder' => $this->templateNameRepository->getEnabledTemplatesQB()]
  29.         ));
  30.     }
  31. }