Merge pull request #2683 from wallabag/credentials-in-db

Store credentials in DB
This commit is contained in:
Jérémy Benoist
2017-06-20 16:40:48 +02:00
committed by GitHub
41 changed files with 1605 additions and 39 deletions

View File

@ -63,7 +63,8 @@ services:
class: Wallabag\CoreBundle\GuzzleSiteAuthenticator\GrabySiteConfigBuilder
arguments:
- "@wallabag_core.graby.config_builder"
- "%sites_credentials%"
- "@security.token_storage"
- "@wallabag_core.site_credential_repository"
- '@logger'
tags:
- { name: monolog.logger, channel: graby }
@ -120,6 +121,14 @@ services:
arguments:
- WallabagCoreBundle:Tag
wallabag_core.site_credential_repository:
class: Wallabag\CoreBundle\Repository\SiteCredentialRepository
factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
arguments:
- WallabagCoreBundle:SiteCredential
calls:
- [ setCrypto, [ "@wallabag_core.helper.crypto_proxy" ] ]
wallabag_core.helper.entries_export:
class: Wallabag\CoreBundle\Helper\EntriesExport
arguments:
@ -201,3 +210,9 @@ services:
wallabag_core.entry.download_images.client:
class: GuzzleHttp\Client
wallabag_core.helper.crypto_proxy:
class: Wallabag\CoreBundle\Helper\CryptoProxy
arguments:
- "%wallabag_core.site_credentials.encryption_key_path%"
- "@logger"

View File

@ -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'
@ -520,6 +521,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new credential
# form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
error:
# page_title: An error occurred
@ -572,3 +593,8 @@ flashes:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
placeholder: Filtere nach Benutzer oder E-Mail-Adresse
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
list:
actions: Aktionen
edit_action: Bearbeiten
yes: Ja
no: Nein
# create_new_one: Create a new credential
form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
save: Speichern
delete: Löschen
delete_confirm: Bist du sicher?
back_to_list: Zurück zur Liste
error:
page_title: Ein Fehler ist aufgetreten
@ -573,3 +594,8 @@ flashes:
added: 'Benutzer "%username%" hinzugefügt'
updated: 'Benutzer "%username%" aktualisiert'
deleted: 'Benutzer "%username%" gelöscht'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
placeholder: Filter by username or email
site_credential:
page_title: Site credentials management
new_site_credential: Create a credential
edit_site_credential: Edit an existing credential
description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
list:
actions: Actions
edit_action: Edit
yes: Yes
no: No
create_new_one: Create a new credential
form:
username_label: 'Username'
host_label: 'Host'
password_label: 'Password'
save: Save
delete: Delete
delete_confirm: Are you sure?
back_to_list: Back to list
error:
page_title: An error occurred
@ -573,3 +594,8 @@ flashes:
added: 'User "%username%" added'
updated: 'User "%username%" updated'
deleted: 'User "%username%" deleted'
site_credential:
notice:
added: 'Site credential for "%host%" added'
updated: 'Site credential for "%host%" updated'
deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new credential
# form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
error:
page_title: Ha ocurrido un error
@ -573,3 +594,8 @@ flashes:
added: 'Añadido el usuario "%username%"'
updated: 'Actualizado el usuario "%username%"'
deleted: 'Eliminado el usuario "%username%"'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -32,6 +32,7 @@ menu:
save_link: 'ذخیرهٔ یک پیوند'
back_to_unread: 'بازگشت به خوانده‌نشده‌ها'
# users_management: 'Users management'
# site_credentials: 'Site credentials'
top:
add_new_entry: 'افزودن مقالهٔ تازه'
search: 'جستجو'
@ -521,6 +522,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new credential
# form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
error:
# page_title: An error occurred
@ -573,3 +594,8 @@ flashes:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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"
@ -516,11 +517,31 @@ user:
twofactor_label: "Double authentification"
save: "Sauvegarder"
delete: "Supprimer"
delete_confirm: "Voulez-vous vraiment ?"
delete_confirm: "Êtes-vous sûr ?"
back_to_list: "Revenir à la liste"
search:
placeholder: "Filtrer par nom dutilisateur ou email"
site_credential:
page_title: Gestion des accès aux sites
new_site_credential: Créer un accès à un site
edit_site_credential: Éditer l'accès d'un site
description: "Ici vous pouvez gérer les accès aux différents sites. Ces accès permettent de récupérer des contenus sur des sites qui requièrent une authentification ou un paywall"
list:
actions: Actions
edit_action: Éditer
yes: Oui
no: Non
create_new_one: Créer un nouvel accès à un site
form:
username_label: 'Identifiant'
host_label: 'Domaine'
password_label: 'Mot de passe'
save: "Sauvegarder"
delete: "Supprimer"
delete_confirm: "Êtes-vous sûr ?"
back_to_list: "Revenir à la liste"
error:
page_title: "Une erreur est survenue"
@ -570,6 +591,11 @@ flashes:
client_deleted: "Client %name% supprimé"
user:
notice:
added: "Utilisateur \"%username%\" ajouté"
updated: "Utilisateur \"%username%\" mis à jour"
deleted: "Utilisateur \"%username%\" supprimé"
added: 'Utilisateur "%username%" ajouté'
updated: 'Utilisateur "%username%" mis à jour'
deleted: 'Utilisateur "%username%" supprimé'
site_credential:
notice:
added: 'Accès au site "%host%" ajouté'
updated: 'Accès au site "%host%" mis à jour'
deleted: 'Accès au site "%host%" supprimé'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new credential
# form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
error:
# page_title: An error occurred
@ -573,3 +594,8 @@ flashes:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
placeholder: "Filtrar per nom d'utilizaire o corrièl"
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
list:
actions: 'Accions'
edit_action: 'Modificar'
yes: 'Òc'
no: 'Non'
# create_new_one: Create a new credential
form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
save: 'Enregistrar'
delete: 'Suprimir'
delete_confirm: 'Sètz segur ?'
back_to_list: 'Tornar a la lista'
error:
page_title: Una error s'es produsida
@ -573,3 +594,8 @@ flashes:
added: 'Utilizaire "%username%" ajustat'
updated: 'Utilizaire "%username%" mes a jorn'
deleted: 'Utilizaire "%username%" suprimit'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
placeholder: Filtruj po nazwie użytkownika lub adresie e-mail
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
list:
actions: Akcje
edit_action: Edytuj
yes: Tak
no: Nie
# create_new_one: Create a new credential
form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
save: Zapisz
delete: Usuń
delete_confirm: Jesteś pewien?
back_to_list: Powrót do listy
error:
page_title: Wystąpił błąd
@ -573,3 +594,8 @@ flashes:
added: 'Użytkownik "%username%" dodany'
updated: 'Użytkownik "%username%" zaktualizowany'
deleted: 'Użytkownik "%username%" usunięty'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
list:
actions: 'Ações'
edit_action: 'Editar'
yes: 'Sim'
no: 'Não'
# create_new_one: Create a new credential
form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
save: 'Salvar'
delete: 'Apagar'
delete_confirm: 'Tem certeza?'
back_to_list: 'Voltar para a lista'
error:
# page_title: An error occurred
@ -573,3 +594,8 @@ flashes:
added: 'Usuário "%username%" adicionado'
updated: 'Usuário "%username%" atualizado'
deleted: 'Usuário "%username%" removido'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -521,6 +522,26 @@ user:
search:
# placeholder: Filter by username or email
site_credential:
# page_title: Site credentials management
# new_site_credential: Create a credential
# edit_site_credential: Edit an existing credential
# description: "Here you can manage all credentials for sites which required them (create, edit and delete), like a paywall, an authentication, etc."
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new credential
# form:
# username_label: 'Username'
# host_label: 'Host'
# password_label: 'Password'
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
error:
# page_title: An error occurred
@ -573,3 +594,8 @@ flashes:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -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'
@ -571,3 +572,8 @@ flashes:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
site_credential:
notice:
# added: 'Site credential for "%host%" added'
# updated: 'Site credential for "%host%" updated'
# deleted: 'Site credential for "%host%" deleted'

