diff options
author | Igor Scheller <igor.scheller@igorshp.de> | 2018-08-26 02:54:52 +0200 |
---|---|---|
committer | Igor Scheller <igor.scheller@igorshp.de> | 2018-08-29 23:46:11 +0200 |
commit | bb3d16d273bb3e4552e4869dd22cb2c2d81f5387 (patch) | |
tree | 7de41548a5bd3a56aead1d9d528aa93e058e973a /src/Renderer/TwigServiceProvider.php | |
parent | a1bc763a16ee8be109de5c9053fbc5eded53824e (diff) |
Added Twig template renderer, closes #338
Diffstat (limited to 'src/Renderer/TwigServiceProvider.php')
-rw-r--r-- | src/Renderer/TwigServiceProvider.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/Renderer/TwigServiceProvider.php b/src/Renderer/TwigServiceProvider.php new file mode 100644 index 00000000..23810863 --- /dev/null +++ b/src/Renderer/TwigServiceProvider.php @@ -0,0 +1,31 @@ +<?php + +namespace Engelsystem\Renderer; + +use Engelsystem\Container\ServiceProvider; +use Twig_Environment as Twig; +use Twig_LoaderInterface as TwigLoaderInterface; + +class TwigServiceProvider extends ServiceProvider +{ + public function register() + { + $this->registerTwigEngine(); + } + + protected function registerTwigEngine() + { + $viewsPath = $this->app->get('path.views'); + + $twigLoader = $this->app->make(TwigLoader::class, ['paths' => $viewsPath]); + $this->app->instance(TwigLoader::class, $twigLoader); + $this->app->instance(TwigLoaderInterface::class, $twigLoader); + + $twig = $this->app->make(Twig::class); + $this->app->instance(Twig::class, $twig); + + $twigEngine = $this->app->make(TwigEngine::class); + $this->app->instance('renderer.twigEngine', $twigEngine); + $this->app->tag('renderer.twigEngine', ['renderer.engine']); + } +} |