Files
ops-Gazelle/sections/bonus/bprates.php
2025-08-27 16:44:44 +02:00

34 lines
881 B
PHP

<?php
/** @phpstan-var \Gazelle\User $Viewer */
/** @phpstan-var \Twig\Environment $Twig */
declare(strict_types=1);
namespace Gazelle;
if (empty($_GET['userid'])) {
$user = $Viewer;
} else {
if (!$Viewer->permitted('admin_bp_history')) {
Error403::error();
}
$user = new Manager\User()->findById((int)($_GET['userid'] ?? 0));
if (is_null($user)) {
Error404::error();
}
}
$bonus = new User\Bonus($user);
$total = $bonus->userTotals();
$paginator = new Util\Paginator(TORRENTS_PER_PAGE, (int)($_GET['page'] ?? 1));
$paginator->setTotal($total['total_torrents']);
echo $Twig->render('user/bonus.twig', [
'heading' => $bonus->heading(),
'list' => $bonus->seedList($paginator->limit(), $paginator->offset()),
'paginator' => $paginator,
'total' => $total,
'user' => $user,
'viewer' => $Viewer,
]);