View File

@ -0,0 +1,60 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<h4>{{ 'site_credential.edit_site_credential'|trans }}</h4>
<div id="set6" class="col s12">
{{ form_start(edit_form) }}
{{ form_errors(edit_form) }}
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.host) }}
{{ form_errors(edit_form.host) }}
{{ form_widget(edit_form.host) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.username) }}
{{ form_errors(edit_form.username) }}
{{ form_widget(edit_form.username) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.password) }}
{{ form_errors(edit_form.password) }}
{{ form_widget(edit_form.password) }}
</div>
</div>
<br/>
{{ form_widget(edit_form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }}
{{ form_widget(edit_form._token) }}
</form>
<p>
{{ form_start(delete_form) }}
<button onclick="return confirm('{{ 'site_credential.form.delete_confirm'|trans|escape('js') }}')" type="submit" class="btn waves-effect waves-light red">{{ 'site_credential.form.delete'|trans }}</button>
{{ form_end(delete_form) }}
</p>
<p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,42 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<p class="help">{{ 'site_credential.description'|trans|raw }}</p>
<table class="bordered">
<thead>
<tr>
<th>{{ 'site_credential.form.host_label'|trans }}</th>
<th>{{ 'site_credential.list.actions'|trans }}</th>
</tr>
</thead>
<tbody>
{% for credential in credentials %}
<tr>
<td>{{ credential.host }}</td>
<td>
<a href="{{ path('site_credentials_edit', { 'id': credential.id }) }}">{{ 'site_credential.list.edit_action'|trans }}</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<br />
<p>
<a href="{{ path('site_credentials_new') }}" class="waves-effect waves-light btn">{{ 'site_credential.list.create_new_one'|trans }}</a>
</p>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,53 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<h4>{{ 'site_credential.new_site_credential'|trans }}</h4>
<div id="set6" class="col s12">
{{ form_start(form) }}
{{ form_errors(form) }}
<div class="row">
<div class="input-field col s12">
{{ form_label(form.host) }}
{{ form_errors(form.host) }}
{{ form_widget(form.host) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(form.username) }}
{{ form_errors(form.username) }}
{{ form_widget(form.username) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(form.password) }}
{{ form_errors(form.password) }}
{{ form_widget(form.password) }}
</div>
</div>
{{ form_widget(form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }}
{{ form_rest(form) }}
</form>
<p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -38,6 +38,9 @@
{{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }}
</div>
</li>
{% if craue_setting('restricted_access') %}
<li class="menu site_credentials"><a href="{{ path('site_credentials_index') }}">{{ 'menu.left.site_credentials'|trans }}</a></li>
{% endif %}
<li class="menu config"><a href="{{ path('config') }}">{{ 'menu.left.config'|trans }}</a></li>
{% if is_granted('ROLE_SUPER_ADMIN') %}
<li class="menu users"><a href="{{ path('user_index') }}">{{ 'menu.left.users_management'|trans }}</a></li>

View File

@ -66,13 +66,13 @@
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_errors(form.config.action_mark_as_read) }}
{{ form_widget(form.config.action_mark_as_read) }}
{{ form_label(form.config.action_mark_as_read) }}
<div class="row">
<div class="input-field col s12">
{{ form_label(form.config.action_mark_as_read) }}
{{ form_errors(form.config.action_mark_as_read) }}
{{ form_widget(form.config.action_mark_as_read) }}
</div>
</div>
</div>
<div class="row">
<div class="input-field col s11">
@ -254,11 +254,11 @@
{{ form_start(form.pwd) }}
{{ form_errors(form.pwd) }}
<div class="row">
<div class="input-field col s12">
{{ 'config.form_password.description'|trans }}
<div class="row">
<div class="input-field col s12">
{{ 'config.form_password.description'|trans }}
</div>
</div>
</div>
<div class="row">
<div class="input-field col s12">

