src/Form/Customer/TrackAndTraceSearchType.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Form\Customer;
  3. use App\Form\DataTransformer\UpperCaseTransformer;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\TextType;
  6. use Symfony\Component\Form\FormBuilderInterface;
  7. use Symfony\Component\OptionsResolver\OptionsResolver;
  8. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  9. use Symfony\Contracts\Translation\TranslatorInterface;
  10. /**
  11.  * Formulář na stránku track and trace pro vyhledání informací o zásilce podle uživatelského kódu.
  12.  */
  13. class TrackAndTraceSearchType extends AbstractType
  14. {
  15.     private TranslatorInterface $translator;
  16.     public function __construct(TranslatorInterface $translator)
  17.     {
  18.         $this->translator $translator;
  19.     }
  20.     public function buildForm(FormBuilderInterface $builder, array $options): void
  21.     {
  22.         $builder
  23.             ->add(
  24.                 'packageCode',
  25.                 TextType::class,
  26.                 ['label' => $this->translator->trans('Najdi zásilku:', [], 'customer'), 'translation_domain' => 'customer',
  27.                     'required' => true'attr' => [ 'pattern' => ".{0,64}"'class' => 'flex-fill  w-100']]
  28.             )
  29.             ->add(
  30.                 'next',
  31.                 SubmitType::class,
  32.                 ['label' => $this->translator->trans('Hledej', [], 'customer'), 'translation_domain' => 'customer''attr' => [
  33.                         'class' => 'btn btn-block btn-danger']]
  34.             );
  35.         $builder->get('packageCode')->addModelTransformer(new UpperCaseTransformer());
  36.     }
  37.     public function configureOptions(OptionsResolver $resolver): void
  38.     {
  39.         $resolver->setDefaults([
  40.             'data_class' => null,
  41.         ]);
  42.     }
  43. }