AdSearchType   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 3
eloc 19
dl 0
loc 34
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A getBlockPrefix() 0 3 1
A configureOptions() 0 6 1
A buildForm() 0 16 1
1
<?php
2
3
namespace App\Form;
4
5
use App\Entity\AdSearch;
6
use App\Entity\Category;
7
use App\Entity\Department;
8
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
9
use Symfony\Component\Form\AbstractType;
10
use Symfony\Component\Form\Extension\Core\Type\CollectionType;
11
use Symfony\Component\Form\FormBuilderInterface;
12
use Symfony\Component\OptionsResolver\OptionsResolver;
13
14
class AdSearchType extends AbstractType
15
{
16
    public function buildForm(FormBuilderInterface $builder, array $options)
17
    {
18
        $builder
19
            ->add('department', EntityType::class, [
20
                'class' => Department::class,
21
                'choice_label' => 'name',
22
                'multiple' => false,
23
                'placeholder' => 'Choisissez un département',
24
                'required' => false
25
            ])
26
            ->add('category', EntityType::class, [
27
                'required' => false,
28
                'label' => false,
29
                'class' => Category::class,
30
                'choice_label' => 'name',
31
                'multiple' => true
32
            ])
33
        ;
34
    }
35
36
    public function configureOptions(OptionsResolver $resolver)
37
    {
38
        $resolver->setDefaults([
39
            'data_class' => AdSearch::class,
40
            'method' => 'get',
41
            'csrf_protection' => false,
42
        ]);
43
    }
44
45
    public function getBlockPrefix()
46
    {
47
        return '';
48
    }
49
}
50