src/Form/MessageType.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Entity\Message;
  4. use App\Entity\MessageReceiver;
  5. use Doctrine\ORM\EntityRepository;
  6. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  7. use Symfony\Component\Form\AbstractType;
  8. use Symfony\Component\Form\FormBuilderInterface;
  9. use Symfony\Component\OptionsResolver\OptionsResolver;
  10. class MessageType extends AbstractType
  11. {
  12.     public function buildForm(FormBuilderInterface $builder, array $options): void
  13.     {
  14.         $builder
  15.             ->add('receiver'EntityType::class, [
  16.                 'class'        => 'App\Entity\MessageReceiver',
  17.                 'label'        => 'Destinataire',
  18.                 'trim'         => true,
  19.                 'required'     => true,
  20.                 'choice_label' => 'name',
  21.                 'attr'         => [
  22.                     'class' => 'form-control',
  23.                 ],
  24.                 'query_builder' => function (EntityRepository $er) {
  25.                     return $er->createQueryBuilder('mr')
  26.                               ->orderBy('mr.name''ASC')
  27.                     ;
  28.                 },
  29.             ])
  30.             ->add('subject'null, [
  31.                 'label' => 'Sujet',
  32.             ],
  33.             )
  34.             ->add('body'null, [
  35.                 'label' => 'Message',
  36.                 'attr'  => [
  37.                     'rows' => '10',
  38.                 ],
  39.             ])
  40. //            ->add('created_at')
  41. //            ->add('sender')
  42. //            ->add('status')
  43.         ;
  44.     }
  45.     public function configureOptions(OptionsResolver $resolver): void
  46.     {
  47.         $resolver->setDefaults([
  48.                                    'data_class' => Message::class,
  49.                                ]);
  50.     }
  51. }