public function likeComment($payload, Comment $comment) { if ($comment->isUserLiked($payload['user_id'])) { return array('result' => false, 'message' => 'The comment has been liked by this user!'); } \DB::beginTransaction(); try { $like = CommentLike::create(['comment_id' => $comment->id, 'user_id' => $payload['user_id']]); \DB::commit(); return array('result' => true, 'content' => $like); } catch (\Exception $e) { \DB::rollBack(); return array('result' => false, 'message' => $e->getMessage()); } }
public function transform(Comment $comment) { $likes = $comment->likes; return ['id' => $comment->id, 'user_id' => $comment->user_id, 'moment_id' => $comment->moment_id, 'text' => $comment->text, 'like_count' => $likes->count(), 'is_liked' => $comment->isUserLiked($this->request_user_id), 'created_at' => $comment->created_at->toDateTimeString(), 'updated_at' => $comment->updated_at->toDateTimeString()]; }