]> git.immae.eu Git - github/wallabag/wallabag.git/blob - app/AppKernel.php
Cleanup
[github/wallabag/wallabag.git] / app / AppKernel.php
1 <?php
2
3 use Symfony\Component\Config\Loader\LoaderInterface;
4 use Symfony\Component\DependencyInjection\ContainerBuilder;
5 use Symfony\Component\HttpKernel\Kernel;
6
7 class AppKernel extends Kernel
8 {
9 public function registerBundles()
10 {
11 $bundles = [
12 new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
13 new Symfony\Bundle\SecurityBundle\SecurityBundle(),
14 new Symfony\Bundle\TwigBundle\TwigBundle(),
15 new Symfony\Bundle\MonologBundle\MonologBundle(),
16 new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
17 new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
18 new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
19 new FOS\RestBundle\FOSRestBundle(),
20 new FOS\UserBundle\FOSUserBundle(),
21 new JMS\SerializerBundle\JMSSerializerBundle(),
22 new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
23 new Nelmio\CorsBundle\NelmioCorsBundle(),
24 new Liip\ThemeBundle\LiipThemeBundle(),
25 new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),
26 new Lexik\Bundle\FormFilterBundle\LexikFormFilterBundle(),
27 new FOS\OAuthServerBundle\FOSOAuthServerBundle(),
28 new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
29 new Scheb\TwoFactorBundle\SchebTwoFactorBundle(),
30 new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
31 new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
32 new Craue\ConfigBundle\CraueConfigBundle(),
33 new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
34 new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
35 new BD\GuzzleSiteAuthenticatorBundle\BDGuzzleSiteAuthenticatorBundle(),
36 new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
37
38 // wallabag bundles
39 new Wallabag\CoreBundle\WallabagCoreBundle(),
40 new Wallabag\ApiBundle\WallabagApiBundle(),
41 new Wallabag\UserBundle\WallabagUserBundle(),
42 new Wallabag\ImportBundle\WallabagImportBundle(),
43 new Wallabag\AnnotationBundle\WallabagAnnotationBundle(),
44 ];
45
46 if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
47 $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
48 $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
49 $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
50 $bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle();
51
52 if ('test' === $this->getEnvironment()) {
53 $bundles[] = new DAMA\DoctrineTestBundle\DAMADoctrineTestBundle();
54 }
55
56 if ('dev' === $this->getEnvironment()) {
57 $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
58 $bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
59 }
60 }
61
62 return $bundles;
63 }
64
65 public function getRootDir()
66 {
67 return __DIR__;
68 }
69
70 public function getCacheDir()
71 {
72 return dirname(__DIR__) . '/var/cache/' . $this->getEnvironment();
73 }
74
75 public function getLogDir()
76 {
77 return dirname(__DIR__) . '/var/logs';
78 }
79
80 public function registerContainerConfiguration(LoaderInterface $loader)
81 {
82 $loader->load($this->getRootDir() . '/config/config_' . $this->getEnvironment() . '.yml');
83
84 $loader->load(function ($container) {
85 if ($container->getParameter('use_webpack_dev_server')) {
86 $container->loadFromExtension('framework', [
87 'assets' => [
88 'base_url' => 'http://localhost:8080/',
89 ],
90 ]);
91 } else {
92 $container->loadFromExtension('framework', [
93 'assets' => [
94 'base_url' => $container->getParameter('domain_name'),
95 ],
96 ]);
97 }
98 });
99
100 $loader->load(function (ContainerBuilder $container) {
101 // $container->setParameter('container.autowiring.strict_mode', true);
102 // $container->setParameter('container.dumper.inline_class_loader', true);
103 $container->addObjectResource($this);
104 });
105 }
106 }