Files
gamelog/app/Http/Controllers/UserController.php
T

43 lines
1.2 KiB
PHP
Raw Normal View History

<?php
namespace App\Http\Controllers;
use App\Models\User;
use App\Models\UserGame;
class UserController extends Controller
{
public function show(User $user)
{
$stats = [
'played' => $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'));
}
}