]> Raphaƫl G. Git Repositories - airbundle/blobdiff - Repository/UserRepository.php
Add findAllPseudonymBySession function
[airbundle] / Repository / UserRepository.php
index 0d0ee4e45e2ff35c06e0da72be4922cf6f80219f..8b490c47abf4f19135959b157c432312f602cb14 100644 (file)
@@ -100,4 +100,26 @@ class UserRepository extends \Doctrine\ORM\EntityRepository {
                //Send result
                return $ret;
        }
+
+       /**
+        * Find all user's pseudonym from session applications
+        *
+        * @param $session The Session instance
+        */
+       public function findAllPseudonymBySession($session) {
+               //Get entity manager
+               $em = $this->getEntityManager();
+
+               //Fetch sessions
+               $ret = $this->getEntityManager()
+                       ->createQuery('SELECT u.id, u.pseudonym FROM RapsysAirBundle:Application a INNER JOIN RapsysAirBundle:User u WHERE u.id = a.user AND a.session = :session')
+                       ->setParameter('session', $session)
+                       ->getResult();
+
+               //Process result
+               $ret = array_column($ret, 'pseudonym', 'id');
+
+               //Send result
+               return $ret;
+       }
 }