// Add thumbnail handler to app $app->container->singleton('thumbnailHandler', function () use($thumbnailHandler) { return $thumbnailHandler; }); // add file handler to app $app->container->singleton('fileHandler', function () use($fileHandler) { return $fileHandler; }); $app->container->singleton('registrationHandler', function () use($registrationHandler) { return $registrationHandler; }); $app->container->singleton('loginHandler', function () use($loginHandler) { return $loginHandler; }); $dataAccessorFactory = new \rmatil\cms\DataAccessor\DataAccessorFactory($entityManager, $app->getLog(), $fileHandler, $registrationHandler); $app->container->singleton('dataAccessorFactory', function () use($dataAccessorFactory) { return $dataAccessorFactory; }); // Add Basic Auth Security $app->add(new BasicAuthMiddleware($entityManager, 'Secured Area')); $corsOptions = array("origin" => "http://cms-frontend.dev.local", "maxAge" => 1728000, "allowCredentials" => true, "allowHeaders" => array("X-PINGOTHER", "Authorization", "Content-Type"), "allowMethods" => array("POST", "GET", "DELETE", "PUT", "OPTIONS", "HEAD")); $cors = new \CorsSlim\CorsSlim($corsOptions); $app->add($cors); /** @var \Twig_Environment $twig */ $twig = $app->view()->getEnvironment(); $twig->addExtension(new \rmatil\cms\Twig\MetadataFunction($entityManager)); $twig->addExtension(new \rmatil\cms\Twig\EventUtilities($entityManager)); $twig->addExtension(new \rmatil\cms\Twig\FileUtilities($entityManager)); include 'routes.php'; $app->run();