src/Form/Front/ProjectLeaderType.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Form\Front;
  3. use App\Entity\ProjectLeader;
  4. use App\Entity\ProjectLeaderType as ProjectLeaderTypeEntity;
  5. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  6. use Symfony\Component\Form\AbstractType;
  7. use Symfony\Component\Form\Extension\Core\Type\TextareaType;
  8. use Symfony\Component\Form\Extension\Core\Type\TextType;
  9. use Symfony\Component\Form\FormBuilderInterface;
  10. use Symfony\Component\OptionsResolver\OptionsResolver;
  11. class ProjectLeaderType extends AbstractType
  12. {
  13.     public function buildForm(FormBuilderInterface $builder, array $options): void
  14.     {
  15.         $builder
  16.             ->add('type'EntityType::class, ['class' => ProjectLeaderTypeEntity::class, 'multiple' => false,
  17.                 'required'=> true'expanded' => false'label' => 'professionalprofile.projectleader.type''choice_label' => 'label',
  18.                 'query_builder' => function($er) {
  19.                     return $er->createQueryBuilder('a')
  20.                         ->addOrderBy('a.position''ASC')
  21.                         ->addOrderBy('a.label''ASC')
  22.                         ;
  23.                 }
  24.             ])
  25.             ->add('description',TextareaType::class, ['required' => true'label' => 'description'])
  26.             ->add('otherType'TextType::class, ['label' => 'form.tospecify'])
  27.         ;
  28.     }
  29.     public function configureOptions(OptionsResolver $resolver): void
  30.     {
  31.         $resolver->setDefaults([
  32.             'data_class' => ProjectLeader::class,
  33.         ]);
  34.     }
  35. }