Advertisement
Guest User

Untitled

a guest
Jul 20th, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.12 KB | None | 0 0
  1.  
  2.     private function registerRoutes(ConfigRepository $repository) {
  3.         // ...
  4.         /** @var \App\Http\Kernel $kernel */
  5.         $kernel = $this->app->make(Kernel::class);
  6.  
  7.         if (property_exists($kernel, 'middleware')) {
  8.             $property = (new \ReflectionObject($kernel))->getProperty('middleware');
  9.             $property->setAccessible(true);
  10.  
  11.             $property->setValue($kernel,
  12.                 $this->injectCsrf(
  13.                     $property->getValue($kernel)
  14.                 )
  15.             );
  16.         }
  17.         // ...
  18.     }
  19.  
  20.     private function injectCsrf(array $middleware) {
  21.         $result = [];
  22.         $injected = false;
  23.  
  24.         foreach ($middleware as $item) {
  25.             if (!$injected && $item === 'App\Http\Middleware\VerifyCsrfToken') {
  26.                 $result[] = CsrfInjector::class;
  27.                 $injected = true;
  28.             }
  29.  
  30.             $result[] = $item;
  31.  
  32.             if (!$injected && $item === StartSession::class) {
  33.                 $result[] = CsrfInjector::class;
  34.                 $injected = true;
  35.             }
  36.         }
  37.  
  38.         return $result;
  39.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement