public function onSiteAccessMatch(PostSiteAccessMatchEvent $event) { if (!($event->getRequestType() === HttpKernelInterface::MASTER_REQUEST && isset($this->session) && !$this->session->isStarted() && $this->sessionStorage instanceof NativeSessionStorage)) { return; } $sessionOptions = (array) $this->configResolver->getParameter('session'); $sessionName = isset($sessionOptions['name']) ? $sessionOptions['name'] : $this->session->getName(); $sessionOptions['name'] = $this->getSessionName($sessionName, $event->getSiteAccess()); $this->sessionStorage->setOptions($sessionOptions); }
public function setOptions( array $options ) { if ( $this->innerSessionStorage instanceof NativeSessionStorage ) { $this->innerSessionStorage->setOptions( $options ); } }
/** * setOptions. * * {@inheritDoc} */ public function setOptions(array $options) { if (isset($_SERVER['HTTP_HOST'])) { $options["cookie_domain"] = '.' . $_SERVER['HTTP_HOST']; } return parent::setOptions($options); }
public static function start() { $app = Core::make('app'); if ($app->isRunThroughCommandLineInterface()) { $storage = new MockArraySessionStorage(); } else { if (Config::get('concrete.session.handler') == 'database') { $db = \Database::get(); $storage = new NativeSessionStorage(array(), new PdoSessionHandler($db->getWrappedConnection(), array('db_table' => 'Sessions', 'db_id_col' => 'sessionID', 'db_data_col' => 'sessionValue', 'db_time_col' => 'sessionTime'))); } else { //$storage = new NativeSessionStorage(array(), new NativeFileSessionHandler()); $storage = new NativeSessionStorage(array()); } $options = Config::get('concrete.session.cookie'); if ($options['cookie_path'] === false) { $options['cookie_path'] = $app['app_relative_path'] . '/'; } $options['gc_max_lifetime'] = Config::get('concrete.session.max_lifetime'); $storage->setOptions($options); } $session = new SymfonySession($storage); $session->setName(Config::get('concrete.session.name')); static::testSessionFixation($session); return $session; }
/** * {@inheritdoc} */ public function setOptions(array $options) { $options['cookie_domain'] = '.' . $this->domain; $options['cookie_httponly'] = true; $options['name'] = 'SUPERDESKPUBLISHER'; parent::setOptions($options); }
/** * @param \Illuminate\Config\Repository $config * @return \Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface */ private function getSessionStorage(Repository $config) { $app = $this->app; if ($app->isRunThroughCommandLineInterface()) { $storage = new MockArraySessionStorage(); } else { $handler = $this->getSessionHandler($config); $storage = new NativeSessionStorage(array(), $handler); // Initialize the storage with some options $options = $config->get('concrete.session.cookie'); if ($options['cookie_path'] === false) { $options['cookie_path'] = $app['app_relative_path'] . '/'; } $options['gc_maxlifetime'] = $config->get('concrete.session.max_lifetime'); $storage->setOptions($options); } return $storage; }