public function getNumEntrants(Scholarship $scholarship)
 {
     $em = $this->getEntityManager();
     $q = $em->createQuery('SELECT COUNT(e) FROM GotChosenSiteBundle:ScholarshipEntry e ' . 'WHERE e.scholarship = ?1');
     $q->setParameter(1, $scholarship->getId());
     return $q->getSingleScalarResult();
 }
 public function findChampionshipGames(Scholarship $scholarship)
 {
     $q = $this->getEntityManager()->createQuery('SELECT g FROM GotChosenSiteBundle:EGGame g ' . 'LEFT JOIN g.scholarships gs ' . 'WHERE gs.scholarship = :sship AND gs.scholarshipType = :scholarshipType');
     $q->setParameter('sship', $scholarship->getId());
     $q->setParameter('scholarshipType', EGGameScholarships::TYPE_CHAMPIONSHIP);
     return $q->execute();
 }
 public function getChampionshipLeaders(Scholarship $scholarship, $month, $limit = 10)
 {
     $this->assertMonth($month);
     $em = $this->getEntityManager();
     $q = $em->createQuery('SELECT s, u FROM GotChosenSiteBundle:EGPlayerStats s
          JOIN s.player u
          WHERE s.scholarship = :sship AND s.statsMonth = :month
          ORDER BY s.rank');
     $q->setParameter('sship', $scholarship->getId());
     $q->setParameter('month', $month);
     $q->setMaxResults($limit);
     return $q->getResult();
 }
示例#4
0
 public function getScholarshipEntry(Scholarship $sship)
 {
     /** @var ScholarshipEntry[] $entries */
     $entries = $this->getScholarshipEntries();
     foreach ($entries as $entry) {
         if ($entry->getScholarship()->getId() == $sship->getId()) {
             return $entry;
         }
     }
     return null;
 }