forked from wallabag/wallabag
Add Wallabag\CoreBundle\Helper\UrlHasher
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
This commit is contained in:
committed by
Jeremy Benoist
parent
d5744bf0df
commit
4a5516376b
@ -9,6 +9,7 @@ use Pagerfanta\Adapter\DoctrineORMAdapter;
|
||||
use Pagerfanta\Pagerfanta;
|
||||
use Wallabag\CoreBundle\Entity\Entry;
|
||||
use Wallabag\CoreBundle\Entity\Tag;
|
||||
use Wallabag\CoreBundle\Helper\UrlHasher;
|
||||
|
||||
class EntryRepository extends EntityRepository
|
||||
{
|
||||
@ -349,7 +350,7 @@ class EntryRepository extends EntityRepository
|
||||
public function findByUrlAndUserId($url, $userId)
|
||||
{
|
||||
return $this->findByHashedUrlAndUserId(
|
||||
hash('sha1', $url), // XXX: the hash logic would better be in a separate util to avoid duplication with GenerateUrlHashesCommand::generateHashedUrls
|
||||
UrlHasher::hashUrl($url),
|
||||
$userId);
|
||||
}
|
||||
|
||||
@ -506,6 +507,32 @@ class EntryRepository extends EntityRepository
|
||||
return $this->find($randomId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Inject a UrlHasher.
|
||||
*
|
||||
* @param UrlHasher $hasher
|
||||
*/
|
||||
public function setUrlHasher(UrlHasher $hasher)
|
||||
{
|
||||
$this->urlHasher = $hasher;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the UrlHasher, or create a default one if not injected.
|
||||
*
|
||||
* XXX: the default uses the default hash algorithm
|
||||
*
|
||||
* @return UrlHasher
|
||||
*/
|
||||
protected function getUrlHasher()
|
||||
{
|
||||
if (!isset($this->urlHasher)) {
|
||||
$this->setUrlHasher(new UrlHasher());
|
||||
}
|
||||
|
||||
return $this->urlHasher;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a query builder to be used by other getBuilderFor* method.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user