/** * @param \Vifeed\VideoViewBundle\Entity\VideoView $videoView * * @return boolean */ private function isViewTimeEnough(VideoView $videoView) { if ($videoView->getTrackNumber() >= $this->minViewLength) { return true; } else { $duration = $videoView->getCampaign()->getYoutubeData('duration'); if ($duration && $duration <= $this->shortVideoDuration) { return true; } } return false; }
/** * @param VideoView $videoView * * @return boolean */ public function wasCampaignViewedBeforeByThisUser(VideoView $videoView) { $query = $this->createQueryBuilder('v')->select('1')->where('v.viewerId = :viewerId')->andWhere('v.campaign = :campaign')->andWhere('v.isPaid = true')->andWhere('v.timestamp > :timestamp')->setParameters(['campaign' => $videoView->getCampaign(), 'viewerId' => $videoView->getViewerId(), 'timestamp' => $videoView->getTimestamp() - 2592000]); return (bool) $query->getQuery()->getOneOrNullResult(); }