<?php
namespace App\Form;
// src/Form/CompanyStep1Type.php
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\FileType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Validator\Constraints\File;
use Symfony\Component\Validator\Constraints\NotBlank;
class CompanyStep1Type extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options){
$builder
->add('nom', TextType::class, [
'attr' => ['class' => 'form-control'],
'label' => 'Nom de l\'entreprise (*)'
])
->add('ninea', TextType::class, [
'attr' => ['class' => 'form-control'],
'label' => 'Ninéa ',
'required' => false,
])
->add('adresse', TextType::class, [
'attr' => ['class' => 'form-control'],
'label' => 'Adresse (*)',
])
/* ->add('longitude', TextType::class, [
'mapped' => false, // si ce n'est pas stocké dans l'entité
'attr' => ['class' => 'form-control'],
])
->add('latitude', TextType::class, [
'mapped' => false, // si ce n'est pas stocké dans l'entité
'attr' => ['class' => 'form-control'],
])
*/
->add('latitude', HiddenType::class, [
'constraints' => [
new NotBlank([
'message' => 'Veuillez choisir votre localisation sur la carte.',
]),
],
])
->add('longitude', HiddenType::class, [
'constraints' => [
new NotBlank([
'message' => 'Veuillez choisir votre localisation sur la carte.',
]),
],
])
// ->add('legalForm', TextType::class, ['required'=>false])
// ->add('registrationNumber', TextType::class, ['required'=>false])
/* ->add('logoFile', FileType::class, ['required'=>false, 'mapped'=>false,
'label' => 'Logo de l\'entreprise ',
'attr' => ['class' => 'form-control'],
])*/
->add('logoFile', FileType::class, [
'mapped' => false,
'required' => false,
'label' => 'Logo de l\'entreprise ',
'attr' => ['class' => 'form-control'],
'constraints' => [
new File([
'maxSize' => '5M',
'mimeTypes' => [
'image/jpeg',
'image/png',
'image/gif',
'image/webp',
],
'mimeTypesMessage' => 'Veuillez uploader une image valide (JPEG, PNG, GIF ou WEBP)',
])
],
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'csrf_protection' => false,
]);
}
}