PTSSyliusReferralExtension   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 15
c 1
b 0
f 0
dl 0
loc 25
rs 10
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A load() 0 20 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace PTS\SyliusReferralPlugin\DependencyInjection;
6
7
use Symfony\Component\Config\FileLocator;
8
use Symfony\Component\DependencyInjection\ContainerBuilder;
9
use Symfony\Component\DependencyInjection\Extension\Extension;
10
use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
11
12
final class PTSSyliusReferralExtension extends Extension
13
{
14
    /**
15
     * {@inheritdoc}
16
     */
17
    public function load(array $config, ContainerBuilder $container): void
18
    {
19
        $config = $this->processConfiguration($this->getConfiguration([], $container), $config);
0 ignored issues
show
Bug introduced by
It seems like $this->getConfiguration(array(), $container) can also be of type null; however, parameter $configuration of Symfony\Component\Depend...:processConfiguration() does only seem to accept Symfony\Component\Config...\ConfigurationInterface, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

19
        $config = $this->processConfiguration(/** @scrutinizer ignore-type */ $this->getConfiguration([], $container), $config);
Loading history...
20
        $loader = new YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
21
22
        $loader->load('services.yaml');
23
24
        $paths = $config['channel_paths'];
25
        $namedPaths = [];
26
        foreach ($paths as $path) {
27
            $pathArr = [
28
                'path' => $path['path'],
29
                'domain' => $path['domain'],
30
                'default' => $path['default']
31
            ];
32
            $namedPaths[$path['name']] = $pathArr;
33
        }
34
        $enabledEnrollerEdit = $config['customers']['enroller_edit']['enabled'];
35
        $container->setParameter('app_edit_enroller_enabled', $enabledEnrollerEdit);
36
        $container->setParameter('app_channel_paths', $namedPaths);
37
    }
38
}
39