FEATURE #2047: use laravel's authorization

This commit is contained in:
Michal Kváček
2017-08-02 13:33:26 +02:00
parent 67fb3c6945
commit a4c020daa0
60 changed files with 1357 additions and 50 deletions
+15 -1
View File
@@ -2,6 +2,7 @@
namespace App\Http\Middleware;
use App\Models\User;
use Closure;
use Illuminate\Support\Facades\Auth;
@@ -18,13 +19,26 @@ class Authenticate
*/
public function handle($request, Closure $next, $guard = null)
{
if (!Auth::guard($guard)->check()) {
if (!Auth::guard($guard)
->check() || Auth::user()->status != User::STATE_ACTIVE || Auth::user()->role == User::ROLE_VISITOR) {
Auth::logout();
if ($request->ajax()) {
return response('Unauthorized.', 401);
}
// select right message
if (Auth::user() && Auth::user()->status != User::STATE_ACTIVE) {
$message = 'auth.userNotActive';
} elseif (Auth::user() && Auth::user()->role == User::ROLE_VISITOR) {
$message = 'auth.visitorInAdmin';
} else {
$message = 'auth.loginExpired';
}
return redirect()
->route('login')
->with('warning', trans($message))
->with('redirectTo', $request->fullUrl());
}