QuestType   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 3
dl 0
loc 32
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A buildForm() 0 16 1
A configureOptions() 0 6 1
1
<?php
2
3
namespace Badger\Bundle\GameBundle\Form;
4
5
use Badger\Bundle\GameBundle\Entity\Quest;
6
use Badger\Bundle\GameBundle\Entity\Tag;
7
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
8
use Symfony\Component\Form\AbstractType;
9
use Symfony\Component\Form\Extension\Core\Type\DateType;
10
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
11
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
12
use Symfony\Component\Form\FormBuilderInterface;
13
use Symfony\Component\OptionsResolver\OptionsResolver;
14
15
/**
16
 * @license http://opensource.org/licenses/MIT The MIT License (MIT)
17
 */
18
class QuestType extends AbstractType
19
{
20
    /**
21
     * {@inheritdoc}
22
     */
23
    public function buildForm(FormBuilderInterface $builder, array $options)
24
    {
25
        $builder
26
            ->add('title')
27
            ->add('description', TextareaType::class)
28
            ->add('reward', IntegerType::class)
29
            ->add('startDate', DateType::class, ['widget' => 'single_text', 'format' => 'yyyy/MM/dd'])
30
            ->add('endDate', DateType::class, ['widget' => 'single_text', 'format' => 'yyyy/MM/dd'])
31
            ->add('tags', EntityType::class, [
32
                'label'    => 'Tagged in',
33
                'multiple' => true,
34
                'required' => false,
35
                'class'    => Tag::class
36
            ])
37
        ;
38
    }
39
40
    /**
41
     * {@inheritdoc}
42
     */
43
    public function configureOptions(OptionsResolver $resolver)
44
    {
45
        $resolver->setDefaults([
46
            'data_class' => Quest::class
47
        ]);
48
    }
49
}
50