SelectInstitutionType   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

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

3 Methods

Rating   Name   Duplication   Size   Complexity  
A buildForm() 0 19 1
A configureOptions() 0 8 1
A getBlockPrefix() 0 4 1
1
<?php
2
3
/**
4
 * Copyright 2019 SURFnet B.V.
5
 *
6
 * Licensed under the Apache License, Version 2.0 (the "License");
7
 * you may not use this file except in compliance with the License.
8
 * You may obtain a copy of the License at
9
 *
10
 *     http://www.apache.org/licenses/LICENSE-2.0
11
 *
12
 * Unless required by applicable law or agreed to in writing, software
13
 * distributed under the License is distributed on an "AS IS" BASIS,
14
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
 * See the License for the specific language governing permissions and
16
 * limitations under the License.
17
 */
18
19
namespace Surfnet\StepupRa\RaBundle\Form\Type;
20
21
use Surfnet\StepupRa\RaBundle\Command\SelectInstitutionCommand;
22
use Symfony\Component\Form\AbstractType;
23
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
24
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
25
use Symfony\Component\Form\FormBuilderInterface;
26
use Symfony\Component\OptionsResolver\OptionsResolver;
27
28
class SelectInstitutionType extends AbstractType
29
{
30
    public function buildForm(FormBuilderInterface $builder, array $options)
31
    {
32
        $builder
33
            ->add(
34
                'institution',
35
                ChoiceType::class,
36
                [
37
                    'label' => 'ra.form.select_institution.label.institution',
38
                    'choices' => $builder->getData()->availableInstitutions,
39
                ]
40
            )->add(
41
                'select_and_apply',
42
                SubmitType::class,
43
                [
44
                    'label' => 'ra.form.select_institution.button.switch',
45
                    'attr' => ['class' => 'btn btn-primary pull-right'],
46
                ]
47
            );
48
    }
49
50
    public function configureOptions(OptionsResolver $resolver)
51
    {
52
        $resolver->setDefaults(
53
            [
54
                'data_class' => SelectInstitutionCommand::class,
55
            ]
56
        );
57
    }
58
59
    public function getBlockPrefix()
60
    {
61
        return 'select_institution';
62
    }
63
}
64