public function onArticleView(ViewArticleEvent $event) { $article = $event->getArticle(); $stat = $this->em->getRepository('OjsAnalyticsBundle:ArticleStatistic')->findOneBy(['date' => new \DateTime(), 'article' => $article]); if (!$stat) { $stat = new ArticleStatistic(); $stat->setDate(new \DateTime()); $stat->setArticle($article); $stat->setView(1); } else { $stat->setView($stat->getView() + 1); } $article->increaseViewCount(); $this->em->persist($article); $this->em->persist($stat); $this->em->flush(); }