<?php

namespace App\Form;

use App\Entity\Participation;
use App\Entity\Party;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class ParticipationType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options): void
    {
        $builder
            ->add('participantName', null, [
                'label' => 'Prénom et nom, ou pseudonyme',
                'required' => true,
                'help' => 'Une identité pour vérifier votre présence à la table.',
                'label_attr' => ['class' => 'label'],
                'attr' => ['class' => 'input'],
                'row_attr' => ['class' => 'field'],
                'help_attr' => ['class' => 'help'],
            ])
            ->add('participantEmail', null, [
                'label' => 'email',
                'required' => true,
                'help' => 'Entrez une adresse email. Utilisée pour confirmer votre inscription.',
                'label_attr' => ['class' => 'label'],
                'attr' => ['class' => 'input'],
                'row_attr' => ['class' => 'field'],
                'help_attr' => ['class' => 'help'],
            ])
            ->add('participantPhone', null, [
                'label' => 'Numéro de téléphone mobile',
                'required' => false,
                'help' => 'Entrez un numéro de téléphone mobile (optionnel, pour vous contacter en urgence au sujet de votre inscription).',
                'label_attr' => ['class' => 'label'],
                'attr' => ['class' => 'input'],
                'row_attr' => ['class' => 'field'],
                'help_attr' => ['class' => 'help'],
            ])
            ->add('consentMail', null, [
                'label' => 'Je souhaites recevoir par courriel les informations de l\'association.',
                'label_attr' => ['class' => 'checkbox'],
                'attr' => ['class' => 'checkbox'],
                'row_attr' => ['class' => 'field'],
            ])
            ->add('consentImage', null, [
                'label' => 'J\'autorise la diffusion de mon image',
                'help' => 'En cas de prise de photo, j\'autorise l\'association aux Portes de l\'Imaginaire à diffuser mon image sur tout support de communication (site Internet, réseau social...) pour communiquer sur ses activités. En cas de refus, mon visage sera flouté sur toute diffusion de l\'image.',
                'label_attr' => ['class' => 'checkbox'],
                'attr' => ['class' => 'checkbox'],
                'row_attr' => ['class' => 'field'],
                'help_attr' => ['class' => 'help'],
            ])
        ;
    }

    public function configureOptions(OptionsResolver $resolver): void
    {
        $resolver->setDefaults([
            'data_class' => Participation::class,
        ]);
    }
}
