$user->library()->where('status', 'played')->count(), 'playing' => $user->library()->where('status', 'playing')->count(), 'want_to_play' => $user->library()->where('status', 'want_to_play')->count(), 'total' => $user->library()->count(), ]; $recentlyPlayed = $user->library() ->with('game') ->where('status', 'played') ->latest('updated_at') ->limit(6) ->get(); return view('users.show', compact('user', 'stats', 'recentlyPlayed')); } public function library(User $user) { $status = request('status'); $query = $user->library()->with('game'); if ($status && in_array($status, UserGame::STATUSES)) { $query->where('status', $status); } $entries = $query->latest('updated_at')->paginate(24)->withQueryString(); return view('users.library', compact('user', 'entries', 'status')); } }