aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php')
-rw-r--r--src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
index 94615687..ae69492d 100644
--- a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
+++ b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
@@ -7,7 +7,7 @@ use BD\GuzzleSiteAuthenticator\SiteConfig\SiteConfigBuilder;
7use Graby\SiteConfig\ConfigBuilder; 7use Graby\SiteConfig\ConfigBuilder;
8use Psr\Log\LoggerInterface; 8use Psr\Log\LoggerInterface;
9use Wallabag\CoreBundle\Repository\SiteCredentialRepository; 9use Wallabag\CoreBundle\Repository\SiteCredentialRepository;
10use Wallabag\UserBundle\Entity\User; 10use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage;
11 11
12class GrabySiteConfigBuilder implements SiteConfigBuilder 12class GrabySiteConfigBuilder implements SiteConfigBuilder
13{ 13{
@@ -27,7 +27,7 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder
27 private $logger; 27 private $logger;
28 28
29 /** 29 /**
30 * @var User 30 * @var Wallabag\UserBundle\Entity\User|null
31 */ 31 */
32 private $currentUser; 32 private $currentUser;
33 33
@@ -36,16 +36,19 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder
36 * GrabySiteConfigBuilder constructor. 36 * GrabySiteConfigBuilder constructor.
37 * 37 *
38 * @param ConfigBuilder $grabyConfigBuilder 38 * @param ConfigBuilder $grabyConfigBuilder
39 * @param User $currentUser 39 * @param TokenStorage $token
40 * @param SiteCredentialRepository $credentialRepository 40 * @param SiteCredentialRepository $credentialRepository
41 * @param LoggerInterface $logger 41 * @param LoggerInterface $logger
42 */ 42 */
43 public function __construct(ConfigBuilder $grabyConfigBuilder, User $currentUser, SiteCredentialRepository $credentialRepository, LoggerInterface $logger) 43 public function __construct(ConfigBuilder $grabyConfigBuilder, TokenStorage $token, SiteCredentialRepository $credentialRepository, LoggerInterface $logger)
44 { 44 {
45 $this->grabyConfigBuilder = $grabyConfigBuilder; 45 $this->grabyConfigBuilder = $grabyConfigBuilder;
46 $this->credentialRepository = $credentialRepository; 46 $this->credentialRepository = $credentialRepository;
47 $this->currentUser = $currentUser;
48 $this->logger = $logger; 47 $this->logger = $logger;
48
49 if ($token->getToken()) {
50 $this->currentUser = $token->getToken()->getUser();
51 }
49 } 52 }
50 53
51 /** 54 /**
@@ -59,7 +62,10 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder
59 $host = substr($host, 4); 62 $host = substr($host, 4);
60 } 63 }
61 64
62 $credentials = $this->credentialRepository->findOneByHostAndUser($host, $this->currentUser->getId()); 65 $credentials = null;
66 if ($this->currentUser) {
67 $credentials = $this->credentialRepository->findOneByHostAndUser($host, $this->currentUser->getId());
68 }
63 69
64 if (null === $credentials) { 70 if (null === $credentials) {
65 $this->logger->debug('Auth: no credentials available for host.', ['host' => $host]); 71 $this->logger->debug('Auth: no credentials available for host.', ['host' => $host]);