diff --git a/app/Http/Livewire/Datatable.php b/app/Http/Livewire/Datatable.php index 498677f..1537d0c 100644 --- a/app/Http/Livewire/Datatable.php +++ b/app/Http/Livewire/Datatable.php @@ -81,6 +81,8 @@ class Datatable extends Component $this->route_edit = $route_edit; $this->route_delete = $route_delete; $this->route_restore = $route_restore; + + $this->setTrashedColumns(); } /** @@ -108,6 +110,25 @@ class Datatable extends Component return view('livewire.datatable', ['items' => $items]); } + private function setTrashedColumns() + { + if ($this->trashed) { + // Add deleted_at columns. + $this->columns['deleted_at'] = 'Deleted at'; + $this->sort_columns['deleted_at'] = 'deleted_at'; + } else { + // Unset deleted_at columns. + unset($this->columns['deleted_at']); + unset($this->sort_columns['deleted_at']); + + // if delete_at was the sorting column + // revert back to default sorting. + if ($this->sort == 'deleted_at') { + $this->sort = $this->default_sort; + } + } + } + public function getRouteKeyProperty() { return Str::slug(get_class($this->model));