diff --git a/app/Livewire/Studio/Master/Outlet/Index.php b/app/Livewire/Studio/Master/Outlet/Index.php index 235449a..df0edd5 100644 --- a/app/Livewire/Studio/Master/Outlet/Index.php +++ b/app/Livewire/Studio/Master/Outlet/Index.php @@ -22,9 +22,20 @@ class Index extends Component public ?string $imageUrl = null; + public string $search = ''; + + public array $status = []; + public function mount() + { + $this->loadOutlets(); + } + + protected function loadOutlets() { $this->outlets = Outlet::with(['openingHours', 'facilities']) + ->when(! empty($this->search), fn ($query) => $query->where('name', 'like', '%'.$this->search.'%')) + ->when(! empty($this->status), fn ($query) => $query->whereIn('status', $this->status)) ->latest() ->get() ->map(fn ($outlet) => [ @@ -55,6 +66,18 @@ public function mount() ->toArray(); } + public function updatedSearch(string $value) + { + $this->search = $value; + + $this->loadOutlets(); + } + + public function updatedStatus() + { + $this->loadOutlets(); + } + public function openImage(string $imageUrl) { $this->imageUrl = $imageUrl; diff --git a/resources/views/livewire/studio/master/outlet/index.blade.php b/resources/views/livewire/studio/master/outlet/index.blade.php index 1889cf3..9aad1a3 100644 --- a/resources/views/livewire/studio/master/outlet/index.blade.php +++ b/resources/views/livewire/studio/master/outlet/index.blade.php @@ -14,6 +14,20 @@ class="text-sm">