36 lines
944 B
PHP
36 lines
944 B
PHP
<?php
|
|
|
|
namespace App\Livewire\Discovery;
|
|
|
|
use App\Models\DiscoveryFinding;
|
|
use Livewire\Attributes\Layout;
|
|
use Livewire\Attributes\On;
|
|
use Livewire\Component;
|
|
|
|
#[Layout('layouts.app')]
|
|
class Index extends Component
|
|
{
|
|
#[On('echo-private:discovery,.DeviceDiscovered')]
|
|
public function onDiscovered(): void {}
|
|
|
|
public function ignore(string $uuid): void
|
|
{
|
|
DiscoveryFinding::where('uuid', $uuid)->update(['status' => 'ignored']);
|
|
}
|
|
|
|
public function unignore(string $uuid): void
|
|
{
|
|
DiscoveryFinding::where('uuid', $uuid)->update(['status' => 'new']);
|
|
}
|
|
|
|
public function render()
|
|
{
|
|
$findings = DiscoveryFinding::query()->orderByDesc('last_seen_at')->orderByDesc('id')->get();
|
|
|
|
return view('livewire.discovery.index', [
|
|
'new' => $findings->where('status', 'new')->values(),
|
|
'ignored' => $findings->where('status', 'ignored')->values(),
|
|
]);
|
|
}
|
|
}
|