diff --git a/app/Livewire/AdminCommentSearch.php b/app/Livewire/AdminCommentSearch.php index aa49241..cfa3452 100644 --- a/app/Livewire/AdminCommentSearch.php +++ b/app/Livewire/AdminCommentSearch.php @@ -2,6 +2,7 @@ namespace App\Livewire; +use App\Models\Comment; use Livewire\Component; use Livewire\WithPagination; use Illuminate\Support\Facades\DB; @@ -24,13 +25,17 @@ class AdminCommentSearch extends Component $this->resetPage(); } + public function deleteComment($commentId) + { + $comment = Comment::where('id', (int) $commentId)->firstOrFail(); + $comment->delete(); + } + public function render() { - $comments = DB::table('comments') - ->join('users', 'comments.commenter_id', '=', 'users.id') - ->select('comments.*', 'users.name') - ->when($this->search !== '', fn ($query) => $query->where('comment', 'LIKE', "%$this->search%")) - ->when($this->userSearch !== '', fn ($query) => $query->where('name', 'LIKE', "%$this->userSearch%")) + $comments = Comment::when($this->search !== '', fn ($query) => $query->where('body', 'LIKE', "%$this->search%")) + ->when($this->userSearch !== '', fn ($query) => $query->whereHas('user', fn ($query) => $query->where('name', 'LIKE', "%{$this->userSearch}%"))) + ->orderBy('created_at', 'DESC') ->paginate(12); return view('livewire.admin-comment-search', [ diff --git a/resources/views/livewire/admin-comment-search.blade.php b/resources/views/livewire/admin-comment-search.blade.php index dcbf479..ad9ad46 100644 --- a/resources/views/livewire/admin-comment-search.blade.php +++ b/resources/views/livewire/admin-comment-search.blade.php @@ -25,6 +25,8 @@ placeholder="Search..." > +