/** Services */ $services = new Di\FactoryDefault(); $services->set('db', function () use($config) { return new Db\Adapter\Pdo\Mysql(array('host' => $config->db->host, 'port' => $config->db->port, 'dbname' => $config->db->dbname, 'username' => $config->db->username, 'password' => $config->db->password)); }, true); $services->set('url', function () { $url = new Mvc\Url(); $url->setBaseUri('/'); return $url; }, true); $services->set('view', function () { //$manager = new \Phalcon\Events\Manager(); //$manager->attach('view:beforeRender', function ($event, $view) { // //}); $view = new Mvc\View(); $view->setViewsDir(VIEWS_PATH); $view->setRenderLevel(Mvc\View::LEVEL_ACTION_VIEW); $view->registerEngines(array('.volt' => 'volt')); //$view->setEventsManager($manager); return $view; }, true); $services->set('volt', function ($view, $services) { $volt = new Mvc\View\Engine\Volt($view, $services); $volt->setOptions(array('compiledPath' => sprintf('%s/views/volt/', CACHE_PATH))); return $volt; }, true); $services->set('flash', function () { return new Flash\Session(array('error' => 'alert-box alert', 'notice' => 'alert-box', 'warning' => 'alert-box warning', 'success' => 'alert-box success')); }, true); $services->set('session', function () {
public static function component($componentName, array $params = array()) { return Mvc\View::getComponent($componentName, $params); }