<?php $injector = new \Auryn\Provider(); $injector->alias('Http\\Response', 'Http\\HttpResponse'); $injector->share('Http\\HttpRequest'); $injector->define('Http\\HttpRequest', [':get' => $_GET, ':post' => $_POST, ':cookies' => $_COOKIE, ':files' => $_FILES, ':server' => $_SERVER]); $injector->alias('Http\\Request', 'Http\\HttpRequest'); $injector->share('Http\\HttpResponse'); $injector->define('Mustache_Engine', [':options' => ['loader' => new Mustache_Loader_FilesystemLoader(dirname(__DIR__) . '/templates', ['extension' => '.html'])]]); $injector->delegate('Twig_Environment', function () use($injector) { $loader = new Twig_Loader_Filesystem(dirname(__DIR__) . '/templates'); $twig = new Twig_Environment($loader); return $twig; }); $injector->alias('Example\\Template\\Renderer', 'Example\\Template\\TwigRenderer'); $injector->alias('Example\\Template\\FrontendRenderer', 'Example\\Template\\FrontendTwigRenderer'); $injector->define('Example\\Page\\FilePageReader', [':pageFolder' => __DIR__ . '/../pages']); $injector->alias('Example\\Page\\PageReader', 'Example\\Page\\FilePageReader'); $injector->share('Example\\Page\\FilePageReader'); $injector->alias('Example\\Menu\\MenuReader', 'Example\\Menu\\ArrayMenuReader'); $injector->share('Example\\Menu\\FileMenuReader'); return $injector;