diff --git a/extensions/Servers/Proxmox/Livewire/Firewall.php b/extensions/Servers/Proxmox/Livewire/Firewall.php index b8a725ffc..ad4e08b4b 100644 --- a/extensions/Servers/Proxmox/Livewire/Firewall.php +++ b/extensions/Servers/Proxmox/Livewire/Firewall.php @@ -1351,9 +1351,9 @@ class Firewall extends Component return []; } - $reversedLogs = array_reverse($this->firewallLogs); + // Logs are already sorted by timestamp (most recent first) in parseFirewallLogs $offset = ($this->currentPage - 1) * $this->perPage; - return array_slice($reversedLogs, $offset, $this->perPage); + return array_slice($this->firewallLogs, $offset, $this->perPage); } public function getTotalPagesProperty(): int @@ -1417,6 +1417,13 @@ class Firewall extends Component } } + // Sort logs by timestamp in descending order (most recent first) + usort($parsed, function($a, $b) { + $timeA = strtotime($a['timestamp_iso'] ?? $a['timestamp'] ?? '0'); + $timeB = strtotime($b['timestamp_iso'] ?? $b['timestamp'] ?? '0'); + return $timeB <=> $timeA; // Descending order + }); + return $parsed; }