Example #1
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     // Only redirect on GETs.
     if (strtoupper($request->method()) == 'GET') {
         // If we have a request from a bot, send them a custom, social-sharing-
         // friendly version of the website.
         foreach ($this->botAgents as $pattern) {
             if (preg_match($pattern, $request->header('User-Agent'))) {
                 // Add the social/ prefix on the requested url.
                 $dupRequest = $request->duplicate();
                 $dupRequest->server->set('REQUEST_URI', 'social/' . $request->path());
                 return $next($dupRequest);
             }
         }
     }
     return $next($request);
 }
Example #2
0
 /**
  * Clones a request and overrides some of its parameters.
  *
  * @param array $query The GET parameters
  * @param array $request The POST parameters
  * @param array $attributes The request attributes (parameters parsed from the PATH_INFO, ...)
  * @param array $cookies The COOKIE parameters
  * @param array $files The FILES parameters
  * @param array $server The SERVER parameters
  * @return \Symfony\Component\HttpFoundation\Request The duplicated request
  * @static 
  */
 public static function duplicate($query = null, $request = null, $attributes = null, $cookies = null, $files = null, $server = null)
 {
     return \Illuminate\Http\Request::duplicate($query, $request, $attributes, $cookies, $files, $server);
 }
Example #3
0
 /**
  * Clones a request and overrides some of its parameters.
  *
  * @param array $query The GET parameters
  * @param array $request The POST parameters
  * @param array $attributes The request attributes (parameters parsed from the PATH_INFO, ...)
  * @param array $cookies The COOKIE parameters
  * @param array $files The FILES parameters
  * @param array $server The SERVER parameters
  * @return \Symfony\Component\HttpFoundation\Request The duplicated request
  * @api 
  * @static 
  */
 public static function duplicate($query = null, $request = null, $attributes = null, $cookies = null, $files = null, $server = null)
 {
     //Method inherited from \Symfony\Component\HttpFoundation\Request
     return \Illuminate\Http\Request::duplicate($query, $request, $attributes, $cookies, $files, $server);
 }