]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Fix tag count for PostgreSQL 2308/head
authorJeremy Benoist <jeremy.benoist@gmail.com>
Sun, 25 Sep 2016 10:23:44 +0000 (12:23 +0200)
committerJeremy Benoist <jeremy.benoist@gmail.com>
Sun, 25 Sep 2016 10:23:44 +0000 (12:23 +0200)
src/Wallabag/CoreBundle/Repository/TagRepository.php
src/Wallabag/CoreBundle/Twig/WallabagExtension.php

index f5c4ea6a036bea3bcc56987ec475d8495d17533d..9d127da7143b588e4b600088502ffd61c7dd654d 100644 (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());
     }
 
     /**
index 45dc591dbb91065e25b10ec3a6de4e34344687af..fb4c7412395f4affcb3b4b73f844ea06d498d4cc 100644 (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()