X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FRepository%2FEntryRepository.php;h=9bda4e15e81fcfd8d7e33635607fefa7db01c723;hb=1112e54772c9308ee3d7417869b5b8ef9b2b9812;hp=6972e974eeeb1853d28472f5be3ebf1b881ea9fa;hpb=e8911f7c09fa9d8009d7c7ee9fb0c181d2ffbc31;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Repository/EntryRepository.php b/src/Wallabag/CoreBundle/Repository/EntryRepository.php index 6972e974..9bda4e15 100644 --- a/src/Wallabag/CoreBundle/Repository/EntryRepository.php +++ b/src/Wallabag/CoreBundle/Repository/EntryRepository.php @@ -135,6 +135,7 @@ class EntryRepository extends EntityRepository * @param int $userId * @param bool $isArchived * @param bool $isStarred + * @param bool $isPublic * @param string $sort * @param string $order * @param int $since @@ -142,18 +143,22 @@ class EntryRepository extends EntityRepository * * @return array */ - public function findEntries($userId, $isArchived = null, $isStarred = null, $sort = 'created', $order = 'ASC', $since = 0, $tags = '') + public function findEntries($userId, $isArchived = null, $isStarred = null, $isPublic = null, $sort = 'created', $order = 'ASC', $since = 0, $tags = '') { $qb = $this->createQueryBuilder('e') ->leftJoin('e.tags', 't') ->where('e.user =:userId')->setParameter('userId', $userId); if (null !== $isArchived) { - $qb->andWhere('e.isArchived =:isArchived')->setParameter('isArchived', (bool) $isArchived); + $qb->andWhere('e.isArchived = :isArchived')->setParameter('isArchived', (bool) $isArchived); } if (null !== $isStarred) { - $qb->andWhere('e.isStarred =:isStarred')->setParameter('isStarred', (bool) $isStarred); + $qb->andWhere('e.isStarred = :isStarred')->setParameter('isStarred', (bool) $isStarred); + } + + if (null !== $isPublic) { + $qb->andWhere('e.uid IS '.(true === $isPublic ? 'NOT' : '').' NULL'); } if ($since > 0) {