diff --git a/app/Livewire/LikePost.php b/app/Livewire/LikePost.php index 421d9ee..ec82541 100644 --- a/app/Livewire/LikePost.php +++ b/app/Livewire/LikePost.php @@ -6,6 +6,31 @@ use Livewire\Component; class LikePost extends Component { + public $post; + public $isLiked; + public $likes; + + public function mount($post) + { + $this->isLiked = $post->checkLike(auth()->user()); + $this->likes = $post->likes->count(); + } + + public function like() + { + if ($this->post->checkLike(auth()->user())) { + $this->post->likes()->where("post_id", $this->post->id)->delete(); + $this->isLiked = false; + $this->likes--; + } else { + $this->post->likes()->create([ + "user_id" => auth()->user()->id + ]); + $this->isLiked = true; + $this->likes++; + } + } + public function render() { return view('livewire.like-post'); diff --git a/resources/views/livewire/like-post.blade.php b/resources/views/livewire/like-post.blade.php index 2d26220..20f3d9b 100644 --- a/resources/views/livewire/like-post.blade.php +++ b/resources/views/livewire/like-post.blade.php @@ -1,3 +1,15 @@
{{ $likes }} + Likes +
+{{ $post->likes->count() }} - Likes -