blessing-skin-server/app/Http/Middleware/CheckSessionUserValid.php

36 lines
877 B
PHP
Raw Normal View History

2016-10-23 11:41:52 +08:00
<?php
namespace App\Http\Middleware;
use App;
use Cookie;
use Session;
use App\Models\User;
class CheckSessionUserValid
{
public function handle($request, \Closure $next)
{
// load session from cookie
if ($request->cookie('uid') && $request->cookie('token')) {
Session::put('uid' , $request->cookie('uid'));
Session::put('token', $request->cookie('token'));
}
if (Session::has('uid')) {
$user = User::find(session('uid'));
if ($user && $user->getToken() == session('token')) {
// push user instance to repository
2016-10-25 21:35:09 +08:00
app('users')->set($user->uid, $user);
2016-10-23 11:41:52 +08:00
} else {
// remove sessions & cookies
delete_sessions();
delete_cookies();
}
}
return $next($request);
}
}