Archived
1
0
Fork 0

app/library/Services.php: update session initialization

This commit is contained in:
Henrik Hautakoski 2022-07-26 20:18:07 +02:00
parent 2dd571cd3d
commit 771cb05b12

View file

@ -18,7 +18,6 @@ use Phalcon\Di\FactoryDefault as DiDefault,
Phalcon\Translate\Adapter\NativeArray as TranslateAdapter,
Phalcon\Logger,
Phalcon\Logger\Adapter\File as FileLogAdapter,
Phalcon\Session\Adapter\Files as SessionAdapter,
Phalcon\Mvc\Router;
use Httpcb\Auth,
@ -190,24 +189,22 @@ class Services extends DiDefault
protected function _initSession()
{
$config = $this->get('config');
$session = new \Phalcon\Session\Manager();
if (isset($config->session)) {
$data = $config->session->toArray();
$adapter = isset($data['adapter']) ? $data['adapter'] : 'Files';
$adapter_name = isset($data['adapter']) ? $data['adapter'] : 'Stream';
$options = $data['options'];
// For "Files": Set session path if defined.
if ($adapter === 'Files' && isset($options['path'])) {
session_save_path($config->application->path);
$class = 'Phalcon\Session\Adapter\\' . $adapter_name;
$adapter = new $class($options);
}
// Default to Stream
else {
$adapter = new \Phalcon\Session\Adapter\Stream();
}
$class = 'Phalcon\Session\Adapter\\' . $adapter;
$session = new $class($options);
}
// Default to File storage
else {
$session = new \Phalcon\Session\Adapter\Files();
}
$session->setAdapter($adapter);
// Start session.
$session->start();