namespace Wallabag\CoreBundle\Twig;
-use Doctrine\ORM\Query;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
use Wallabag\CoreBundle\Repository\EntryRepository;
use Wallabag\CoreBundle\Repository\TagRepository;
$user = $this->tokenStorage->getToken() ? $this->tokenStorage->getToken()->getUser() : null;
if (null === $user || !is_object($user)) {
- return [];
+ return 0;
}
switch ($type) {
->groupBy('e.id')
->getQuery();
- $data = $this->enableCache($query)
- ->getArrayResult();
+ $query->useQueryCache(true);
+ $query->useResultCache(true);
+ $query->setResultCacheLifetime($this->lifeTime);
- return count($data);
+ return count($query->getArrayResult());
}
/**
$user = $this->tokenStorage->getToken() ? $this->tokenStorage->getToken()->getUser() : null;
if (null === $user || !is_object($user)) {
- return [];
+ return 0;
}
- $qb = $this->tagRepository->findAllTags($user->getId());
-
- $data = $this->enableCache($qb->getQuery())
- ->getArrayResult();
-
- return count($data);
- }
-
- /**
- * Enable cache for a query.
- *
- * @param Query $query
- *
- * @return Query
- */
- private function enableCache(Query $query)
- {
- $query->useQueryCache(true);
- $query->useResultCache(true);
- $query->setResultCacheLifetime($this->lifeTime);
-
- return $query;
+ return $this->tagRepository->countAllTags($user->getId());
}
public function getName()