InitiateGssfType::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 2015 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 Symfony\Component\Form\AbstractType;
22
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
23
use Symfony\Component\Form\FormBuilderInterface;
24
use Symfony\Component\OptionsResolver\OptionsResolver;
25
use Symfony\Component\Routing\RouterInterface;
26
27
class InitiateGssfType extends AbstractType
28
{
29
    /**
30
     * @var RouterInterface
31
     */
32
    private $router;
33
34
    public function __construct(RouterInterface $router)
35
    {
36
        $this->router = $router;
37
    }
38
39
    public function buildForm(FormBuilderInterface $builder, array $options)
40
    {
41
        $action = $this->router->generate(
42
            'ra_vetting_gssf_authenticate',
43
            ['procedureId' => $options['procedureId'], 'provider' => $options['provider']]
44
        );
45
46
        $builder
47
            ->add('submit', SubmitType::class, [
48
                'attr'  => ['class' => 'btn btn-primary'],
49
                /** @Ignore */
50
                'label' => $options['label']
51
            ])
52
            ->setAction($action);
53
    }
54
55
    public function configureOptions(OptionsResolver $resolver)
56
    {
57
        $resolver->setRequired(['procedureId', 'provider']);
58
        $resolver->setAllowedTypes('procedureId', 'string');
59
        $resolver->setAllowedTypes('provider', 'string');
60
    }
61
62
    public function getBlockPrefix()
63
    {
64
        return 'ra_initiate_gssf';
65
    }
66
}
67