Example #1
0
 public function onArticleFileDownload(DownloadArticleFileEvent $event)
 {
     $articleFile = $event->getArticleFile();
     $article = $event->getArticleFile()->getArticle();
     $journal = $article->getJournal();
     $stat = $this->em->getRepository('OjsAnalyticsBundle:ArticleFileStatistic')->findOneBy(['date' => new \DateTime(), 'articleFile' => $articleFile]);
     if (!$stat) {
         $stat = new ArticleFileStatistic();
         $stat->setDate(new \DateTime());
         $stat->setArticleFile($articleFile);
         $stat->setDownload(1);
     } else {
         $stat->setDownload($stat->getDownload() + 1);
     }
     $article->increaseDownloadCount();
     $journal->increaseDownloadCount();
     $this->em->persist($journal);
     $this->em->persist($stat);
     $this->em->flush();
 }
Example #2
0
 public function onArticleFileDownload(DownloadArticleFileEvent $event)
 {
     $stat = $this->em->getRepository('OjsAnalyticsBundle:ArticleFileStatistic')->findOneBy(['date' => new \DateTime(), 'articleFile' => $event->getArticleFile()]);
     if (!$stat) {
         $stat = new ArticleFileStatistic();
         $stat->setDate(new \DateTime());
         $stat->setArticleFile($event->getArticleFile());
         $stat->setDownload(1);
     } else {
         $stat->setDownload($stat->getDownload() + 1);
     }
     $this->em->persist($stat);
     $this->em->flush($stat);
 }
Example #3
0
 public function onArticleFileDownload(DownloadArticleFileEvent $event)
 {
     $request = $this->requestStack->getMasterRequest();
     $session = $request->getSession();
     $articleFile = $event->getArticleFile();
     $sessionKey = 'download_article_file_' . $articleFile->getId();
     if ($session->has($sessionKey)) {
         return;
     } else {
         $session->set($sessionKey, 1);
     }
     $article = $event->getArticleFile()->getArticle();
     $journal = $article->getJournal();
     $stat = $this->em->getRepository('OjsAnalyticsBundle:ArticleFileStatistic')->findOneBy(['date' => new \DateTime(), 'articleFile' => $articleFile]);
     if (!$stat) {
         $stat = new ArticleFileStatistic();
         $stat->setDate(new \DateTime());
         $stat->setArticleFile($articleFile);
         $stat->setDownload(1);
     } else {
         $stat->setDownload($stat->getDownload() + 1);
     }
     $article->increaseDownloadCount();
     $journal->increaseDownloadCount();
     $this->em->persist($journal);
     $this->em->persist($stat);
     $this->em->flush();
 }