From 8ffec7c1248eb9f1c9b29398a45e6fda8fef6b61 Mon Sep 17 00:00:00 2001 From: rcourtman Date: Thu, 22 Jan 2026 16:41:18 +0000 Subject: [PATCH] Support: Fix audit log permissions and improve UI empty state - Updated server installer to ensure correct permissions for audit directory - Added descriptive empty state and filter clearing to AuditLogPanel --- .../src/components/Settings/AuditLogPanel.tsx | 41 +++++++++++++++---- install.sh | 2 +- 2 files changed, 34 insertions(+), 9 deletions(-) diff --git a/frontend-modern/src/components/Settings/AuditLogPanel.tsx b/frontend-modern/src/components/Settings/AuditLogPanel.tsx index 4bc0633d3..f6194b0bd 100644 --- a/frontend-modern/src/components/Settings/AuditLogPanel.tsx +++ b/frontend-modern/src/components/Settings/AuditLogPanel.tsx @@ -7,6 +7,7 @@ import Filter from 'lucide-solid/icons/filter'; import Info from 'lucide-solid/icons/info'; import Play from 'lucide-solid/icons/play'; import X from 'lucide-solid/icons/x'; +import ShieldAlert from 'lucide-solid/icons/shield-alert'; import { showTooltip, hideTooltip } from '@/components/shared/Tooltip'; import Toggle from '@/components/shared/Toggle'; import { @@ -142,7 +143,9 @@ export default function AuditLogPanel() { }, 0); } } catch (err) { - setError(err instanceof Error ? err.message : 'Unknown error'); + const msg = err instanceof Error ? err.message : 'Unknown error'; + setError(msg); + showWarning('Audit Log Error', msg); } finally { setLoading(false); } @@ -835,14 +838,36 @@ export default function AuditLogPanel() { {/* Empty State */} -
- -

No audit events found

- -

- Try clearing the verification filter. +

+
+ 0} + fallback={} + > + + +

No audit events found

+

+ {activeFilterCount() > 0 + ? "No events match your current filters. Try adjusting or clearing them." + : "Audit logging is active, but no events have been recorded yet."}

- + 0}> + + +
diff --git a/install.sh b/install.sh index 5d3b2b28f..cd91b8393 100755 --- a/install.sh +++ b/install.sh @@ -2587,7 +2587,7 @@ setup_directories() { fi done - for config_dir in "$CONFIG_DIR"/alerts "$CONFIG_DIR"/notifications; do + for config_dir in "$CONFIG_DIR"/alerts "$CONFIG_DIR"/notifications "$CONFIG_DIR"/audit; do if [[ -d "$config_dir" ]]; then chown -R pulse:pulse "$config_dir" fi