diff --git a/src/Wallabag/CoreBundle/DataFixtures/ORM/LoadSiteCredentialData.php b/src/Wallabag/CoreBundle/DataFixtures/ORM/LoadSiteCredentialData.php new file mode 100644 index 000000000..866f55a40 --- /dev/null +++ b/src/Wallabag/CoreBundle/DataFixtures/ORM/LoadSiteCredentialData.php @@ -0,0 +1,34 @@ +getReference('admin-user')); + $credential->setHost('example.com'); + $credential->setUsername('foo'); + $credential->setPassword('bar'); + + $manager->persist($credential); + + $manager->flush(); + } + + /** + * {@inheritdoc} + */ + public function getOrder() + { + return 50; + } +} diff --git a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php index 94615687e..ae69492d4 100644 --- a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php +++ b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php @@ -7,7 +7,7 @@ use BD\GuzzleSiteAuthenticator\SiteConfig\SiteConfigBuilder; use Graby\SiteConfig\ConfigBuilder; use Psr\Log\LoggerInterface; use Wallabag\CoreBundle\Repository\SiteCredentialRepository; -use Wallabag\UserBundle\Entity\User; +use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage; class GrabySiteConfigBuilder implements SiteConfigBuilder { @@ -27,7 +27,7 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder private $logger; /** - * @var User + * @var Wallabag\UserBundle\Entity\User|null */ private $currentUser; @@ -36,16 +36,19 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder * GrabySiteConfigBuilder constructor. * * @param ConfigBuilder $grabyConfigBuilder - * @param User $currentUser + * @param TokenStorage $token * @param SiteCredentialRepository $credentialRepository * @param LoggerInterface $logger */ - public function __construct(ConfigBuilder $grabyConfigBuilder, User $currentUser, SiteCredentialRepository $credentialRepository, LoggerInterface $logger) + public function __construct(ConfigBuilder $grabyConfigBuilder, TokenStorage $token, SiteCredentialRepository $credentialRepository, LoggerInterface $logger) { $this->grabyConfigBuilder = $grabyConfigBuilder; $this->credentialRepository = $credentialRepository; - $this->currentUser = $currentUser; $this->logger = $logger; + + if ($token->getToken()) { + $this->currentUser = $token->getToken()->getUser(); + } } /** @@ -59,7 +62,10 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder $host = substr($host, 4); } - $credentials = $this->credentialRepository->findOneByHostAndUser($host, $this->currentUser->getId()); + $credentials = null; + if ($this->currentUser) { + $credentials = $this->credentialRepository->findOneByHostAndUser($host, $this->currentUser->getId()); + } if (null === $credentials) { $this->logger->debug('Auth: no credentials available for host.', ['host' => $host]); diff --git a/src/Wallabag/CoreBundle/Resources/config/services.yml b/src/Wallabag/CoreBundle/Resources/config/services.yml index a59152d35..09bc77fe9 100644 --- a/src/Wallabag/CoreBundle/Resources/config/services.yml +++ b/src/Wallabag/CoreBundle/Resources/config/services.yml @@ -63,7 +63,7 @@ services: class: Wallabag\CoreBundle\GuzzleSiteAuthenticator\GrabySiteConfigBuilder arguments: - "@wallabag_core.graby.config_builder" - - "@=service('security.token_storage').getToken().getUser()" + - "@security.token_storage" - "@wallabag_core.site_credential_repository" - '@logger' tags: diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml index ef58a16b8..3a3fb91d8 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml @@ -32,6 +32,7 @@ menu: # save_link: 'Save a link' back_to_unread: 'Tilbage til de ulæste artikler' # users_management: 'Users management' + # site_credentials: 'Site credentials' top: add_new_entry: 'Tilføj ny artikel' search: 'Søg' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml index d026a030b..85f0e1a35 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml @@ -32,6 +32,7 @@ menu: save_link: 'Link speichern' back_to_unread: 'Zurück zu ungelesenen Artikeln' users_management: 'Benutzerverwaltung' + # site_credentials: 'Site credentials' top: add_new_entry: 'Neuen Artikel hinzufügen' search: 'Suche' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml index 12feb7dd4..284fa2fb8 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml @@ -32,6 +32,7 @@ menu: save_link: 'Save a link' back_to_unread: 'Back to unread articles' users_management: 'Users management' + site_credentials: 'Site credentials' top: add_new_entry: 'Add a new entry' search: 'Search' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml index 2351d467f..33bb879c6 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml @@ -32,6 +32,7 @@ menu: save_link: 'Guardar un enlace' back_to_unread: 'Volver a los artículos sin leer' users_management: 'Configuración de usuarios' + # site_credentials: 'Site credentials' top: add_new_entry: 'Añadir un nuevo artículo' search: 'Buscar' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml index 32e1ff42a..90eb119c1 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml @@ -32,6 +32,7 @@ menu: save_link: 'ذخیرهٔ یک پیوند' back_to_unread: 'بازگشت به خواندهنشدهها' # users_management: 'Users management' + # site_credentials: 'Site credentials' top: add_new_entry: 'افزودن مقالهٔ تازه' search: 'جستجو' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml index 17eaf0150..542ddf486 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml @@ -32,6 +32,7 @@ menu: save_link: "Sauvegarder un nouvel article" back_to_unread: "Retour aux articles non lus" users_management: "Gestion des utilisateurs" + site_credentials: 'Accès aux sites' top: add_new_entry: "Sauvegarder un nouvel article" search: "Rechercher" diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml index 752085c80..5cb2a68f7 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml @@ -32,6 +32,7 @@ menu: save_link: 'Salva collegamento' back_to_unread: 'Torna ai contenuti non letti' # users_management: 'Users management' + # site_credentials: 'Site credentials' top: add_new_entry: 'Aggiungi un nuovo contenuto' search: 'Cerca' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml index 9e941de0a..bc11b2a49 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml @@ -32,6 +32,7 @@ menu: save_link: 'Enregistrar un novèl article' back_to_unread: 'Tornar als articles pas legits' users_management: 'Gestion dels utilizaires' + # site_credentials: 'Site credentials' top: add_new_entry: 'Enregistrar un novèl article' search: 'Cercar' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml index 38e051f58..033d6ac55 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml @@ -32,6 +32,7 @@ menu: save_link: 'Zapisz link' back_to_unread: 'Powrót do nieprzeczytanych artykułów' users_management: 'Zarządzanie użytkownikami' + # site_credentials: 'Site credentials' top: add_new_entry: 'Dodaj nowy wpis' search: 'Szukaj' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml index d3b245b83..c70c24961 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml @@ -32,6 +32,7 @@ menu: save_link: 'Salvar um link' back_to_unread: 'Voltar para os artigos não lidos' users_management: 'Gestão de Usuários' + # site_credentials: 'Site credentials' top: add_new_entry: 'Adicionar uma nova entrada' search: 'Pesquisa' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml index 66c724299..a5dc44f02 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml @@ -32,6 +32,7 @@ menu: # save_link: 'Save a link' back_to_unread: 'Înapoi la articolele necitite' # users_management: 'Users management' + # site_credentials: 'Site credentials' top: add_new_entry: 'Introdu un nou articol' search: 'Căutare' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml index 34ae5b877..4d01e7f75 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml @@ -32,6 +32,7 @@ menu: # save_link: 'Save a link' back_to_unread: 'Okunmayan makalelere geri dön' # users_management: 'Users management' + # site_credentials: 'Site credentials' top: add_new_entry: 'Yeni bir makale ekle' search: 'Ara' diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig index 8448f17ec..882be430f 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig @@ -49,7 +49,7 @@ {{ form_end(delete_form) }}
-{{ 'site_credential.form.back_to_list'|trans }}
+{{ 'site_credential.form.back_to_list'|trans }}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig index fda60b31f..c128bcebd 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig @@ -25,7 +25,7 @@- {{ 'site_credential.list.create_new_one'|trans }} + {{ 'site_credential.list.create_new_one'|trans }}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig index bf713902a..3c008cdec 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig @@ -42,7 +42,7 @@ {{ form_widget(form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }} {{ form_rest(form) }} -{{ 'site_credential.form.back_to_list'|trans }}
+{{ 'site_credential.form.back_to_list'|trans }}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig index 42aeace93..17fa13bb5 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig @@ -38,6 +38,9 @@ {{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }} + {% if craue_setting('restricted_access') %} +