mirror of
https://github.com/OPSnet/Gazelle.git
synced 2026-10-04 19:13:04 -04:00
30 lines
1.0 KiB
PHP
30 lines
1.0 KiB
PHP
<?php
|
|
/** @phpstan-var \Gazelle\User $Viewer */
|
|
/** @phpstan-var \Twig\Environment $Twig */
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Gazelle;
|
|
|
|
if (!$Viewer->permitted('site_view_flow')) {
|
|
Error403::error();
|
|
}
|
|
|
|
$userMan = new Manager\User();
|
|
$paginator = new Util\Paginator(100, (int)($_GET['page'] ?? 1));
|
|
$paginator->setTotal($userMan->userflowTotal());
|
|
$showFlow = $paginator->page() === 1;
|
|
|
|
$userflow = $showFlow ? $userMan->userflow() : [];
|
|
$userflowDetails = $userMan->userflowDetails($paginator->limit(), $paginator->offset());
|
|
|
|
echo $Twig->render('admin/userflow.twig', [
|
|
'category' => array_map(fn($x) => "'$x'", array_keys($userflow)),
|
|
'enabled' => array_map(fn($x) => $userflow[$x]['created'], array_keys($userflow)),
|
|
'disabled' => array_map(fn($x) => -$userflow[$x]['disabled'], array_keys($userflow)),
|
|
'net' => array_map(fn($x) => $userflow[$x]['created'] - $userflow[$x]['disabled'], array_keys($userflow)),
|
|
'paginator' => $paginator,
|
|
'show_flow' => $showFlow,
|
|
'details' => $userflowDetails,
|
|
]);
|