diff --git a/app/Livewire/Ui/Security/ClamavManager.php b/app/Livewire/Ui/Security/ClamavManager.php index ab1317b..8b5a584 100644 --- a/app/Livewire/Ui/Security/ClamavManager.php +++ b/app/Livewire/Ui/Security/ClamavManager.php @@ -10,16 +10,15 @@ use Livewire\Component; #[Title('Virenschutz · Mailwolt')] class ClamavManager extends Component { - public bool $installed = false; - public bool $running = false; - public bool $enabled = false; - public string $dbDate = '—'; - public string $dbVersion = '—'; - public ?int $ramMb = null; - public string $lastError = ''; - public string $lastSuccess = ''; - public bool $installing = false; - public bool $starting = false; + public bool $installed = false; + public bool $running = false; + public bool $enabled = false; + public string $dbDate = '—'; + public string $dbVersion = '—'; + public ?int $ramMb = null; + public string $lastError = ''; + public string $lastSuccess = ''; + public bool $installing = false; public function mount(): void { @@ -30,7 +29,6 @@ class ClamavManager extends Component { $this->lastError = ''; $this->lastSuccess = ''; - $this->starting = false; $this->running = $this->serviceActive(); $this->enabled = $this->serviceEnabled(); $this->installed = true; @@ -38,18 +36,6 @@ class ClamavManager extends Component [$this->dbDate, $this->dbVersion] = $this->readDbInfo(); } - public function pollStatus(): void - { - if (!$this->starting) return; - $this->running = $this->serviceActive(); - $this->enabled = $this->serviceEnabled(); - if ($this->running) { - $this->starting = false; - $this->lastSuccess = 'ClamAV wurde aktiviert und läuft.'; - $this->ramMb = $this->readRamMb(); - } - } - public function install(): void { $this->installing = true; @@ -67,11 +53,11 @@ class ClamavManager extends Component public function enable(): void { - $this->lastError = $this->lastSuccess = ''; - // Im Hintergrund starten – systemctl start kann 30-60s dauern (DB-Laden) - shell_exec('nohup sudo -n /usr/local/sbin/mailwolt-clamav enable > /tmp/mw-clamav-start.log 2>&1 &'); - $this->starting = true; - $this->enabled = true; // systemctl enable ist sofort wirksam + $this->lastError = ''; + $this->lastSuccess = ''; + @exec('sudo -n /usr/local/sbin/mailwolt-clamav enable > /tmp/mw-clamav-start.log 2>&1 &'); + $this->enabled = true; + $this->lastSuccess = 'ClamAV wird gestartet… Dies kann bis zu 60 Sekunden dauern. Klicken Sie danach auf „Aktualisieren".'; } public function disable(): void diff --git a/resources/views/livewire/ui/security/clamav-manager.blade.php b/resources/views/livewire/ui/security/clamav-manager.blade.php index 9ed6741..c1cecfc 100644 --- a/resources/views/livewire/ui/security/clamav-manager.blade.php +++ b/resources/views/livewire/ui/security/clamav-manager.blade.php @@ -44,13 +44,7 @@ ClamAV wird gestoppt… ClamAV wird installiert… (ca. 1 Min.) - @if($starting) -
- - ClamAV wird gestartet… (lädt Viren-DB) - Das kann bis zu 60 Sekunden dauern -
- @endif +
Status