У меня есть столбец last_activity, где записывается дата последнего действия пользователя с промежуточным программным обеспечением.
Как я могу проверить онлайн-пользователя и когда он выходит из системы?
Middleware:
class LastActivityUser
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if (\Auth::check() && (\Auth::user()->last_activity < new \DateTime('-5 minutes'))) {
$user = \Auth::user();
$user->last_activity = new \DateTime;
$user->timestamps = false;
$user->save();
}
return $next($request);
}
}
Код в модели пользователя:
public function online() {
return ($this->last_activity > new \DateTime('-5 minutes') && $user->check()) ? true : false;
}
$user->check
=> Auth::check()
- не работает. Мне не нужно использовать Auth :: check (), мне нужно показывать онлайн-пользователя для других пользователей .. Но Auth::check()
проверяет, остается ли пользователь в учетной записи только для текущего пользователя auth ..