View File

@ -0,0 +1,60 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<h4>{{ 'site_credential.edit_site_credential'|trans }}</h4>
<div id="set6" class="col s12">
{{ form_start(edit_form) }}
{{ form_errors(edit_form) }}
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.host) }}
{{ form_errors(edit_form.host) }}
{{ form_widget(edit_form.host) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.username) }}
{{ form_errors(edit_form.username) }}
{{ form_widget(edit_form.username) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(edit_form.password) }}
{{ form_errors(edit_form.password) }}
{{ form_widget(edit_form.password) }}
</div>
</div>
<br/>
{{ form_widget(edit_form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }}
{{ form_widget(edit_form._token) }}
</form>
<p>
{{ form_start(delete_form) }}
<button onclick="return confirm('{{ 'site_credential.form.delete_confirm'|trans|escape('js') }}')" type="submit" class="btn waves-effect waves-light red">{{ 'site_credential.form.delete'|trans }}</button>
{{ form_end(delete_form) }}
</p>
<p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,42 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<p class="help">{{ 'site_credential.description'|trans|raw }}</p>
<table class="bordered">
<thead>
<tr>
<th>{{ 'site_credential.form.host_label'|trans }}</th>
<th>{{ 'site_credential.list.actions'|trans }}</th>
</tr>
</thead>
<tbody>
{% for credential in credentials %}
<tr>
<td>{{ credential.host }}</td>
<td>
<a href="{{ path('site_credentials_edit', { 'id': credential.id }) }}">{{ 'site_credential.list.edit_action'|trans }}</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<br />
<p>
<a href="{{ path('site_credentials_new') }}" class="waves-effect waves-light btn">{{ 'site_credential.list.create_new_one'|trans }}</a>
</p>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,53 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel">
<div class="row">
<div class="input-field col s12">
<h4>{{ 'site_credential.new_site_credential'|trans }}</h4>
<div id="set6" class="col s12">
{{ form_start(form) }}
{{ form_errors(form) }}
<div class="row">
<div class="input-field col s12">
{{ form_label(form.host) }}
{{ form_errors(form.host) }}
{{ form_widget(form.host) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(form.username) }}
{{ form_errors(form.username) }}
{{ form_widget(form.username) }}
</div>
</div>
<div class="row">
<div class="input-field col s12">
{{ form_label(form.password) }}
{{ form_errors(form.password) }}
{{ form_widget(form.password) }}
</div>
</div>
{{ form_widget(form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }}
{{ form_rest(form) }}
</form>
<p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -66,6 +66,11 @@
<li class="bold {% if currentRoute == 'config' %}active{% endif %}">
<a class="waves-effect" href="{{ path('config') }}">{{ 'menu.left.config'|trans }}</a>
</li>
{% if craue_setting('restricted_access') %}
<li class="bold {% if currentRoute starts with 'site_credentials_' %}active{% endif %}">
<a class="waves-effect" href="{{ path('site_credentials_index') }}">{{ 'menu.left.site_credentials'|trans }}</a>
</li>
{% endif %}
{% if is_granted('ROLE_SUPER_ADMIN') %}
<li class="bold {% if currentRoute starts with 'user_' %}active{% endif %}">
<a class="waves-effect" href="{{ path('user_index') }}">{{ 'menu.left.users_management'|trans }}</a>