Filter recent activity to show only current user's activity

This commit is contained in:
2026-06-07 12:25:04 -04:00
parent e207ece614
commit 4448dec60d
2 changed files with 16 additions and 10 deletions

View File

@@ -40,7 +40,7 @@ class DashboardController
})) : [];
}
$recentActivity = $this->auditService->getRecentActivity(10);
$recentActivity = $this->auditService->getRecentActivity(10, $userId);
$this->view->display('dashboard.index', [
'title' => 'Dashboard - ServerManager',

View File

@@ -124,16 +124,22 @@ class AuditService
);
}
public function getRecentActivity(int $limit = 20): array
public function getRecentActivity(int $limit = 20, ?int $userId = null): array
{
return $this->db->fetchAll(
'SELECT al.*, u.username as actor_name
$sql = 'SELECT al.*, u.username as actor_name
FROM audit_logs al
LEFT JOIN users u ON al.user_id = u.id
ORDER BY al.created_at DESC
LIMIT ?',
[$limit]
);
LEFT JOIN users u ON al.user_id = u.id';
$params = [];
if ($userId !== null) {
$sql .= ' WHERE al.user_id = ?';
$params[] = $userId;
}
$sql .= ' ORDER BY al.created_at DESC LIMIT ?';
$params[] = $limit;
return $this->db->fetchAll($sql, $params);
}
public function getAuditLogs(int $page = 1, int $perPage = 50, array $filters = []): array