From 135e71d5634be0da7d278e0b0050e670a3ccdd96 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Jan 2026 00:50:49 +0200 Subject: [PATCH] Refresh WAF whitelist table on changes --- app/Filament/Admin/Pages/Waf.php | 4 ++-- app/Livewire/Admin/WafWhitelistTable.php | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/app/Filament/Admin/Pages/Waf.php b/app/Filament/Admin/Pages/Waf.php index 9aa2a40..4868b5c 100644 --- a/app/Filament/Admin/Pages/Waf.php +++ b/app/Filament/Admin/Pages/Waf.php @@ -399,7 +399,6 @@ class Waf extends Page implements HasForms, HasTable ]; Setting::set('waf_whitelist_rules', json_encode(array_values($rules), JSON_UNESCAPED_SLASHES)); - $this->wafFormData['whitelist_rules'] = $rules; try { $agent = new AgentClient; @@ -419,6 +418,7 @@ class Waf extends Page implements HasForms, HasTable $this->loadAuditLogs(false); $this->resetTable(); + $this->dispatch('waf-whitelist-updated'); Notification::make() ->title(__('Rule whitelisted')) @@ -454,7 +454,6 @@ class Waf extends Page implements HasForms, HasTable } Setting::set('waf_whitelist_rules', json_encode(array_values($rules), JSON_UNESCAPED_SLASHES)); - $this->wafFormData['whitelist_rules'] = $rules; try { $agent = new AgentClient; @@ -474,6 +473,7 @@ class Waf extends Page implements HasForms, HasTable $this->loadAuditLogs(false); $this->resetTable(); + $this->dispatch('waf-whitelist-updated'); Notification::make() ->title(__('Whitelist removed')) diff --git a/app/Livewire/Admin/WafWhitelistTable.php b/app/Livewire/Admin/WafWhitelistTable.php index 8bf5418..09a8dd5 100644 --- a/app/Livewire/Admin/WafWhitelistTable.php +++ b/app/Livewire/Admin/WafWhitelistTable.php @@ -20,6 +20,7 @@ use Filament\Tables\Concerns\InteractsWithTable; use Filament\Tables\Contracts\HasTable; use Filament\Tables\Table; use Illuminate\Support\Arr; +use Livewire\Attributes\On; use Livewire\Component; class WafWhitelistTable extends Component implements HasTable, HasSchemas, HasActions @@ -28,6 +29,12 @@ class WafWhitelistTable extends Component implements HasTable, HasSchemas, HasAc use InteractsWithSchemas; use InteractsWithActions; + #[On('waf-whitelist-updated')] + public function refreshWhitelist(): void + { + $this->resetTable(); + } + public function makeFilamentTranslatableContentDriver(): ?\Filament\Support\Contracts\TranslatableContentDriver { return null;