Index.php
1 <?php 2 3 namespace App\Http\Livewire\VulnerabilityMail; 4 5 use App\Models\VulnerabilityMail; 6 use Illuminate\Foundation\Auth\Access\AuthorizesRequests; 7 use Livewire\Component; 8 use Livewire\WithPagination; 9 use WireUi\Traits\Actions; 10 11 class Index extends Component 12 { 13 use WithPagination, AuthorizesRequests, Actions; 14 15 protected function getListeners() 16 { 17 return ['refresh' => '$refresh']; 18 } 19 20 public function mount() 21 { 22 $this->authorize('can_read_vulnerability_mail'); 23 } 24 25 public function getMailsProperty() 26 { 27 return VulnerabilityMail 28 ::where('reviewed', false) 29 ->orderBy('created_at', 'desc') 30 ->paginate(10); 31 } 32 33 public function render() 34 { 35 return view('livewire.vulnerability-mail.index') 36 ->layoutData([ 37 'title' => __('vulnerabilities.mails'), 38 'breadcrumb' => 'vulnerability-mail.index', 39 ]); 40 } 41 42 public function openReviewPanel(int $mailId) { 43 $this->emit('openPanel', 44 __('vulnerabilities.review-mail'), 45 'vulnerability-mail.view', $mailId); 46 } 47 }