src/Form/LawOfficeType.php line 17

  1. <?php
  2. namespace App\Form;
  3. use App\Entity\LawBarOffice;
  4. use App\Entity\LawOffice;
  5. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  6. use Symfony\Component\Form\AbstractType;
  7. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  8. use Symfony\Component\Form\Extension\Core\Type\CollectionType;
  9. use Symfony\Component\Form\Extension\Core\Type\TelType;
  10. use Symfony\Component\Form\Extension\Core\Type\TextType;
  11. use Symfony\Component\Form\FormBuilderInterface;
  12. use Symfony\Component\OptionsResolver\OptionsResolver;
  13. use Vich\UploaderBundle\Form\Type\VichImageType;
  14. class LawOfficeType extends AbstractType
  15. {
  16.     public function buildForm(FormBuilderInterface $builder, array $options): void
  17.     {
  18.         $builder
  19.             ->add('lawBarOffice',EntityType::class,
  20.                 ['class'=>LawBarOffice::class,'choice_label'=>'lawBarOfficeName',
  21.                     'placeholder' => 'select.LawBarOffice',
  22.                     'label'=>'lawBarOffice',
  23.                     'translation_domain' => 'translation',
  24.                     'attr' => ['class' => 'select2'],])
  25.             ->add('prefix', ChoiceType::class, [
  26.                 // 'mapped' => false,
  27.                 'placeholder' => 'select.prefix',
  28.                 'choices'  => [
  29.                     'ذة' => 1,
  30.                     'ذ' => 2,
  31.                     'ذان' => 3,
  32.                 ],
  33.                 'translation_domain' => 'translation',
  34.                 'attr' => ['class' => 'select2'],
  35.                 'label' => 'prefix',
  36.                 'required' => true,
  37.             ])
  38.             ->add('lawOfficeName',TextType::class,
  39.                 ['label' => 'lawOfficeName',
  40.                     'attr' => ['placeholder' => 'lawOfficeName','class'=>'form-control'],
  41.                     'translation_domain' => 'translation',])
  42.             ->add('officePhoneNumber',TelType::class,
  43.                 ['label' => 'officePhoneNumber',
  44.                     'attr' => ['placeholder' => 'officePhoneNumber','class'=>'form-control'],
  45.                     'translation_domain' => 'translation',])
  46.             ->add('addressLine',TextType::class,
  47.                 ['label' => 'addressLine',
  48.                     'attr' => ['placeholder' => 'addressLine','class'=>'form-control'],
  49.                     'translation_domain' => 'translation',])
  50.             ->add('users', CollectionType::class, [
  51.                 'entry_type' => RegistrationFormType::class,
  52.                 'entry_options' => [
  53.                     // 'attr' => ['class' => 'col-sm-3'],
  54.                     'label' => false
  55.                 ],
  56.                 'allow_add' => false,
  57.                 ]);
  58.     }
  59.     public function configureOptions(OptionsResolver $resolver): void
  60.     {
  61.         $resolver->setDefaults([
  62.             'data_class' => LawOffice::class,
  63.         ]);
  64.     }
  65. }