From 4a9f8e0f2329c901d8f4ae72129a495f445edbb6 Mon Sep 17 00:00:00 2001 From: Toby Zerner Date: Wed, 5 Aug 2015 16:08:28 +0930 Subject: [PATCH] Don't allow re-liking or re-unliking --- extensions/likes/src/Listeners/PersistData.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/extensions/likes/src/Listeners/PersistData.php b/extensions/likes/src/Listeners/PersistData.php index 487b10000..f2efb5f07 100755 --- a/extensions/likes/src/Listeners/PersistData.php +++ b/extensions/likes/src/Listeners/PersistData.php @@ -29,11 +29,13 @@ class PersistData throw new PermissionDeniedException; } - if ($liked) { + $currentlyLiked = $post->likes()->where('user_id', $actor->id)->exists(); + + if ($liked && ! $currentlyLiked) { $post->likes()->attach($actor->id); $post->raise(new PostWasLiked($post, $actor)); - } else { + } elseif ($currentlyLiked) { $post->likes()->detach($actor->id); $post->raise(new PostWasUnliked($post, $actor));