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 );
     }
 }
Ejemplo n.º 3
0
 /**
  * setOptions.
  *
  * {@inheritDoc}
  */
 public function setOptions(array $options)
 {
     if (isset($_SERVER['HTTP_HOST'])) {
         $options["cookie_domain"] = '.' . $_SERVER['HTTP_HOST'];
     }
     return parent::setOptions($options);
 }
Ejemplo n.º 4
0
 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);
 }
Ejemplo n.º 6
0
 /**
  * @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;
 }