Example #1
0
 /**
  * @param SymfonyRequest $request
  * @return EnlightRequest
  */
 public function transformSymfonyRequestToEnlightRequest(SymfonyRequest $request)
 {
     // Overwrite superglobals with state of the SymfonyRequest
     $request->overrideGlobals();
     // Create englight request from global state
     $enlightRequest = new EnlightRequest();
     // Set commandline args as request uri
     // This is used for legacy cronjob routing.
     // e.g: /usr/bin/php shopware.php /backend/cron
     if (PHP_SAPI === 'cli' && is_array($argv = $request->server->get('argv')) && isset($argv[1])) {
         $enlightRequest->setRequestUri($argv[1]);
     }
     // Let the symfony request handle the trusted proxies
     $enlightRequest->setRemoteAddress($request->getClientIp());
     $enlightRequest->setSecure($request->isSecure());
     return $enlightRequest;
 }