MenuProvider::boot()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 1 Features 0
Metric Value
dl 0
loc 3
c 1
b 1
f 0
rs 10
cc 1
eloc 1
nc 1
nop 1
1
<?php
2
3
namespace Dominikzogg\EnergyCalculator\Provider;
4
5
use Dominikzogg\EnergyCalculator\Menu\MenuBuilder;
6
use Silex\Application;
7
use Silex\ServiceProviderInterface;
8
9
class MenuProvider implements ServiceProviderInterface
10
{
11
    public function register(Application $app)
12
    {
13
        $app['menu_builder'] = $app->share(function (Application $app) {
14
            return new MenuBuilder(
15
                $app['knp_menu.factory'],
16
                $app['security.authorization_checker'],
17
                $app['security.token_storage'],
18
                $app['translator']
19
            );
20
        });
21
22
        $app['main_menu'] = function (Application $app) {
23
            $menuBuilder = $app['menu_builder'];
24
            /** @var MenuBuilder $menuBuilder */
25
            return $menuBuilder->buildMenu($app['request']);
26
        };
27
28
        $knpMenuMenus = $app['knp_menu.menus'];
29
        $knpMenuMenus['main'] = 'main_menu';
30
        $app['knp_menu.menus'] = $knpMenuMenus;
31
    }
32
33
    public function boot(Application $app)
34
    {
35
    }
36
}
37