src/Form/ImageManagerType.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Entity\ImageManager;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\FileType;
  6. use Symfony\Component\Form\FormBuilderInterface;
  7. use Symfony\Component\OptionsResolver\OptionsResolver;
  8. use Symfony\Component\Validator\Constraints\File;
  9. use Symfony\Component\Validator\Constraints\Image;
  10. class ImageManagerType extends AbstractType
  11. {
  12.     public function buildForm(FormBuilderInterface $builder, array $options)
  13.     {
  14.         $builder
  15.             ->add('file'FileType::class, [
  16.                 'label' => 'Choisir fichier',
  17.                 'label_attr' => ['class' => 'custom-file-label'],
  18.                 'attr' => ['class' => 'custom-file-input'],
  19.                 'constraints' => [
  20.                     new File([
  21.                         'maxSize' => '10M',
  22.                         'mimeTypes' => [
  23.                             'image/png',
  24.                             'image/jpeg',
  25.                             'image/jpg'
  26.                         ],
  27.                         'mimeTypesMessage' => 'Veuillez télécharger un fichier image (png, jpeg ou jpg) valide',
  28.                         'maxSizeMessage' => 'Le fichier est trop volumineux ({{ size }} {{ suffix }}). La taille maximale autorisée est {{ limit }} {{ suffix }}.',
  29.                         'groups' => ['bp_cover']
  30.                     ])
  31.                 ]
  32.             ])
  33.         ;
  34.     }
  35.     public function configureOptions(OptionsResolver $resolver)
  36.     {
  37.         $resolver->setDefaults([
  38.             'data_class' => ImageManager::class,
  39.         ]);
  40.     }
  41. }