Fix tag count for PostgreSQL

This commit is contained in:
Jeremy Benoist 2016-09-25 12:23:44 +02:00
parent 82fc3290d4
commit 289875836a
No known key found for this signature in database
GPG key ID: BCA73962457ACC3C
2 changed files with 6 additions and 8 deletions

View file

@ -7,17 +7,17 @@ use Doctrine\ORM\EntityRepository;
class TagRepository extends EntityRepository
{
/**
* Find all tags per user.
* Count all tags per user.
*
* @param int $userId
* @param int $cacheLifeTime Duration of the cache for this query
*
* @return array
* @return int
*/
public function findAllTags($userId, $cacheLifeTime = null)
public function countAllTags($userId, $cacheLifeTime = null)
{
$query = $this->createQueryBuilder('t')
->select('t')
->select('t.slug')
->leftJoin('t.entries', 'e')
->where('e.user = :userId')->setParameter('userId', $userId)
->groupBy('t.slug')
@ -29,7 +29,7 @@ class TagRepository extends EntityRepository
$query->setResultCacheLifetime($cacheLifeTime);
}
return $query->getArrayResult();
return count($query->getArrayResult());
}
/**

View file

@ -104,9 +104,7 @@ class WallabagExtension extends \Twig_Extension implements \Twig_Extension_Globa
return 0;
}
$data = $this->tagRepository->findAllTags($user->getId());
return count($data);
return $this->tagRepository->countAllTags($user->getId());
}
public function getName()