Working on stack.
This commit is contained in:
63
app/Http/Middleware/AuthMiddleware.php
Normal file
63
app/Http/Middleware/AuthMiddleware.php
Normal file
@@ -0,0 +1,63 @@
|
||||
<?php namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Routing\Route;
|
||||
use Illuminate\Contracts\Auth\Authenticator;
|
||||
use Illuminate\Contracts\Routing\Middleware;
|
||||
use Illuminate\Contracts\Routing\ResponseFactory;
|
||||
|
||||
class AuthMiddleware implements Middleware {
|
||||
|
||||
/**
|
||||
* The authenticator implementation.
|
||||
*
|
||||
* @var Authenticator
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* The response factory implementation.
|
||||
*
|
||||
* @var ResponseFactory
|
||||
*/
|
||||
protected $response;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Authenticator $auth
|
||||
* @param ResponseFactory $response
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Authenticator $auth,
|
||||
ResponseFactory $response)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
$this->response = $response;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request
|
||||
* @param \Closure $next
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($this->auth->guest())
|
||||
{
|
||||
if ($request->ajax())
|
||||
{
|
||||
return $this->response->make('Unauthorized', 401);
|
||||
}
|
||||
else
|
||||
{
|
||||
return $this->response->redirectGuest('auth/login');
|
||||
}
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
39
app/Http/Middleware/BasicAuthMiddleware.php
Normal file
39
app/Http/Middleware/BasicAuthMiddleware.php
Normal file
@@ -0,0 +1,39 @@
|
||||
<?php namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Contracts\Routing\Middleware;
|
||||
use Illuminate\Contracts\Auth\Authenticator;
|
||||
|
||||
class BasicAuthMiddleware implements Middleware {
|
||||
|
||||
/**
|
||||
* The authenticator implementation.
|
||||
*
|
||||
* @var Authenticator
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Authenticator $auth
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Authenticator $auth)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request
|
||||
* @param \Closure $next
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
return $this->auth->basic() ?: $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
26
app/Http/Middleware/CsrfMiddleware.php
Normal file
26
app/Http/Middleware/CsrfMiddleware.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Contracts\Routing\Middleware;
|
||||
use Illuminate\Session\TokenMismatchException;
|
||||
|
||||
class CsrfMiddleware implements Middleware {
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request
|
||||
* @param \Closure $next
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($request->getSession()->token() != $request->input('_token'))
|
||||
{
|
||||
throw new TokenMismatchException;
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
45
app/Http/Middleware/GuestMiddleware.php
Normal file
45
app/Http/Middleware/GuestMiddleware.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<?php namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Contracts\Auth\Authenticator;
|
||||
use Illuminate\Contracts\Routing\Middleware;
|
||||
|
||||
class GuestMiddleware implements Middleware {
|
||||
|
||||
/**
|
||||
* The authenticator implementation.
|
||||
*
|
||||
* @var Authenticator
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Authenticator $auth
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Authenticator $auth)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request
|
||||
* @param \Closure $next
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($this->auth->check())
|
||||
{
|
||||
return new RedirectResponse(url('/'));
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
45
app/Http/Middleware/MaintenanceMiddleware.php
Normal file
45
app/Http/Middleware/MaintenanceMiddleware.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<?php namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Contracts\Routing\Middleware;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
|
||||
class MaintenanceMiddleware {
|
||||
|
||||
/**
|
||||
* The application implementation.
|
||||
*
|
||||
* @var Application
|
||||
*/
|
||||
protected $app;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Application $app
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Application $app)
|
||||
{
|
||||
$this->app = $app;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request
|
||||
* @param \Closure $next
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($this->app->isDownForMaintenance())
|
||||
{
|
||||
return new Response('Be right back!', 503);
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user