CreateRaType::configureOptions()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 6
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
/**
4
 * Copyright 2014 SURFnet bv
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\AccreditCandidateCommand;
22
use Symfony\Component\Form\AbstractType;
23
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
24
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
25
use Symfony\Component\Form\FormBuilderInterface;
26
use Symfony\Component\OptionsResolver\OptionsResolver;
27
28
class CreateRaType extends AbstractType
29
{
30
    public function buildForm(FormBuilderInterface $builder, array $options)
31
    {
32
        $options = array_combine(
33
            $builder->getData()->availableInstitutions,
34
            $builder->getData()->availableInstitutions
35
        );
36
37
        $builder
38
            ->add('location', TextareaType::class, [
39
                'label' => 'ra.management.form.create_ra.label.location'
40
            ])
41
            ->add('contactInformation', TextareaType::class, [
42
                'label' => 'ra.management.form.create_ra.label.contact_information'
43
            ])->add('roleAtInstitution', RoleAtInstitutionType::class, [
44
                'choices' => $options,
45
                'required' => true,
46
                'label' => 'ra.management.form.create_ra.label.role',
47
            ])
48
            ->add(
49
                $builder->create(
50
                    'button-group',
51
                    ButtonGroupType::class,
52
                    [
53
                        'inherit_data' => true,
54
                    ]
55
                )
56
                ->add('create_ra', SubmitType::class, [
57
                    'label' => 'ra.management.form.create_ra.label.create_ra',
58
                    'attr' => ['class' => 'btn btn-primary']
59
                ])
60
                ->add('cancel', AnchorType::class, [
61
                    'label' => 'ra.management.form.create_ra.label.cancel',
62
                    'route' => 'ra_management_ra_candidate_search',
63
                    'attr'  => ['class' => 'btn btn-link cancel'],
64
                ])
65
            )
66
        ;
67
    }
68
69
    public function configureOptions(OptionsResolver $resolver)
70
    {
71
        $resolver->setDefaults([
72
            'data_class' => AccreditCandidateCommand::class
73
        ]);
74
    }
75
76
    public function getBlockPrefix()
77
    {
78
        return 'ra_management_create_ra';
79
    }
80
}
81