/**
  * Handle the event.
  *
  * @param  PostWasVoted  $event
  * @return void
  */
 public function handle(PostWasVoted $event)
 {
     $eventName = $event->value == 1 ? 'post.vote.like' : 'post.vote.dislike';
     $this->activity->deleteByComposite($event->user, $event->post, 'post.vote.*');
     $this->activity->create($event->user, $event->post, $eventName);
     $likes = $this->activity->countActivities($event->user, 'post.vote.like');
     $dislikes = $this->activity->countActivities($event->user, 'post.vote.dislike');
     $this->user->update($event->user, ['likes' => $likes, 'dislikes' => $dislikes]);
 }
 /**
  * Handle the event.
  *
  * @param  CommentWasCreated  $event
  * @return void
  */
 public function handle(CommentWasCreated $event)
 {
     $this->activity->create($event->user, $event->post, 'post.comment');
     $comments = $this->activity->countActivities($event->user, 'post.comment');
     $this->user->update($event->user, ['comments' => $comments]);
 }
 /**
  * Handle the event.
  *
  * @param  PostWasCreated  $event
  * @return void
  */
 public function handle(PostWasCreated $event)
 {
     $this->activity->create($event->user, $event->post, 'post.create');
     $this->user->update($event->user, ['posts' => $this->activity->countActivities($event->user, 'post.create')]);
 }