diff options
-rw-r--r-- | app/Resources/CraueConfigBundle/translations/CraueConfigBundle.es.yml | 6 | ||||
-rw-r--r-- | docs/en/index.rst | 1 | ||||
-rw-r--r-- | docs/en/user/installation.rst | 27 | ||||
-rw-r--r-- | docs/en/user/migration.rst | 2 | ||||
-rw-r--r-- | docs/en/user/upgrade.rst | 24 | ||||
-rw-r--r-- | docs/fr/user/installation.rst | 28 | ||||
-rw-r--r-- | docs/fr/user/migration.rst | 2 | ||||
-rw-r--r-- | src/Wallabag/ApiBundle/Controller/WallabagRestController.php | 5 | ||||
-rw-r--r-- | src/Wallabag/ApiBundle/Tests/Controller/WallabagRestControllerTest.php | 2 | ||||
-rw-r--r-- | src/Wallabag/CoreBundle/Controller/ConfigController.php | 1 | ||||
-rw-r--r-- | src/Wallabag/CoreBundle/Resources/translations/messages.es.yml | 196 | ||||
-rw-r--r-- | src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php | 5 |
12 files changed, 196 insertions, 103 deletions
diff --git a/app/Resources/CraueConfigBundle/translations/CraueConfigBundle.es.yml b/app/Resources/CraueConfigBundle/translations/CraueConfigBundle.es.yml index 9c9a4802..af1657e4 100644 --- a/app/Resources/CraueConfigBundle/translations/CraueConfigBundle.es.yml +++ b/app/Resources/CraueConfigBundle/translations/CraueConfigBundle.es.yml | |||
@@ -1,6 +1,6 @@ | |||
1 | download_pictures: Descagar imagenes | 1 | download_pictures: Descargar imágenes |
2 | carrot: Activar compartir con Carrot | 2 | carrot: Activar compartir con Carrot |
3 | diaspora_url: Diaspora URL, si el servicio esta activado | 3 | diaspora_url: Diaspora URL, si el servicio está activado |
4 | export_epub: Activar exportación a ePub | 4 | export_epub: Activar exportación a ePub |
5 | export_mobi: Activar exportación a .mobi | 5 | export_mobi: Activar exportación a .mobi |
6 | export_pdf: Activar exportación a PDF | 6 | export_pdf: Activar exportación a PDF |
@@ -14,7 +14,7 @@ share_diaspora: Activar compartir con Diaspora | |||
14 | share_mail: Activar compartir con email | 14 | share_mail: Activar compartir con email |
15 | share_shaarli: Activar compartir con Shaarli | 15 | share_shaarli: Activar compartir con Shaarli |
16 | share_twitter: Activar compartir con Twitter | 16 | share_twitter: Activar compartir con Twitter |
17 | show_printlink: Mostrar un link para imprimir contenido | 17 | show_printlink: Mostrar un enlace para imprimir contenido |
18 | wallabag_support_url: URL de soporte de wallabag | 18 | wallabag_support_url: URL de soporte de wallabag |
19 | wallabag_url: URL de *tu* instancia de wallabag | 19 | wallabag_url: URL de *tu* instancia de wallabag |
20 | entry: "artículo" | 20 | entry: "artículo" |
diff --git a/docs/en/index.rst b/docs/en/index.rst index 34ec7999..590c234a 100644 --- a/docs/en/index.rst +++ b/docs/en/index.rst | |||
@@ -26,6 +26,7 @@ The main documentation for this application is organized into a couple sections: | |||
26 | user/faq | 26 | user/faq |
27 | user/installation | 27 | user/installation |
28 | user/migration | 28 | user/migration |
29 | user/upgrade | ||
29 | user/create_account | 30 | user/create_account |
30 | user/login | 31 | user/login |
31 | user/configuration | 32 | user/configuration |
diff --git a/docs/en/user/installation.rst b/docs/en/user/installation.rst index 8250d2d7..c2174a53 100644 --- a/docs/en/user/installation.rst +++ b/docs/en/user/installation.rst | |||
@@ -154,3 +154,30 @@ After reloading or restarting nginx, you should now be able to access wallabag a | |||
154 | .. note:: | 154 | .. note:: |
155 | 155 | ||
156 | When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``. | 156 | When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``. |
157 | |||
158 | |||
159 | Rights access to the folders of the project | ||
160 | ------------------------------------------- | ||
161 | |||
162 | |||
163 | Test Environment | ||
164 | ~~~~~~~~~~~~~~~~ | ||
165 | |||
166 | When we just want to test wallabag, we just run the command ``php bin/console server:run --env=prod`` to start our wallabag instance and everything will go smoothly because the user who started the project can access to the current folder naturally, without any problem. | ||
167 | |||
168 | |||
169 | Production Environment | ||
170 | ~~~~~~~~~~~~~~~~~~~~~~ | ||
171 | |||
172 | As soon as we use Apache or Nginx to access to our wallabag instance, and not from the command ``php bin/console server:run --env=prod`` to start it, we should take care to grant the good rights on the good folders to keep safe all the folders of the project. | ||
173 | |||
174 | To do so, the folder name, known as ``DocumentRoot`` (for apache) or ``root`` (for Nginx), has to be absolutely accessible by the Apache/Nginx user. Its name is generally ``www-data``, ``apache`` or ``nobody`` (depending on linux system used). | ||
175 | |||
176 | So the folder ``/var/www/wallabag/web`` has to be accessible by this last one. But this could be not enough if we just care about this folder, because we could meet a blank page or get an error 500 when trying to access to the homepage of the project. | ||
177 | |||
178 | This is due to the fact that we will need to grant the same rights access on the folder ``/var/www/wallabag/var`` like those we gave on the folder ``/var/www/wallabag/web``. Thus, we fix this problem with the following command: | ||
179 | |||
180 | .. code-block:: bash | ||
181 | |||
182 | chown -R www-data:www-data /var/www/wallabag/var | ||
183 | |||
diff --git a/docs/en/user/migration.rst b/docs/en/user/migration.rst index e1fee961..e97c6315 100644 --- a/docs/en/user/migration.rst +++ b/docs/en/user/migration.rst | |||
@@ -16,7 +16,7 @@ If you were using wallabag v1.x, you need to export your data before migrating t | |||
16 | .. note:: | 16 | .. note:: |
17 | If you encounter issues during the export or the import, don't hesitate to `ask for support <https://www.wallabag.org/pages/support.html>`__. | 17 | If you encounter issues during the export or the import, don't hesitate to `ask for support <https://www.wallabag.org/pages/support.html>`__. |
18 | 18 | ||
19 | When you have retrieved the json file containing your entries, you can install wallabag v2 if needed by following `the standard procedure <http://doc.wallabag.org/en/v2/user/installation.html>`__. | 19 | When you have retrieved the json file containing your entries, you can install wallabag v2 if needed by following `the standard procedure <http://doc.wallabag.org/en/master/user/installation.html>`__. |
20 | 20 | ||
21 | After creating an user account on your new wallabag v2 instance, you must head over to the `Import` section and select `Import from wallabag v1`. Select your json file and upload it. | 21 | After creating an user account on your new wallabag v2 instance, you must head over to the `Import` section and select `Import from wallabag v1`. Select your json file and upload it. |
22 | 22 | ||
diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst new file mode 100644 index 00000000..e4735631 --- /dev/null +++ b/docs/en/user/upgrade.rst | |||
@@ -0,0 +1,24 @@ | |||
1 | Upgrade wallabag | ||
2 | ================ | ||
3 | |||
4 | Upgrade on a dedicated web server | ||
5 | --------------------------------- | ||
6 | |||
7 | The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.0.3`` by the last release number): | ||
8 | :: | ||
9 | |||
10 | git fetch origin | ||
11 | git fetch --tags | ||
12 | git checkout 2.0.3 | ||
13 | SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist | ||
14 | php bin/console cache:clear --env=prod | ||
15 | |||
16 | |||
17 | Upgrade on a shared hosting | ||
18 | --------------------------- | ||
19 | |||
20 | Backup your ``app/config/parameters.yml`` file. Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours. | ||
21 | |||
22 | If you use SQLite, you must also copy your ``data/`` folder inside the new installation. | ||
23 | |||
24 | Empty ``var/cache`` folder. | ||
diff --git a/docs/fr/user/installation.rst b/docs/fr/user/installation.rst index 8282c474..33a2cf5c 100644 --- a/docs/fr/user/installation.rst +++ b/docs/fr/user/installation.rst | |||
@@ -148,6 +148,34 @@ En imaginant que vous vouliez installer wallabag dans le dossier /var/www/wallab | |||
148 | 148 | ||
149 | Après que vous ayez rechargé/redémarré Nginx, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld. | 149 | Après que vous ayez rechargé/redémarré Nginx, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld. |
150 | 150 | ||
151 | |||
151 | .. note:: | 152 | .. note:: |
152 | 153 | ||
153 | Si vous voulez importer un fichier important dans wallabag, vous devez ajouter cette ligne dans votre configuration nginx ``client_max_body_size XM; # allows file uploads up to X megabytes``. | 154 | Si vous voulez importer un fichier important dans wallabag, vous devez ajouter cette ligne dans votre configuration nginx ``client_max_body_size XM; # allows file uploads up to X megabytes``. |
155 | |||
156 | |||
157 | Droits d'accès aux dossiers du projet | ||
158 | ------------------------------------- | ||
159 | |||
160 | |||
161 | Environnement de test | ||
162 | ~~~~~~~~~~~~~~~~~~~~~ | ||
163 | |||
164 | Quand nous souhaitons juste tester wallabag, nous lançons simplement la commande ``php bin/console server:run --env=prod`` pour démarrer l'instance wallabag et tout se passe correctement car l'utilisateur qui a démarré le projet a accès naturellement au repertoire courant, tout va bien. | ||
165 | |||
166 | |||
167 | Environnement de production | ||
168 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
169 | |||
170 | Dès lors que nous utilisons Apache ou Nginx pour accéder à notre instance wallabag, et non plus la commande ``php bin/console server:run --env=prod`` pour la démarrer, il faut prendre garde à octroyer les bons droits aux bons dossiers afin de préserver la sécurité de l'ensemble des fichiers fournis par le projet. | ||
171 | |||
172 | Aussi, le dossier, connu sous le nom de ``DocumentRoot`` (pour apache) ou ``root`` (pour Nginx), doit être impérativement accessible par l'utilisateur de Apache ou Nginx. Le nom de cet utilisateur est généralement ``www-data``, ``apache`` ou ``nobody`` (selon les systèmes linux utilisés). | ||
173 | |||
174 | Donc le dossier ``/var/www/wallabag/web`` doit être accessible par ce dernier. Mais cela ne suffira pas si nous nous contentons de ce dossier, et nous pourrions avoir, au mieux une page blanche en accédant à la page d'accueil du projet, au pire une erreur 500. | ||
175 | |||
176 | Cela est dû au fait qu'il faut aussi octroyer les mêmes droits d'accès au dossier ``/var/www/wallabag/var`` que ceux octroyés au dossier ``/var/www/wallabag/web``. Ainsi, on règle le problème par la commande suivante : | ||
177 | |||
178 | .. code-block:: bash | ||
179 | |||
180 | chown -R www-data:www-data /var/www/wallabag/var | ||
181 | |||
diff --git a/docs/fr/user/migration.rst b/docs/fr/user/migration.rst index 9e09b0c4..012c4988 100644 --- a/docs/fr/user/migration.rst +++ b/docs/fr/user/migration.rst | |||
@@ -16,7 +16,7 @@ Si vous utilisiez wallabag v1.x, vous devez exporter vos données avant de migre | |||
16 | .. note:: | 16 | .. note:: |
17 | S'il vous arrive des problèmes durant l'export ou l'import, n'hésitez pas à `demander de l'aide <https://www.wallabag.org/pages/support.html>`__. | 17 | S'il vous arrive des problèmes durant l'export ou l'import, n'hésitez pas à `demander de l'aide <https://www.wallabag.org/pages/support.html>`__. |
18 | 18 | ||
19 | Une fois que vous avez récupéré le fichier json contenant vos données, vous pouvez installer wallabag v2 si c'est nécessaire en suivant `la procédure standard <http://doc.wallabag.org/fr/v2/user/installation.html>`__. | 19 | Une fois que vous avez récupéré le fichier json contenant vos données, vous pouvez installer wallabag v2 si c'est nécessaire en suivant `la procédure standard <http://doc.wallabag.org/fr/master/user/installation.html>`__. |
20 | 20 | ||
21 | Une fois que vous avez créé un compte utilisateur sur votre nouvelle instance de wallabag v2, rendez-vous dans la section `Import`. Vous devez choisir l'import depuis wallabag v1 puis sélectionner votre fichier json récupéré précédemment. | 21 | Une fois que vous avez créé un compte utilisateur sur votre nouvelle instance de wallabag v2, rendez-vous dans la section `Import`. Vous devez choisir l'import depuis wallabag v1 puis sélectionner votre fichier json récupéré précédemment. |
22 | 22 | ||
diff --git a/src/Wallabag/ApiBundle/Controller/WallabagRestController.php b/src/Wallabag/ApiBundle/Controller/WallabagRestController.php index 316d45be..5202c524 100644 --- a/src/Wallabag/ApiBundle/Controller/WallabagRestController.php +++ b/src/Wallabag/ApiBundle/Controller/WallabagRestController.php | |||
@@ -109,6 +109,7 @@ class WallabagRestController extends FOSRestController | |||
109 | $this->validateAuthentication(); | 109 | $this->validateAuthentication(); |
110 | 110 | ||
111 | $url = $request->request->get('url'); | 111 | $url = $request->request->get('url'); |
112 | $title = $request->request->get('title'); | ||
112 | $isArchived = (int) $request->request->get('archive'); | 113 | $isArchived = (int) $request->request->get('archive'); |
113 | $isStarred = (int) $request->request->get('starred'); | 114 | $isStarred = (int) $request->request->get('starred'); |
114 | 115 | ||
@@ -121,6 +122,10 @@ class WallabagRestController extends FOSRestController | |||
121 | ); | 122 | ); |
122 | } | 123 | } |
123 | 124 | ||
125 | if (!is_null($title)) { | ||
126 | $entry->setTitle($title); | ||
127 | } | ||
128 | |||
124 | $tags = $request->request->get('tags', ''); | 129 | $tags = $request->request->get('tags', ''); |
125 | if (!empty($tags)) { | 130 | if (!empty($tags)) { |
126 | $this->get('wallabag_core.content_proxy')->assignTagsToEntry($entry, $tags); | 131 | $this->get('wallabag_core.content_proxy')->assignTagsToEntry($entry, $tags); |
diff --git a/src/Wallabag/ApiBundle/Tests/Controller/WallabagRestControllerTest.php b/src/Wallabag/ApiBundle/Tests/Controller/WallabagRestControllerTest.php index 839ff386..2f2d92ee 100644 --- a/src/Wallabag/ApiBundle/Tests/Controller/WallabagRestControllerTest.php +++ b/src/Wallabag/ApiBundle/Tests/Controller/WallabagRestControllerTest.php | |||
@@ -152,6 +152,7 @@ class WallabagRestControllerTest extends WallabagApiTestCase | |||
152 | $this->client->request('POST', '/api/entries.json', [ | 152 | $this->client->request('POST', '/api/entries.json', [ |
153 | 'url' => 'http://www.lemonde.fr/pixels/article/2015/03/28/plongee-dans-l-univers-d-ingress-le-jeu-de-google-aux-frontieres-du-reel_4601155_4408996.html', | 153 | 'url' => 'http://www.lemonde.fr/pixels/article/2015/03/28/plongee-dans-l-univers-d-ingress-le-jeu-de-google-aux-frontieres-du-reel_4601155_4408996.html', |
154 | 'tags' => 'google', | 154 | 'tags' => 'google', |
155 | 'title' => 'New title for my article', | ||
155 | ]); | 156 | ]); |
156 | 157 | ||
157 | $this->assertEquals(200, $this->client->getResponse()->getStatusCode()); | 158 | $this->assertEquals(200, $this->client->getResponse()->getStatusCode()); |
@@ -162,6 +163,7 @@ class WallabagRestControllerTest extends WallabagApiTestCase | |||
162 | $this->assertEquals('http://www.lemonde.fr/pixels/article/2015/03/28/plongee-dans-l-univers-d-ingress-le-jeu-de-google-aux-frontieres-du-reel_4601155_4408996.html', $content['url']); | 163 | $this->assertEquals('http://www.lemonde.fr/pixels/article/2015/03/28/plongee-dans-l-univers-d-ingress-le-jeu-de-google-aux-frontieres-du-reel_4601155_4408996.html', $content['url']); |
163 | $this->assertEquals(false, $content['is_archived']); | 164 | $this->assertEquals(false, $content['is_archived']); |
164 | $this->assertEquals(false, $content['is_starred']); | 165 | $this->assertEquals(false, $content['is_starred']); |
166 | $this->assertEquals('New title for my article', $content['title']); | ||
165 | $this->assertEquals(1, $content['user_id']); | 167 | $this->assertEquals(1, $content['user_id']); |
166 | $this->assertCount(1, $content['tags']); | 168 | $this->assertCount(1, $content['tags']); |
167 | } | 169 | } |
diff --git a/src/Wallabag/CoreBundle/Controller/ConfigController.php b/src/Wallabag/CoreBundle/Controller/ConfigController.php index ccc3e8a1..4f75511b 100644 --- a/src/Wallabag/CoreBundle/Controller/ConfigController.php +++ b/src/Wallabag/CoreBundle/Controller/ConfigController.php | |||
@@ -140,6 +140,7 @@ class ConfigController extends Controller | |||
140 | $config->setItemsPerPage($this->getParameter('wallabag_core.items_on_page')); | 140 | $config->setItemsPerPage($this->getParameter('wallabag_core.items_on_page')); |
141 | $config->setRssLimit($this->getParameter('wallabag_core.rss_limit')); | 141 | $config->setRssLimit($this->getParameter('wallabag_core.rss_limit')); |
142 | $config->setLanguage($this->getParameter('wallabag_core.language')); | 142 | $config->setLanguage($this->getParameter('wallabag_core.language')); |
143 | $config->setReadingSpeed($this->getParameter('wallabag_core.reading_speed')); | ||
143 | 144 | ||
144 | $em->persist($config); | 145 | $em->persist($config); |
145 | 146 | ||
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml index 2007519a..8acb30d4 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml | |||
@@ -7,7 +7,7 @@ security: | |||
7 | register: 'Registrarse' | 7 | register: 'Registrarse' |
8 | username: 'Nombre de usuario' | 8 | username: 'Nombre de usuario' |
9 | password: 'Contraseña' | 9 | password: 'Contraseña' |
10 | # cancel: 'Cancel' | 10 | cancel: 'Cancelar' |
11 | resetting: | 11 | resetting: |
12 | description: "Introduzca su dirección del correo electrónico y le enviaremos las instrucciones para reiniciar la contraseña" | 12 | description: "Introduzca su dirección del correo electrónico y le enviaremos las instrucciones para reiniciar la contraseña" |
13 | register: | 13 | register: |
@@ -43,7 +43,7 @@ footer: | |||
43 | wallabag: | 43 | wallabag: |
44 | elsewhere: 'Lleve wallabag consigo' | 44 | elsewhere: 'Lleve wallabag consigo' |
45 | social: 'Social' | 45 | social: 'Social' |
46 | # powered_by: 'powered by' | 46 | powered_by: 'funciona por' |
47 | about: 'Acerca de' | 47 | about: 'Acerca de' |
48 | 48 | ||
49 | config: | 49 | config: |
@@ -71,7 +71,7 @@ config: | |||
71 | form_rss: | 71 | form_rss: |
72 | description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Necesita generar un token primero' | 72 | description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Necesita generar un token primero' |
73 | token_label: 'RSS token' | 73 | token_label: 'RSS token' |
74 | # no_token: 'No token' | 74 | no_token: 'No token' |
75 | token_create: 'Crear token' | 75 | token_create: 'Crear token' |
76 | token_reset: 'Reiniciar token' | 76 | token_reset: 'Reiniciar token' |
77 | rss_links: 'URL de su feed RSS' | 77 | rss_links: 'URL de su feed RSS' |
@@ -171,19 +171,19 @@ entry: | |||
171 | filter: 'Filtrar' | 171 | filter: 'Filtrar' |
172 | view: | 172 | view: |
173 | left_menu: | 173 | left_menu: |
174 | # back_to_top: 'Back to top' | 174 | back_to_top: 'Regrese al principio' |
175 | back_to_homepage: 'Volver' | 175 | back_to_homepage: 'Regrese a la página principal' |
176 | set_as_read: 'Marcar como leído' | 176 | set_as_read: 'Marcar como leído' |
177 | # set_as_unread: 'Mark as unread' | 177 | set_as_unread: 'Marcar como no leído' |
178 | set_as_favorite: 'Marcar como favorito' | 178 | set_as_favorite: 'Marcar como favorito' |
179 | view_original_article: 'Artículo original' | 179 | view_original_article: 'Artículo original' |
180 | re_fetch_content: 'Redescargar el contenido' | 180 | re_fetch_content: 'Redescargar el contenido' |
181 | delete: 'Suprimir' | 181 | delete: 'Suprimir' |
182 | add_a_tag: 'Añadir una etiqueta' | 182 | add_a_tag: 'Añadir una etiqueta' |
183 | share_content: 'Compartir' | 183 | share_content: 'Compartir' |
184 | share_email_label: 'Direccion e-mail' | 184 | share_email_label: 'Dirección e-mail' |
185 | download: 'Descargar' | 185 | download: 'Descargar' |
186 | # print: 'Print' | 186 | print: 'Imprimir' |
187 | problem: | 187 | problem: |
188 | label: '¿Algún problema?' | 188 | label: '¿Algún problema?' |
189 | description: '¿Este artículo no se muestra bien?' | 189 | description: '¿Este artículo no se muestra bien?' |
@@ -196,7 +196,7 @@ entry: | |||
196 | form_new: | 196 | form_new: |
197 | url_label: Url | 197 | url_label: Url |
198 | edit: | 198 | edit: |
199 | page_title: 'Editar una artículo' | 199 | page_title: 'Editar un artículo' |
200 | title_label: 'Título' | 200 | title_label: 'Título' |
201 | url_label: 'Url' | 201 | url_label: 'Url' |
202 | is_public_label: 'Es Público' | 202 | is_public_label: 'Es Público' |
@@ -220,14 +220,14 @@ about: | |||
220 | getting_help: | 220 | getting_help: |
221 | documentation: 'Documentación' | 221 | documentation: 'Documentación' |
222 | bug_reports: 'Reporte de errores' | 222 | bug_reports: 'Reporte de errores' |
223 | support: '<a href="https://support.wallabag.org">En nuestra web de soporte website</a> o <a href="https://github.com/wallabag/wallabag/issues">en GitHub</a>' | 223 | support: '<a href="https://support.wallabag.org">En nuestra web de apoyo website</a> o <a href="https://github.com/wallabag/wallabag/issues">en GitHub</a>' |
224 | helping: | 224 | helping: |
225 | description: 'wallabag es libre y gratuito. Usted puede ayudarnos :' | 225 | description: 'wallabag es libre y gratuito. Usted puede ayudarnos :' |
226 | by_contributing: 'contribuyendo al proyecto :' | 226 | by_contributing: 'contribuyendo al proyecto :' |
227 | by_contributing_2: 'nuestras necesidades están en un ticket' | 227 | by_contributing_2: 'nuestras necesidades están en un ticket' |
228 | by_paypal: 'via Paypal' | 228 | by_paypal: 'via Paypal' |
229 | contributors: | 229 | contributors: |
230 | description: 'Gradias a los colaboradores de la aplicación web de wallabag' | 230 | description: 'Gracias a los colaboradores de la aplicación web de wallabag' |
231 | third_party: | 231 | third_party: |
232 | description: 'Aquí está la lista de las dependencias utilizadas por wallabag (con sus licencias) :' | 232 | description: 'Aquí está la lista de las dependencias utilizadas por wallabag (con sus licencias) :' |
233 | package: 'Paquete' | 233 | package: 'Paquete' |
@@ -259,24 +259,24 @@ quickstart: | |||
259 | intro: | 259 | intro: |
260 | title: 'Bienvenido a wallabag !' | 260 | title: 'Bienvenido a wallabag !' |
261 | paragraph_1: "Le acompañaremos a su visita de wallabag y le mostraremos algunas características que le pueden interesar." | 261 | paragraph_1: "Le acompañaremos a su visita de wallabag y le mostraremos algunas características que le pueden interesar." |
262 | paragraph_2: '¡Siganos!' | 262 | paragraph_2: '¡Síganos!' |
263 | configure: | 263 | configure: |
264 | title: 'Configure la aplicación' | 264 | title: 'Configure la aplicación' |
265 | language: 'Cambie el idoma y el diseño de la aplicación' | 265 | language: 'Cambie el idioma y el diseño de la aplicación' |
266 | rss: 'Activar los feeds RSS' | 266 | rss: 'Activar los feeds RSS' |
267 | # tagging_rules: 'Write rules to automatically tag your articles' | 267 | tagging_rules: 'Escribir reglas para etiquetear automaticamente sus artículos' |
268 | admin: | 268 | admin: |
269 | # title: 'Administration' | 269 | title: 'Administración' |
270 | # description: 'As an administrator, you have privileges on wallabag. You can:' | 270 | description: 'Como administrador, tiene privilegios por wallabag. Se puede:' |
271 | # new_user: 'Create a new user' | 271 | new_user: 'Crear un nuevo usuario' |
272 | # analytics: 'Configure analytics' | 272 | analytics: 'Configure analíticas' |
273 | # sharing: 'Enable some parameters about article sharing' | 273 | sharing: 'Active unos parámetros de compartir artículos' |
274 | # export: 'Configure export' | 274 | export: 'Configure exportación' |
275 | # import: 'Configure import' | 275 | import: 'Configure importación' |
276 | first_steps: | 276 | first_steps: |
277 | title: 'Prieros pasos' | 277 | title: 'Primeros pasos' |
278 | new_article: 'Guarde su primer artículo' | 278 | new_article: 'Guarde su primer artículo' |
279 | unread_articles: '¡Y clasifiquelo!' | 279 | unread_articles: '¡Y clasifíquelo!' |
280 | migrate: | 280 | migrate: |
281 | title: 'Migrar de un servicio existente' | 281 | title: 'Migrar de un servicio existente' |
282 | description: "¿Está usando otro servicio? Le ayudaremos a migrar sus datos a wallabag." | 282 | description: "¿Está usando otro servicio? Le ayudaremos a migrar sus datos a wallabag." |
@@ -284,18 +284,18 @@ quickstart: | |||
284 | wallabag_v1: 'Migrar desde wallabag v1' | 284 | wallabag_v1: 'Migrar desde wallabag v1' |
285 | wallabag_v2: 'Migrar desde wallabag v2' | 285 | wallabag_v2: 'Migrar desde wallabag v2' |
286 | developer: | 286 | developer: |
287 | # title: 'Developers' | 287 | title: 'Promotores' |
288 | # create_application: 'Create your third application' | 288 | create_application: 'Cree su tercera aplicación' |
289 | docs: | 289 | docs: |
290 | title: 'Documentación completa' | 290 | title: 'Documentación completa' |
291 | # annotate: 'Annotate your article' | 291 | annotate: 'Anote su artículo' |
292 | export: 'Convierta sus artículos a ePub o a PDF' | 292 | export: 'Convierta sus artículos a ePub o a PDF' |
293 | search_filters: 'Aprenda a utilizar el buscador y los filtros para encontrar el artículo que le interese' | 293 | search_filters: 'Aprenda a utilizar el buscador y los filtros para encontrar el artículo que le interese' |
294 | # fetching_errors: 'What can I do if an article encounters errors during fetching?' | 294 | fetching_errors: '¿Qué puedo hacer si un artículo encuentra errores por la búsqueda?' |
295 | all_docs: '¡Y muchos más artículos!' | 295 | all_docs: '¡Y muchos más artículos!' |
296 | support: | 296 | support: |
297 | title: 'Soporte' | 297 | title: 'Apoyo' |
298 | description: 'Sí necesita ayuda, estamos disponibles para usted.' | 298 | description: 'Si necesita ayuda, estamos disponibles para usted.' |
299 | github: 'En GitHub' | 299 | github: 'En GitHub' |
300 | email: 'Por email' | 300 | email: 'Por email' |
301 | gitter: 'En Gitter' | 301 | gitter: 'En Gitter' |
@@ -303,7 +303,7 @@ quickstart: | |||
303 | tag: | 303 | tag: |
304 | page_title: 'Etiquetas' | 304 | page_title: 'Etiquetas' |
305 | list: | 305 | list: |
306 | number_on_the_page: '{0} No hay ningun etiqueta.|{1} Hay un etiqueta.|]1,Inf[ Hay %count% etiquetas.' | 306 | number_on_the_page: '{0} No hay ninguna etiqueta.|{1} Hay una etiqueta.|]1,Inf[ Hay %count% etiquetas.' |
307 | 307 | ||
308 | import: | 308 | import: |
309 | page_title: 'Importar' | 309 | page_title: 'Importar' |
@@ -311,8 +311,8 @@ import: | |||
311 | action: | 311 | action: |
312 | import_contents: 'Importar los contenidos' | 312 | import_contents: 'Importar los contenidos' |
313 | form: | 313 | form: |
314 | # mark_as_read_title: 'Mark all as read?' | 314 | mark_as_read_title: '¿Marcar todos como leídos?' |
315 | # mark_as_read_label: 'Mark all imported entries as read' | 315 | mark_as_read_label: 'Marcar todos artículos importados como leídos' |
316 | file_label: 'Fichero' | 316 | file_label: 'Fichero' |
317 | save_label: 'Importar el fichero' | 317 | save_label: 'Importar el fichero' |
318 | pocket: | 318 | pocket: |
@@ -321,78 +321,78 @@ import: | |||
321 | config_missing: | 321 | config_missing: |
322 | description: "La importación de Pocket no está configurada." | 322 | description: "La importación de Pocket no está configurada." |
323 | admin_message: 'Debe definir %keyurls%una clava del API Pocket%keyurle%.' | 323 | admin_message: 'Debe definir %keyurls%una clava del API Pocket%keyurle%.' |
324 | user_message: 'El administrador de vuestro servidor debe definir una clave API Pocket.' | 324 | user_message: 'El administrador de su servidor debe definir una clave API Pocket.' |
325 | authorize_message: 'Puedes importar sus datos desde su cuenta de Pocket. Sólo tienes que pulsar en el botón para autrizar que wallabag se conecte a getpocket.com.' | 325 | authorize_message: 'Puede importar sus datos desde su cuenta de Pocket. Sólo tiene que oprimir el botón para autorizar que wallabag se conecte a getpocket.com.' |
326 | connect_to_pocket: 'Conectese a Pocket para importar los datos' | 326 | connect_to_pocket: 'Conéctese a Pocket para importar los datos' |
327 | wallabag_v1: | 327 | wallabag_v1: |
328 | page_title: 'Importar > Wallabag v1' | 328 | page_title: 'Importar > Wallabag v1' |
329 | description: 'Va a importar sus artículos de wallabag v1. En su configuración de wallabag v1, pulse sobre "Exportar JSON" dentro de la sección "Exportar sus datos de wallabag". Usted tendrá un fichero "wallabag-export-1-xxxx-xx-xx.json".' | 329 | description: 'Va a importar sus artículos de wallabag v1. En su configuración de wallabag v1, oprima "Exportar JSON" dentro de la sección "Exportar sus datos de wallabag". Usted tendrá un fichero "wallabag-export-1-xxxx-xx-xx.json".' |
330 | how_to: 'Seleccione el fichero de su exportación de wallabag v1 y puelse en el botón para subirla y importarla.' | 330 | how_to: 'Seleccione el fichero de su exportación de wallabag v1 y oprima el botón para subirlo y importarlo.' |
331 | wallabag_v2: | 331 | wallabag_v2: |
332 | page_title: 'Importar > Wallabag v2' | 332 | page_title: 'Importar > Wallabag v2' |
333 | description: 'Va a importar sus artículos de otra instancia de wallabag v2. Vaya a Todos los artículos, entonces, en la barra lateral, clickee en "JSON". Usted tendrá un fichero "All articles.json"' | 333 | description: 'Va a importar sus artículos de otra instancia de wallabag v2. Vaya a Todos los artículos, entonces, en la barra lateral, oprima en "JSON". Usted tendrá un fichero "All articles.json"' |
334 | 334 | ||
335 | developer: | 335 | developer: |
336 | # page_title: 'Developer' | 336 | page_title: 'Promotor' |
337 | # welcome_message: 'Welcome to the wallabag API' | 337 | welcome_message: 'Bienvenido a wallabag API' |
338 | # documentation: 'Documentation' | 338 | documentation: 'Documentación' |
339 | # how_to_first_app: 'How to create my first application' | 339 | how_to_first_app: 'Cómo crear mi primera aplicación' |
340 | # full_documentation: 'View full API documentation' | 340 | full_documentation: 'Ver documentación de API entera' |
341 | # list_methods: 'List API methods' | 341 | list_methods: 'Hacer una lista de métodos API' |
342 | # clients: | 342 | clients: |
343 | # title: 'Clients' | 343 | title: 'Clientes' |
344 | # create_new: 'Create a new client' | 344 | create_new: 'Crear un nuevo cliente' |
345 | # existing_clients: | 345 | existing_clients: |
346 | # title: 'Existing clients' | 346 | title: 'Clientes actuales' |
347 | # field_id: 'Client ID' | 347 | field_id: 'identificación del cliente' |
348 | # field_secret: 'Client secret' | 348 | field_secret: 'Cliente secreto' |
349 | # field_uris: 'Redirect URIs' | 349 | field_uris: 'Redirigir los URI' |
350 | # field_grant_types: 'Grant type allowed' | 350 | field_grant_types: 'Conceder manera permitida' |
351 | # no_client: 'No client yet.' | 351 | no_client: 'No cliente todavía.' |
352 | # remove: | 352 | remove: |
353 | # warn_message_1: 'You have the ability to remove this client. This action is IRREVERSIBLE !' | 353 | warn_message_1: 'Se puede quitar este cliente. ¡Está acción no se puede ser irreversible !' |
354 | # warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag." | 354 | warn_message_2: "Si lo elimine, cada aplicación configurada con ese cliente no se puede ser autorizada por su wallbag." |
355 | # action: 'Remove this client' | 355 | action: 'Quite este cliente' |
356 | # client: | 356 | client: |
357 | # page_title: 'Developer > New client' | 357 | page_title: 'Promotor > Nuevo cliente' |
358 | # page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.' | 358 | page_description: 'Va a crear un nuevo cliente. Por favor, llene el campo abajo para URI redirigido de su aplicación.' |
359 | # form: | 359 | form: |
360 | # redirect_uris_label: 'Redirect URIs' | 360 | redirect_uris_label: 'los URI redirigidos' |
361 | # save_label: 'Create a new client' | 361 | save_label: 'Crear un nuevo cliente' |
362 | # action_back: 'Back' | 362 | action_back: 'Atrás' |
363 | # client_parameter: | 363 | client_parameter: |
364 | # page_title: 'Developer > Client parameters' | 364 | page_title: 'Promotor > Parámetros del cliente' |
365 | # page_description: 'Here are your client parameters.' | 365 | page_description: 'Aquí hay sus parámetros del cliente.' |
366 | # field_id: 'Client ID' | 366 | field_id: 'Identificación del cliente' |
367 | # field_secret: 'Client secret' | 367 | field_secret: 'Cliente secreto' |
368 | # back: 'Back' | 368 | back: 'Atrás' |
369 | # read_howto: 'Read the howto "Create my first application"' | 369 | read_howto: 'Leer el howto "Crear mi primera aplicación"' |
370 | # howto: | 370 | howto: |
371 | # page_title: 'Developer > How to create my first application' | 371 | page_title: 'Promotor > Cómo crear mi primera aplicación' |
372 | # description: | 372 | description: |
373 | # paragraph_1: 'The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.' | 373 | paragraph_1: 'Los siguientes comandos se usan el <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Esté seguro de que se instalen en sus sistema antes de usarlos.' |
374 | # paragraph_2: 'You need a token to communicate between your 3rd application and wallabag API.' | 374 | paragraph_2: 'Necesita un token para comunicar entre su tercera aplicación y wallabag API.' |
375 | # paragraph_3: 'To create this token, you need <a href="%link%">to create a new client</a>.' | 375 | paragraph_3: 'Para crear este token, necesita <a href="%link%">to create a new client</a>.' |
376 | # paragraph_4: 'Now, create your token (replace client_id, client_secret, username and password with the good values):' | 376 | paragraph_4: 'Ahora, cree su token (reemplace cliente_id, cliente_secreto, usuario y contraseñ con las buenas entradas):' |
377 | # paragraph_5: 'The API will return a response like this:' | 377 | paragraph_5: 'Este API devolverá una respuestas así:' |
378 | # paragraph_6: 'The access_token is useful to do a call to the API endpoint. For example:' | 378 | paragraph_6: 'El acceso_token es útil para hacer una llamada al final API. Por ejempolo:' |
379 | # paragraph_7: 'This call will return all the entries for your user.' | 379 | paragraph_7: 'Esta llamada devolverá todos los artículos para su usuario.' |
380 | # paragraph_8: 'If you want to see all the API endpoints, you can have a look <a href="%link%">to our API documentation</a>.' | 380 | paragraph_8: 'Si quiere ver todos los fines de API, se puede ver <a href="%link%">a nuestra documentación API</a>.' |
381 | # back: 'Back' | 381 | back: 'Atrás' |
382 | 382 | ||
383 | validator: | 383 | validator: |
384 | password_must_match: 'Las contraseñas no coinciden' | 384 | password_must_match: 'Las contraseñas no coinciden' |
385 | password_too_short: 'La contraseña debe tener al menos 8 carácteres' | 385 | password_too_short: 'La contraseña debe tener al menos 8 carácteres' |
386 | # password_wrong_value: 'Wrong value for your current password' | 386 | password_wrong_value: 'Entrada equivocada para su contraseña actual' |
387 | # item_per_page_too_high: 'This will certainly kill the app' | 387 | item_per_page_too_high: 'Esto matará la aplicación' |
388 | # rss_limit_too_hight: 'This will certainly kill the app' | 388 | rss_limit_too_hight: 'Esto matará la aplicación' |
389 | 389 | ||
390 | flashes: | 390 | flashes: |
391 | config: | 391 | config: |
392 | notice: | 392 | notice: |
393 | config_saved: 'Configuración guardada. Algunos parámetros serán recargados cuando se vuelva a conectar.' | 393 | config_saved: 'Configuración guardada. Algunos parámetros serán recargados cuando se vuelva a conectar.' |
394 | password_updated: 'Contraseña actualizada' | 394 | password_updated: 'Contraseña actualizada' |
395 | password_not_updated_demo: "En modo demo, no puedes cambiar la contraseña del usuario." | 395 | password_not_updated_demo: "En modo demo, no puede cambiar la contraseña del usuario." |
396 | user_updated: 'Su información personal ha sido actualizada' | 396 | user_updated: 'Su información personal ha sido actualizada' |
397 | rss_updated: 'La configuración de los feeds RSS ha sido actualizada' | 397 | rss_updated: 'La configuración de los feeds RSS ha sido actualizada' |
398 | tagging_rules_updated: 'Regla de etiquetado borrada' | 398 | tagging_rules_updated: 'Regla de etiquetado borrada' |
@@ -401,11 +401,11 @@ flashes: | |||
401 | rss_token_updated: 'RSS token actualizado' | 401 | rss_token_updated: 'RSS token actualizado' |
402 | entry: | 402 | entry: |
403 | notice: | 403 | notice: |
404 | # entry_already_saved: 'Entry already saved on %date%' | 404 | entry_already_saved: 'Entrada ya guardada por %fecha%' |
405 | # entry_saved: 'Entry saved' | 405 | entry_saved: 'Entrada guardada' |
406 | # entry_updated: 'Entry updated' | 406 | entry_updated: 'Entrada actualizada' |
407 | # entry_reloaded: 'Entry reloaded' | 407 | entry_reloaded: 'Entrada recargada' |
408 | # entry_reload_failed: 'Failed to reload entry' | 408 | entry_reload_failed: 'Entrada recargada reprobada' |
409 | entry_archived: 'Artículo archivado' | 409 | entry_archived: 'Artículo archivado' |
410 | entry_unarchived: 'Artículo desarchivado' | 410 | entry_unarchived: 'Artículo desarchivado' |
411 | entry_starred: 'Artículo guardado en los favoritos' | 411 | entry_starred: 'Artículo guardado en los favoritos' |
@@ -416,10 +416,10 @@ flashes: | |||
416 | tag_added: 'Etiqueta añadida' | 416 | tag_added: 'Etiqueta añadida' |
417 | import: | 417 | import: |
418 | notice: | 418 | notice: |
419 | # failed: 'Import failed, please try again.' | 419 | failed: 'Importación reprobada, por favor inténtelo de nuevo.' |
420 | # failed_on_file: 'Error while processing import. Please verify your import file.' | 420 | failed_on_file: 'Se ocurre un error por procesar importación. Por favor verifique su archivo importado.' |
421 | # summary: 'Import summary: %imported% imported, %skipped% already saved.' | 421 | summary: 'Resúmen importado: %importado% importado, %saltados% ya guardado.' |
422 | developer: | 422 | developer: |
423 | notice: | 423 | notice: |
424 | # client_created: 'New client created.' | 424 | client_created: 'Nuevo cliente creado.' |
425 | # client_deleted: 'Client deleted' | 425 | client_deleted: 'Cliente suprimido' |
diff --git a/src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php b/src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php index db38d865..8cdedfda 100644 --- a/src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php +++ b/src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php | |||
@@ -392,6 +392,11 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
392 | 392 | ||
393 | $this->assertTrue(false !== $user); | 393 | $this->assertTrue(false !== $user); |
394 | $this->assertTrue($user->isEnabled()); | 394 | $this->assertTrue($user->isEnabled()); |
395 | $this->assertEquals('material', $user->getConfig()->getTheme()); | ||
396 | $this->assertEquals(12, $user->getConfig()->getItemsPerPage()); | ||
397 | $this->assertEquals(50, $user->getConfig()->getRssLimit()); | ||
398 | $this->assertEquals('en', $user->getConfig()->getLanguage()); | ||
399 | $this->assertEquals(1, $user->getConfig()->getReadingSpeed()); | ||
395 | } | 400 | } |
396 | 401 | ||
397 | public function testRssUpdateResetToken() | 402 | public function testRssUpdateResetToken() |