$response = new \Jowy\Phrest\Core\Response(new \League\Fractal\Manager()); $response->setPhalconResponse(new \Phalcon\Http\Response()); return $response; }); $di->set("router", function () { $router = new \Phalcon\Mvc\Router\Annotations(false); $files = array_diff(scandir(__DIR__ . "/../app/controllers/"), array('..', '.')); foreach ($files as $file) { $file = array_slice(preg_split('/(?=[A-Z])/', $file), 1); $router->addResource("Jowy\\Phrest\\Controllers\\" . $file[0]); } return $router; }); $di->set("view", function () { $view = new \Phalcon\Mvc\View(); $view->disable(); return $view; }); $di->setShared("dispatcher", function () use($di) { $eventsManager = $di->getShared('eventsManager'); $security = new \Jowy\Phrest\Core\Security($di); $eventsManager->attach("dispatch", $security, 2); $dispatcher = new \Phalcon\Mvc\Dispatcher(); $dispatcher->setEventsManager($eventsManager); return $dispatcher; }); $di->setShared("security", function () { $security = new \Phalcon\Security(); $security->setWorkFactor(12); return $security; });