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

onIssueView() public method

public onIssueView ( Ojs\SiteBundle\Event\ViewIssueEvent $event )
$event Ojs\SiteBundle\Event\ViewIssueEvent
    public function onIssueView(ViewIssueEvent $event)
    {
        $issue = $event->getIssue();
        $stat = $this->em->getRepository('OjsAnalyticsBundle:IssueStatistic')->findOneBy(['date' => new \DateTime(), 'issue' => $issue]);
        if (!$stat) {
            $stat = new IssueStatistic();
            $stat->setDate(new \DateTime());
            $stat->setIssue($issue);
            $stat->setView(1);
        } else {
            $stat->setView($stat->getView() + 1);
        }
        $issue->increaseViewCount();
        $this->em->persist($issue);
        $this->em->persist($stat);
        $this->em->flush();
    }