X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FRepository%2FEntryRepository.php;h=ecc159fc0463b8585c75d90e1a8ba53d76e99d80;hb=a991c46eedec0efb24d0a9974b1c7fcabf8cfa66;hp=d70d6ca6056d7e96b5445658326f809504694a26;hpb=86ecd2b543e0f63609213ff45665fef94e38c681;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Repository/EntryRepository.php b/src/Wallabag/CoreBundle/Repository/EntryRepository.php index d70d6ca6..ecc159fc 100644 --- a/src/Wallabag/CoreBundle/Repository/EntryRepository.php +++ b/src/Wallabag/CoreBundle/Repository/EntryRepository.php @@ -65,7 +65,7 @@ class EntryRepository extends EntityRepository public function getBuilderForStarredByUser($userId) { return $this - ->getBuilderByUser($userId) + ->getBuilderByUser($userId, 'starredAt', 'desc') ->andWhere('e.isStarred = true') ; } @@ -355,7 +355,7 @@ class EntryRepository extends EntityRepository * Get id and url from all entries * Used for the clean-duplicates command. */ - public function getAllEntriesIdAndUrl($userId) + public function findAllEntriesIdAndUrlByUserId($userId) { $qb = $this->createQueryBuilder('e') ->select('e.id, e.url') @@ -364,6 +364,23 @@ class EntryRepository extends EntityRepository return $qb->getQuery()->getArrayResult(); } + /** + * @param int $userId + * + * @return array + */ + public function findAllEntriesIdByUserId($userId = null) + { + $qb = $this->createQueryBuilder('e') + ->select('e.id'); + + if (null !== $userId) { + $qb->where('e.user = :userid')->setParameter(':userid', $userId); + } + + return $qb->getQuery()->getArrayResult(); + } + /** * Find all entries by url and owner. * @@ -384,15 +401,16 @@ class EntryRepository extends EntityRepository /** * Return a query builder to used by other getBuilderFor* method. * - * @param int $userId + * @param int $userId + * @param string $sortBy + * @param string $direction * * @return QueryBuilder */ - private function getBuilderByUser($userId) + private function getBuilderByUser($userId, $sortBy = 'createdAt', $direction = 'desc') { return $this->createQueryBuilder('e') ->andWhere('e.user = :userId')->setParameter('userId', $userId) - ->orderBy('e.createdAt', 'desc') - ; + ->orderBy(sprintf('e.%s', $sortBy), $direction); } }