1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| <?php
namespace App\Form;
use App\Entity\EtatsRdv;
use App\Repository\RendezVousRepository;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\SearchType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class RechercherRdvType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('champRecherche', SearchType::class, [
'mapped' => false, 'label' => 'Rechercher : ', 'attr' => ['placeholder' => 'Rechercher par nom, prénom, date ...(min. 2 caractères)']
])
->add('rechercherEtatRdv', EntityType::class, [
'class' => EtatsRdv::class, 'placeholder' => '-- Veuillez choisir un état de rdv --', 'multiple' => false, 'choice_label' => 'getEtat'
])
->add('listeRdvParMois', ChoiceType::class, [
'expanded'=>false,
'multiple'=>false,
'choice_value'=>'mois',
'choice_label' => function (RendezVousRepository $rendezVousRepository) {
return $rendezVousRepository->getListeMoisRdv();
},
'placeholder' => '-- Veuillez choisir un mois --'
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'attr' => ['id' => 'formRecherche']
]);
}
} |
Partager