Example #1
0
        case 'file':
            $cache_driver = new \Stash\Driver\FileSystem();
            $cache_driver->setOptions($cache_config['file']);
            break;
        default:
        case 'memory':
        case 'ephemeral':
            $cache_driver = new \Stash\Driver\Ephemeral();
            break;
    }
    // Register Stash as session handler if necessary.
    if (!$cache_driver instanceof \Stash\Driver\Ephemeral) {
        $pool = new \Stash\Pool($cache_driver);
        $pool->setNamespace(\FA\Cache::getSitePrefix('session'));
        $session = new \Stash\Session($pool);
        \Stash\Session::registerHandler($session);
    }
    return $cache_driver;
});
$di->set('cache', array('className' => '\\FA\\Cache', 'arguments' => array(array('type' => 'service', 'name' => 'cache_driver'), array('type' => 'parameter', 'value' => 'user'))));
// Register URL handler.
$di->setShared('url', array('className' => '\\FA\\Url', 'arguments' => array(array('type' => 'service', 'name' => 'config'), array('type' => 'service', 'name' => 'request'), array('type' => 'service', 'name' => 'dispatcher'))));
// Register session service.
$di->setShared('session', '\\FA\\Session');
// Register CSRF prevention security token service.
$di->setShared('csrf', array('className' => '\\FA\\Csrf', 'arguments' => array(array('type' => 'service', 'name' => 'session'))));
// Register view helpers.
$di->setShared('viewHelper', '\\FA\\Phalcon\\Service\\ViewHelper');
// Register Flash notification service.
$di->setShared('flash', array('className' => '\\FA\\Flash', 'arguments' => array(array('type' => 'service', 'name' => 'session'))));
// Register global text parsing helper.