src/Form/Search/GlobalSearch.php line 18

Open in your IDE?
  1. <?php
  2. /*
  3.  * Author: Dominik Piekarski <code@dompie.de>
  4.  * Created at: 2020/10/13 12:29
  5.  */
  6. declare(strict_types=1);
  7. namespace App\Form\Search;
  8. use App\Dto\SearchOptions;
  9. use Symfony\Component\Form\AbstractType;
  10. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  11. use Symfony\Component\Form\Extension\Core\Type\TextType;
  12. use Symfony\Component\Form\FormBuilderInterface;
  13. use Symfony\Component\OptionsResolver\OptionsResolver;
  14. use Symfony\Component\Routing\RouterInterface;
  15. class GlobalSearch extends AbstractType
  16. {
  17.     protected RouterInterface $router;
  18.     public const BLOCK_PREFIX '_gs';
  19.     public function __construct(RouterInterface $router)
  20.     {
  21.         $this->router $router;
  22.     }
  23.     public function buildForm(FormBuilderInterface $builder, array $options)
  24.     {
  25.         $builder->add('term'TextType::class, [
  26.             'required' => false,
  27.             'attr' => [
  28.                 'maxlength' => 100,
  29.                 'placeholder' => $options['placeholder'] ?? 'Frivol.com durchsuchen'
  30.             ]
  31.         ])->add('searchType'HiddenType::class, [
  32.             'required' => false,
  33.         ]);
  34.     }
  35.     public function configureOptions(OptionsResolver $resolver)
  36.     {
  37.         $resolver->setDefaults([
  38.             'action' => $this->router->generate('app_searchresult_findall'),
  39.             'method' => 'GET',
  40.             'data_class'SearchOptions::class,
  41.             'csrf_protection' => false,
  42.         ]);
  43.     }
  44.     public function getBlockPrefix()
  45.     {
  46.         return self::BLOCK_PREFIX;
  47.     }
  48. }