aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/CoreBundle/Repository/EntryRepository.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Wallabag/CoreBundle/Repository/EntryRepository.php')
-rw-r--r--src/Wallabag/CoreBundle/Repository/EntryRepository.php12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Wallabag/CoreBundle/Repository/EntryRepository.php b/src/Wallabag/CoreBundle/Repository/EntryRepository.php
index f9cf5233..16c44885 100644
--- a/src/Wallabag/CoreBundle/Repository/EntryRepository.php
+++ b/src/Wallabag/CoreBundle/Repository/EntryRepository.php
@@ -366,6 +366,7 @@ class EntryRepository extends EntityRepository
366 */ 366 */
367 public function findByHashedUrlAndUserId($hashedUrl, $userId) 367 public function findByHashedUrlAndUserId($hashedUrl, $userId)
368 { 368 {
369 // try first using hashed_url (to use the database index)
369 $res = $this->createQueryBuilder('e') 370 $res = $this->createQueryBuilder('e')
370 ->where('e.hashedUrl = :hashed_url')->setParameter('hashed_url', $hashedUrl) 371 ->where('e.hashedUrl = :hashed_url')->setParameter('hashed_url', $hashedUrl)
371 ->andWhere('e.user = :user_id')->setParameter('user_id', $userId) 372 ->andWhere('e.user = :user_id')->setParameter('user_id', $userId)
@@ -376,6 +377,17 @@ class EntryRepository extends EntityRepository
376 return current($res); 377 return current($res);
377 } 378 }
378 379
380 // then try using hashed_given_url (to use the database index)
381 $res = $this->createQueryBuilder('e')
382 ->where('e.hashedGivenUrl = :hashed_given_url')->setParameter('hashed_given_url', $hashedUrl)
383 ->andWhere('e.user = :user_id')->setParameter('user_id', $userId)
384 ->getQuery()
385 ->getResult();
386
387 if (\count($res)) {
388 return current($res);
389 }
390
379 return false; 391 return false;
380 } 392 }
381 393