Наследование: extends Symfony\Component\EventDispatcher\Event
 public function onSiteAccessMatch(PostSiteAccessMatchEvent $event)
 {
     if ($event->getRequestType() !== HttpKernelInterface::MASTER_REQUEST) {
         return;
     }
     $this->resetDynamicSettings();
 }
Пример #2
0
 public function onSiteAccessMatch(PostSiteAccessMatchEvent $event)
 {
     $request = $event->getRequest();
     $siteAccess = $event->getSiteAccess();
     // Injecting matched SiteAccess in the ServiceContainer.
     // All services depending on it will be "synchronized" with it.
     $this->container->set('ezpublish.siteaccess', $siteAccess);
     // We already have semanticPathinfo (sub-request)
     if ($request->attributes->has('semanticPathinfo')) {
         $vpString = $request->attributes->get('viewParametersString');
         if (!empty($vpString)) {
             $request->attributes->set('viewParameters', $this->generateViewParametersArray($vpString));
         } else {
             $request->attributes->set('viewParametersString', '');
             $request->attributes->set('viewParameters', array());
         }
         return;
     }
     // Analyse the pathinfo if needed since it might contain the siteaccess (i.e. like in URI mode)
     $pathinfo = $request->getPathInfo();
     if ($siteAccess->matcher instanceof URILexer) {
         $semanticPathinfo = $siteAccess->matcher->analyseURI($pathinfo);
     } else {
         $semanticPathinfo = $pathinfo;
     }
     // Get view parameters and cleaned up pathinfo (without view parameters string)
     list($semanticPathinfo, $viewParameters, $viewParametersString) = $this->getViewParameters($semanticPathinfo);
     // Storing the modified pathinfo in 'semanticPathinfo' request attribute, to keep a trace of it.
     // Routers implementing RequestMatcherInterface should thus use this attribute instead of the original pathinfo
     $request->attributes->set('semanticPathinfo', $semanticPathinfo);
     $request->attributes->set('viewParameters', $viewParameters);
     $request->attributes->set('viewParametersString', $viewParametersString);
 }
 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 onSiteAccessMatch(PostSiteAccessMatchEvent $event)
 {
     if (!$this->session || $event->getRequestType() !== HttpKernelInterface::MASTER_REQUEST) {
         return;
     }
     $sessionName = $this->session->getName();
     $request = $event->getRequest();
     if (!$this->session->isStarted() && !$request->hasPreviousSession() && $request->request->has($sessionName)) {
         $this->session->setId($request->request->get($sessionName));
         $this->session->start();
     }
 }