Ojs\AnalyticsBundle\Listener\AnalyticsSubscriber::onArticleView PHP Method

onArticleView() public method

public onArticleView ( Ojs\SiteBundle\Event\ViewArticleEvent $event )
$event Ojs\SiteBundle\Event\ViewArticleEvent
    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();
    }