aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/fr
diff options
context:
space:
mode:
Diffstat (limited to 'docs/fr')
-rw-r--r--docs/fr/conf.py55
-rw-r--r--docs/fr/developer/api.rst271
-rw-r--r--docs/fr/developer/asynchronous.rst160
-rw-r--r--docs/fr/developer/console_commands.rst30
-rw-r--r--docs/fr/developer/docker.rst50
-rw-r--r--docs/fr/developer/documentation.rst12
-rw-r--r--docs/fr/developer/front-end.rst33
-rw-r--r--docs/fr/developer/paywall.rst65
-rw-r--r--docs/fr/developer/testsuite.rst10
-rw-r--r--docs/fr/developer/translate.rst62
-rw-r--r--docs/fr/index.rst54
-rw-r--r--docs/fr/requirements.txt2
-rw-r--r--docs/fr/user/android.rst96
-rw-r--r--docs/fr/user/articles.rst124
-rw-r--r--docs/fr/user/backup.rst26
-rw-r--r--docs/fr/user/configuration.rst134
-rw-r--r--docs/fr/user/configuring_mobile.rst12
-rw-r--r--docs/fr/user/create_account.rst42
-rw-r--r--docs/fr/user/errors_during_fetching.rst37
-rw-r--r--docs/fr/user/faq.rst42
-rw-r--r--docs/fr/user/filters.rst55
-rw-r--r--docs/fr/user/import.rst155
-rw-r--r--docs/fr/user/installation.rst316
-rw-r--r--docs/fr/user/parameters.rst95
-rw-r--r--docs/fr/user/query-upgrade-21-22.rst984
-rw-r--r--docs/fr/user/tags.rst2
-rw-r--r--docs/fr/user/upgrade.rst140
27 files changed, 0 insertions, 3064 deletions
diff --git a/docs/fr/conf.py b/docs/fr/conf.py
deleted file mode 100644
index 90489d83..00000000
--- a/docs/fr/conf.py
+++ /dev/null
@@ -1,55 +0,0 @@
1# -*- coding: utf-8 -*-
2#
3# wallabag documentation build configuration file, created by
4# sphinx-quickstart on Fri Oct 16 06:47:23 2015.
5
6import sys
7import os
8
9extensions = []
10templates_path = ['_templates']
11source_suffix = '.rst'
12master_doc = 'index'
13project = u'wallabag-fr'
14copyright = u'2013-2017, Nicolas Lœuillet - MIT Licence'
15version = '2.3.0'
16release = version
17exclude_patterns = ['_build']
18pygments_style = 'sphinx'
19html_theme = 'default'
20html_static_path = ['_static']
21htmlhelp_basename = 'wallabagfrdoc'
22
23latex_elements = {
24}
25
26latex_documents = [
27 ('index', 'wallabag-fr.tex', u'wallabag Documentation',
28 u'Nicolas Lœuillet', 'manual'),
29]
30
31man_pages = [
32 ('index', 'wallabagfr', u'wallabag Documentation',
33 [u'Nicolas Lœuillet'], 1)
34]
35
36texinfo_documents = [
37 ('index', 'wallabag', u'wallabag Documentation',
38 u'Nicolas Lœuillet', 'wallabag', 'wallabag is an opensource read-it-later.',
39 'Miscellaneous'),
40]
41
42##### Guzzle sphinx theme
43
44import guzzle_sphinx_theme
45html_translator_class = 'guzzle_sphinx_theme.HTMLTranslator'
46html_theme_path = guzzle_sphinx_theme.html_theme_path()
47html_theme = 'guzzle_sphinx_theme'
48
49# Custom sidebar templates, maps document names to template names.
50html_sidebars = {
51 '**': ['logo-text.html', 'globaltoc.html', 'searchbox.html']
52}
53
54# Register the theme as an extension to generate a sitemap.xml
55extensions.append("guzzle_sphinx_theme")
diff --git a/docs/fr/developer/api.rst b/docs/fr/developer/api.rst
deleted file mode 100644
index e7bb264f..00000000
--- a/docs/fr/developer/api.rst
+++ /dev/null
@@ -1,271 +0,0 @@
1Documentation de l'API
2======================
3
4Grâce à cette documentation, nous allons voir comment interagir avec l'API de wallabag.
5
6Pré-requis
7----------
8
9* wallabag fraichement installé et disponible à http://localhost:8000
10* ``httpie`` installé sur votre ordinateur (`voir le site du projet <https://github.com/jkbrzt/httpie>`__). Vous pouvez également adapter les commandes en utilisant curl ou wget.
11* toutes les méthodes de l'API documentées ici http://localhost:8000/api/doc
12
13Créer un nouveau client d'API
14-----------------------------
15
16Depuis votre wallabag, vous pouvez créer un nouveau client d'API à cette URL http://localhost:8000/developer/client/create.
17
18Vous devez renseigner l'URL de redirection de votre application et créer votre client. Si votre application est une application desktop, renseignez l'URL que vous souhaitez.
19
20Vous obtiendrez les informations suivantes :
21
22::
23
24 Client ID:
25
26 1_3o53gl30vhgk0c8ks4cocww08o84448osgo40wgw4gwkoo8skc
27
28 Client secret:
29
30 636ocbqo978ckw0gsw4gcwwocg8044sco0w8w84cws48ggogs4
31
32
33Créer un jeton
34--------------
35
36Pour chaque appel d'API, vous aurez besoin d'un jeton. Créons-le avec la commande suivante (remplacez ``client_id``, ``client_secret``, ``username`` and ``password`` par leur valeur):
37
38::
39
40 http POST http://localhost:8000/oauth/v2/token \
41 grant_type=password \
42 client_id=1_3o53gl30vhgk0c8ks4cocww08o84448osgo40wgw4gwkoo8skc \
43 client_secret=636ocbqo978ckw0gsw4gcwwocg8044sco0w8w84cws48ggogs4 \
44 username=wallabag \
45 password=wallabag
46
47Vous obtiendrez :
48
49::
50
51 HTTP/1.1 200 OK
52 Cache-Control: no-store, private
53 Connection: close
54 Content-Type: application/json
55 Date: Tue, 05 Apr 2016 08:44:33 GMT
56 Host: localhost:8000
57 Pragma: no-cache
58 X-Debug-Token: 19c8e0
59 X-Debug-Token-Link: /_profiler/19c8e0
60 X-Powered-By: PHP/7.0.4
61
62 {
63 "access_token": "ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA",
64 "expires_in": 3600,
65 "refresh_token": "OTNlZGE5OTJjNWQwYzc2NDI5ZGE5MDg3ZTNjNmNkYTY0ZWZhZDVhNDBkZTc1ZTNiMmQ0MjQ0OThlNTFjNTQyMQ",
66 "scope": null,
67 "token_type": "bearer"
68 }
69
70Nous allons utiliser la valeur de ``access_token`` dans nos prochains appels.
71
72Exemple cURL :
73
74::
75
76 curl -s "https://localhost:8000/oauth/v2/token?grant_type=password&client_id=1_3o53gl30vhgk0c8ks4cocww08o84448osgo40wgw4gwkoo8skc&client_secret=636ocbqo978ckw0gsw4gcwwocg8044sco0w8w84cws48ggogs4&username=wallabag&password=wallabag"
77
78Récupérer les articles existants
79--------------------------------
80
81Documentation pour cette méthode : http://localhost:8000/api/doc#get--api-entries.{_format}
82
83Comme nous venons tout juste d'installer wallabag, nous n'aurons aucun résultat avec cette commande :
84
85::
86
87 http GET http://localhost:8000/api/entries.json \
88 "Authorization:Bearer ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
89
90retournera :
91
92::
93
94 HTTP/1.1 200 OK
95 0: application/json
96 Cache-Control: no-cache
97 Connection: close
98 Content-Type: application/json
99 Date: Tue, 05 Apr 2016 08:51:32 GMT
100 Host: localhost:8000
101 Set-Cookie: PHPSESSID=nrogm748md610ovhu6j70c3q63; path=/; HttpOnly
102 X-Debug-Token: 4fbbc4
103 X-Debug-Token-Link: /_profiler/4fbbc4
104 X-Powered-By: PHP/7.0.4
105
106 {
107 "_embedded": {
108 "items": []
109 },
110 "_links": {
111 "first": {
112 "href": "http://localhost:8000/api/entries?page=1&perPage=30"
113 },
114 "last": {
115 "href": "http://localhost:8000/api/entries?page=1&perPage=30"
116 },
117 "self": {
118 "href": "http://localhost:8000/api/entries?page=1&perPage=30"
119 }
120 },
121 "limit": 30,
122 "page": 1,
123 "pages": 1,
124 "total": 0
125 }
126
127Le tableau ``items`` est vide.
128
129Exemple cURL :
130
131::
132
133 curl --get "https://localhost:8000/api/entries.html?access_token=ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
134
135Créer votre premier article
136---------------------------
137
138Documentation pour cette méthode : http://localhost:8000/api/doc#post--api-entries.{_format}
139
140::
141
142 http POST http://localhost:8000/api/entries.json \
143 "Authorization:Bearer ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA" \
144 url="http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html"
145
146retournera :
147
148::
149
150 HTTP/1.1 200 OK
151 0: application/json
152 Cache-Control: no-cache
153 Connection: close
154 Content-Type: application/json
155 Date: Tue, 05 Apr 2016 09:07:54 GMT
156 Host: localhost:8000
157 Set-Cookie: PHPSESSID=bjie40ck72kp2pst3i71gf43a4; path=/; HttpOnly
158 X-Debug-Token: e01c51
159 X-Debug-Token-Link: /_profiler/e01c51
160 X-Powered-By: PHP/7.0.4
161
162 {
163 "_links": {
164 "self": {
165 "href": "/api/entries/1"
166 }
167 },
168 "content": "<p class=\"chapo\">Fonctionnant sur le même principe que Pocket, Instapaper ou Readability, le logiciel Wallabag permet de mémoriser des articles pour les lire plus tard. Sa nouvelle version apporte une multitude de nouvelles fonctionnalités.</p><p>Si vous utilisez Firefox comme navigateur web, vous avez peut-être constaté l’arrivée d’<a href=\"http://www.numerama.com/magazine/33292-update-firefox.html\">une fonctionnalité intitulée Pocket</a>. Disponible autrefois sous la forme d’un module complémentaire, et sous un autre nom (Read it Later), elle est depuis le mois de juin 2015 directement incluse au sein de Firefox.</p>\n<p>Concrètement, Pocket sert à garder en mémoire des contenus que vous croisez au fil de la navigation, comme des articles de presse ou des vidéos, afin de pouvoir les consulter plus tard. Pocket fonctionne un peu comme un système de favoris, mais en bien plus élaboré grâce à ses options supplémentaires.</p>\n<p>Mais <a href=\"https://en.wikipedia.org/wiki/Pocket_%28application%29#Firefox_integration\" target=\"_blank\">Pocket fait polémique</a>, car il s’agit d’un projet propriétaire qui est intégré dans un logiciel libre. C’est pour cette raison que des utilisateurs ont choisi de se tourner vers d’autres solutions, comme <strong>Wallabag</strong>, qui est l’équivalent libre de Pocket et d’autres systèmes du même genre, comme Instapaper et Readability.</p>\n<p>Et justement, Wallabag évolue. C’est ce dimanche que la <a href=\"https://www.wallabag.org/blog/2016/04/03/wallabag-v2\" target=\"_blank\">version 2.0.0 du logiciel</a> a été publiée par l’équipe en  charge de son développement et celle-ci contient de nombreux changements par rapport aux moutures précédentes (la <a href=\"http://doc.wallabag.org/fr/v2/\" target=\"_blank\">documentation est traduite</a> en français), lui permettant d’apparaître comme une alternative à Pocket, Instapaper et Readability.</p>\n<p><img class=\"aligncenter size-medium wp-image-160439\" src=\"http://www.numerama.com/content/uploads/2016/04/homepage-680x347.png\" alt=\"homepage\" width=\"680\" height=\"347\" srcset=\"//www.numerama.com/content/uploads/2016/04/homepage-680x347.png 680w, //www.numerama.com/content/uploads/2016/04/homepage-1024x523.png 1024w, //www.numerama.com/content/uploads/2016/04/homepage-270x138.png 270w, //www.numerama.com/content/uploads/2016/04/homepage.png 1286w\" sizes=\"(max-width: 680px) 100vw, 680px\"/></p>\n<p>Parmi les principaux changements que l’on peut retenir avec cette nouvelle version, notons la possibilité d’écrire des annotations dans les articles mémorisés, de filtrer les contenus selon divers critères (temps de lecture, nom de domaine, date de création, statut…), d’assigner des mots-clés aux entrées, de modifier le titre des articles, le support des flux RSS ou encore le support de plusieurs langues dont le français.</p>\n<p>D’autres options sont également à signaler, comme l’aperçu d’un article mémorisé (si l’option est disponible), un guide de démarrage rapide pour les débutants, un outil d’export dans divers formats (PDF, JSON, EPUB, MOBI, XML, CSV et TXT) et, surtout, la possibilité de migrer vers Wallabag depuis Pocket, afin de convaincre les usagers de se lancer.</p>\n \n \n <footer class=\"clearfix\" readability=\"1\"><p class=\"source\">\n Crédit photo de la une : <a href=\"https://www.flickr.com/photos/bookgrl/2388310523/\">Laura Taylor</a>\n </p>\n \n <p><a href=\"http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html?&amp;show_reader_reports\" target=\"_blank\" rel=\"nofollow\">Signaler une erreur dans le texte</a></p>\n \n</footer> <section class=\"related-article\"><header><h3>Articles liés</h3>\n </header><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/magazine/34444-firefox-prepare-l-enterrement-des-vieux-plugins.html\" title=\"Firefox prépare l'enterrement des vieux plugins\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=200,135\" srcset=\"&#10; //c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=200,135 200w,&#10; //c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Firefox prépare l'enterrement des vieux plugins\"/></div>\n <h4> Firefox prépare l'enterrement des vieux plugins </h4>\n </a>\n <footer class=\"span12\">\n </footer></article><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/tech/131636-activer-navigation-privee-navigateur-web.html\" title=\"Comment activer la navigation privée sur son navigateur web\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=200,135\" srcset=\"&#10; //c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=200,135 200w,&#10; //c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Comment activer la navigation privée sur son navigateur web\"/></div>\n <h4> Comment activer la navigation privée sur son navigateur web </h4>\n </a>\n <footer class=\"span12\">\n </footer></article><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/tech/144028-firefox-se-mettra-a-jour-regulierement.html\" title=\"Firefox se mettra à jour un peu moins régulièrement\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=200,135\" srcset=\"&#10; //c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=200,135 200w,&#10; //c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Firefox se mettra à jour un peu moins régulièrement\"/></div>\n <h4> Firefox se mettra à jour un peu moins régulièrement </h4>\n </a>\n <footer class=\"span12\">\n </footer></article>\n</section>\n",
169 "created_at": "2016-04-05T09:07:54+0000",
170 "domain_name": "www.numerama.com",
171 "id": 1,
172 "is_archived": 0,
173 "is_starred": 0,
174 "language": "fr-FR",
175 "mimetype": "text/html",
176 "preview_picture": "http://www.numerama.com/content/uploads/2016/04/post-it.jpg",
177 "reading_time": 2,
178 "tags": [],
179 "title": "Le Pocket libre Wallabag fait le plein de fonctionnalités - Tech - Numerama",
180 "updated_at": "2016-04-05T09:07:54+0000",
181 "url": "http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html",
182 "user_email": "",
183 "user_id": 1,
184 "user_name": "wallabag"
185 }
186
187Maintenant, si vous exécutez la précédente commande (voir **Récupérer les articles existants**), vous obtiendrez quelque chose.
188
189Exemple cURL :
190
191::
192
193 curl "https://localhost:8000/api/entries.html?access_token=ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA&url=http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html"
194
195Supprimer un article
196--------------------
197
198Documentation pour cette méthode : http://localhost:8000/api/doc#delete--api-entries-{entry}.{_format}
199
200::
201
202 http DELETE http://localhost:8000/api/entries/1.json \
203 "Authorization:Bearer ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
204
205retournera :
206
207::
208
209 HTTP/1.1 200 OK
210 0: application/json
211 Cache-Control: no-cache
212 Connection: close
213 Content-Type: application/json
214 Date: Tue, 05 Apr 2016 09:19:07 GMT
215 Host: localhost:8000
216 Set-Cookie: PHPSESSID=jopgnfvmuc9a62b27sqm6iulr6; path=/; HttpOnly
217 X-Debug-Token: 887cef
218 X-Debug-Token-Link: /_profiler/887cef
219 X-Powered-By: PHP/7.0.4
220
221 {
222 "_links": {
223 "self": {
224 "href": "/api/entries/"
225 }
226 },
227 "annotations": [],
228 "content": "<p class=\"chapo\">Fonctionnant sur le même principe que Pocket, Instapaper ou Readability, le logiciel Wallabag permet de mémoriser des articles pour les lire plus tard. Sa nouvelle version apporte une multitude de nouvelles fonctionnalités.</p><p>Si vous utilisez Firefox comme navigateur web, vous avez peut-être constaté l’arrivée d’<a href=\"http://www.numerama.com/magazine/33292-update-firefox.html\">une fonctionnalité intitulée Pocket</a>. Disponible autrefois sous la forme d’un module complémentaire, et sous un autre nom (Read it Later), elle est depuis le mois de juin 2015 directement incluse au sein de Firefox.</p>\n<p>Concrètement, Pocket sert à garder en mémoire des contenus que vous croisez au fil de la navigation, comme des articles de presse ou des vidéos, afin de pouvoir les consulter plus tard. Pocket fonctionne un peu comme un système de favoris, mais en bien plus élaboré grâce à ses options supplémentaires.</p>\n<p>Mais <a href=\"https://en.wikipedia.org/wiki/Pocket_%28application%29#Firefox_integration\" target=\"_blank\">Pocket fait polémique</a>, car il s’agit d’un projet propriétaire qui est intégré dans un logiciel libre. C’est pour cette raison que des utilisateurs ont choisi de se tourner vers d’autres solutions, comme <strong>Wallabag</strong>, qui est l’équivalent libre de Pocket et d’autres systèmes du même genre, comme Instapaper et Readability.</p>\n<p>Et justement, Wallabag évolue. C’est ce dimanche que la <a href=\"https://www.wallabag.org/blog/2016/04/03/wallabag-v2\" target=\"_blank\">version 2.0.0 du logiciel</a> a été publiée par l’équipe en  charge de son développement et celle-ci contient de nombreux changements par rapport aux moutures précédentes (la <a href=\"http://doc.wallabag.org/fr/v2/\" target=\"_blank\">documentation est traduite</a> en français), lui permettant d’apparaître comme une alternative à Pocket, Instapaper et Readability.</p>\n<p><img class=\"aligncenter size-medium wp-image-160439\" src=\"http://www.numerama.com/content/uploads/2016/04/homepage-680x347.png\" alt=\"homepage\" width=\"680\" height=\"347\" srcset=\"//www.numerama.com/content/uploads/2016/04/homepage-680x347.png 680w, //www.numerama.com/content/uploads/2016/04/homepage-1024x523.png 1024w, //www.numerama.com/content/uploads/2016/04/homepage-270x138.png 270w, //www.numerama.com/content/uploads/2016/04/homepage.png 1286w\" sizes=\"(max-width: 680px) 100vw, 680px\"/></p>\n<p>Parmi les principaux changements que l’on peut retenir avec cette nouvelle version, notons la possibilité d’écrire des annotations dans les articles mémorisés, de filtrer les contenus selon divers critères (temps de lecture, nom de domaine, date de création, statut…), d’assigner des mots-clés aux entrées, de modifier le titre des articles, le support des flux RSS ou encore le support de plusieurs langues dont le français.</p>\n<p>D’autres options sont également à signaler, comme l’aperçu d’un article mémorisé (si l’option est disponible), un guide de démarrage rapide pour les débutants, un outil d’export dans divers formats (PDF, JSON, EPUB, MOBI, XML, CSV et TXT) et, surtout, la possibilité de migrer vers Wallabag depuis Pocket, afin de convaincre les usagers de se lancer.</p>\n \n \n <footer class=\"clearfix\" readability=\"1\"><p class=\"source\">\n Crédit photo de la une : <a href=\"https://www.flickr.com/photos/bookgrl/2388310523/\">Laura Taylor</a>\n </p>\n \n <p><a href=\"http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html?&amp;show_reader_reports\" target=\"_blank\" rel=\"nofollow\">Signaler une erreur dans le texte</a></p>\n \n</footer> <section class=\"related-article\"><header><h3>Articles liés</h3>\n </header><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/magazine/34444-firefox-prepare-l-enterrement-des-vieux-plugins.html\" title=\"Firefox prépare l'enterrement des vieux plugins\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=200,135\" srcset=\"&#10; //c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=200,135 200w,&#10; //c2.lestechnophiles.com/www.numerama.com/content/uploads/2015/10/cimetierecolleville.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Firefox prépare l'enterrement des vieux plugins\"/></div>\n <h4> Firefox prépare l'enterrement des vieux plugins </h4>\n </a>\n <footer class=\"span12\">\n </footer></article><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/tech/131636-activer-navigation-privee-navigateur-web.html\" title=\"Comment activer la navigation privée sur son navigateur web\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=200,135\" srcset=\"&#10; //c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=200,135 200w,&#10; //c1.lestechnophiles.com/www.numerama.com/content/uploads/2015/11/Incognito.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Comment activer la navigation privée sur son navigateur web\"/></div>\n <h4> Comment activer la navigation privée sur son navigateur web </h4>\n </a>\n <footer class=\"span12\">\n </footer></article><article class=\"post-grid format-article\"><a class=\"floatleft\" href=\"http://www.numerama.com/tech/144028-firefox-se-mettra-a-jour-regulierement.html\" title=\"Firefox se mettra à jour un peu moins régulièrement\">\n <div class=\"cover-preview cover-tech\">\n <p>Lire</p>\n \n \n \n <img class=\"cover-preview_img\" src=\"http://c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=200,135\" srcset=\"&#10; //c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=200,135 200w,&#10; //c0.lestechnophiles.com/www.numerama.com/content/uploads/2016/02/firefox-mobile.jpg?resize=100,67 100w,&#10; \" sizes=\"(min-width: 1001px) 200px, (max-width: 1000px) 100px\" alt=\"Firefox se mettra à jour un peu moins régulièrement\"/></div>\n <h4> Firefox se mettra à jour un peu moins régulièrement </h4>\n </a>\n <footer class=\"span12\">\n </footer></article>\n</section>\n",
229 "created_at": "2016-04-05T09:07:54+0000",
230 "domain_name": "www.numerama.com",
231 "is_archived": 0,
232 "is_starred": 0,
233 "language": "fr-FR",
234 "mimetype": "text/html",
235 "preview_picture": "http://www.numerama.com/content/uploads/2016/04/post-it.jpg",
236 "reading_time": 2,
237 "tags": [],
238 "title": "Le Pocket libre Wallabag fait le plein de fonctionnalités - Tech - Numerama",
239 "updated_at": "2016-04-05T09:07:54+0000",
240 "url": "http://www.numerama.com/tech/160115-le-pocket-libre-wallabag-fait-le-plein-de-fonctionnalites.html",
241 "user_email": "",
242 "user_id": 1,
243 "user_name": "wallabag"
244 }
245
246Et si vous voulez voir la liste des articles existants (voir **Récupérer les articles existants**), le tableau sera vide.
247
248Exemple cURL :
249
250::
251
252 curl --request DELETE "https://localhost:8000/api/entries/1.html?access_token=ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
253
254Autres méthodes
255---------------
256
257Nous n'écrirons pas d'exemples pour toutes les méthodes de l'API.
258
259Jetez un œil à la liste complète ici http://localhost:8000/api/doc pour connaitre chaque méthode.
260
261Ressources tierces
262------------------
263
264Certaines applications ou bibliothèques utilisent notre API. En voici une liste non exhaustive :
265
266- `Java wrapper for the wallabag API <https://github.com/di72nn/wallabag-api-wrapper>`_ par Dmitriy Bogdanov.
267- `.NET library for the wallabag v2 API <https://github.com/jlnostr/wallabag-api>`_ par Julian Oster.
268- `Python API for wallabag <https://github.com/foxmask/wallabag_api>`_ par FoxMaSk, pour son projet `Trigger Happy <https://blog.trigger-happy.eu/>`_.
269- `Un plugin <https://github.com/joshp23/ttrss-to-wallabag-v2>`_ conçu pour `Tiny Tiny RSS <https://tt-rss.org/gitlab/fox/tt-rss/wikis/home>`_ qui utilise l'API wallabag v2. Par Josh Panter.
270- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ par Strubbl, pour son projets `wallabag-stats graphe <https://github.com/Strubbl/wallabag-stats>`_ et l'outil de ligne de commande `wallabag-add-article <https://github.com/Strubbl/wallabag-add-article>`_.
271- Tool to automatically download Wallabag articles into your local computer or Kobo ebook reader `wallabako <https://gitlab.com/anarcat/wallabako>`_ par anarcat.
diff --git a/docs/fr/developer/asynchronous.rst b/docs/fr/developer/asynchronous.rst
deleted file mode 100644
index ff22daea..00000000
--- a/docs/fr/developer/asynchronous.rst
+++ /dev/null
@@ -1,160 +0,0 @@
1Tâches asynchrones
2==================
3
4Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser RabbitMQ ou Redis.
5
6Installer RabbitMQ pour des tâches asynchrones
7----------------------------------------------
8
9Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser RabbitMQ.
10
11Pré-requis
12^^^^^^^^^^
13
14Vous devez installer RabbitMQ sur votre serveur.
15
16Installation
17^^^^^^^^^^^^
18
19.. code:: bash
20
21 wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
22 apt-key add rabbitmq-signing-key-public.asc
23 apt-get update
24 apt-get install rabbitmq-server
25
26Configuration et démarrage
27^^^^^^^^^^^^^^^^^^^^^^^^^^
28
29.. code:: bash
30
31 rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
32 rabbitmq-server -detached
33
34Arrêter RabbitMQ
35^^^^^^^^^^^^^^^^
36
37.. code:: bash
38
39 rabbitmqctl stop
40
41Configurer RabbitMQ dans wallabag
42^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
43
44Modifiez votre fichier ``app/config/parameters.yml`` pour éditer la configuration RabbitMQ. Celle par défaut devrait convenir :
45
46.. code:: yaml
47
48 rabbitmq_host: localhost
49 rabbitmq_port: 5672
50 rabbitmq_user: guest
51 rabbitmq_password: guest
52 rabbitmq_prefetch_count: 10 # lire http://www.rabbitmq.com/consumer-prefetch.html
53
54Activer RabbitMQ dans wallabag
55^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
56
57Dans les paramètres internes, section **Import**, activez RabbitMQ (avec la valeur 1).
58
59Démarrer les clients RabbitMQ
60^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
61
62En fonction du service dont vous souhaitez importer vos données, vous devez activer un (ou plusieurs si vous souhaitez en supporter plusieurs) cron job :
63
64.. code:: bash
65
66 # for Pocket import
67 bin/console rabbitmq:consumer -e=prod import_pocket -w
68
69 # for Readability import
70 bin/console rabbitmq:consumer -e=prod import_readability -w
71
72 # for Instapaper import
73 bin/console rabbitmq:consumer -e=prod import_instapaper -w
74
75 # for wallabag v1 import
76 bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
77
78 # for wallabag v2 import
79 bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
80
81 # for Firefox import
82 bin/console rabbitmq:consumer -e=prod import_firefox -w
83
84 # for Chrome import
85 bin/console rabbitmq:consumer -e=prod import_chrome -w
86
87Installer Redis pour des tâches asynchrones
88-------------------------------------------
89
90Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser Redis.
91
92Pré-requis
93^^^^^^^^^^
94
95Vous devez installer Redis sur votre serveur.
96
97Installation
98^^^^^^^^^^^^
99
100.. code:: bash
101
102 apt-get install redis-server
103
104Démarrage
105^^^^^^^^^
106
107Le serveur devrait déjà être démarré après l'installation. Si ce n'est pas le cas, vous pouvez le démarrer ainsi :
108
109.. code:: bash
110
111 redis-server
112
113Configurer Redis dans wallabag
114^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
115
116Modifiez votre fichier ``app/config/parameters.yml`` pour éditer la configuration Redis. Celle par défaut devrait convenir :
117
118.. code:: yaml
119
120 redis_host: localhost
121 redis_port: 6379
122
123Activer Redis dans wallabag
124^^^^^^^^^^^^^^^^^^^^^^^^^^^
125
126Dans les paramètres internes, section **Import**, activez Redis (avec la valeur 1).
127
128Démarrer les clients Redis
129^^^^^^^^^^^^^^^^^^^^^^^^^^
130
131En fonction du service dont vous souhaitez importer vos données, vous devez activer un (ou plusieurs si vous souhaitez en supporter plusieurs) cron job :
132
133.. code:: bash
134
135 # for Pocket import
136 bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
137
138 # for Readability import
139 bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
140
141 # for Instapaper import
142 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
143
144 # for wallabag v1 import
145 bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
146
147 # for wallabag v2 import
148 bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
149
150 # for Firefox import
151 bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
152
153 # for Chrome import
154 bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log
155
156Si vous souhaitez démarrer l'import pour quelques messages uniquement, vous pouvez spécifier cette valeur en paramètre (ici 12) et le client va s'arrêter après le 12ème message :
157
158.. code:: bash
159
160 bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12
diff --git a/docs/fr/developer/console_commands.rst b/docs/fr/developer/console_commands.rst
deleted file mode 100644
index 1b222b32..00000000
--- a/docs/fr/developer/console_commands.rst
+++ /dev/null
@@ -1,30 +0,0 @@
1Actions en ligne de commande
2============================
3
4wallabag a un certain nombre de commandes CLI pour effectuer des tâches. Vous pouvez lister toutes les commandes en exécutant `bin/console` dans le dossier d'installation de wallabag.
5
6Chaque commande a une aide correspondante accessible via `bin/console help %command%`.
7
8.. note::
9
10 Si vous êtes dans un environnement de production, souvenez-vous d'ajouter `-e prod` à chaque commande.
11
12Commandes notables
13------------------
14
15* `assets:install`: Peut-être utile si les *assets* sont manquants.
16* `cache:clear`: doit être exécuté après chaque mise à jour (appelé dans `make update`).
17* `doctrine:migrations:status`: Montre le statut de vos migrations de vos bases de données.
18* `fos:user:activate`: Activer manuellement un utilisateur.
19* `fos:user:change-password`: Changer le mot de passe pour un utilisateur.
20* `fos:user:create`: Créer un utilisateur.
21* `fos:user:deactivate`: Désactiver un utilisateur (non supprimé).
22* `fos:user:demote`: Supprimer un rôle d'un utilisateur, typiquement les droits d'administration.
23* `fos:user:promote`: Ajoute un rôle à un utilisateur, typiquement les droits d'administration.
24* `rabbitmq:*`: Peut-être utile si vous utilisez RabbitMQ.
25* `wallabag:clean-duplicates`: Supprime tous les articles dupliqués pour un utilisateur ou bien tous.
26* `wallabag:export`: Exporte tous les articles pour un utilisateur. Vous pouvez choisir le chemin du fichier exporté.
27* `wallabag:import`: Importe les articles en différents formats dans un compte utilisateur.
28* `wallabag:import:redis-worker`: Utile si vous utilisez Redis.
29* `wallabag:install`: (ré)Installer wallabag
30* `wallabag:tag:all`: Tagger tous les articles pour un utilisateur ou une utilisatrice en utilisant ses règles de tags automatiques.
diff --git a/docs/fr/developer/docker.rst b/docs/fr/developer/docker.rst
deleted file mode 100644
index 84724ed3..00000000
--- a/docs/fr/developer/docker.rst
+++ /dev/null
@@ -1,50 +0,0 @@
1Exécuter wallabag avec docker-compose
2=====================================
3
4Pour faire tourner votre propre instance de développement de wallabag, vous pouvez
5utiliser les fichiers docker pré-configurés.
6
7Pré-requis
8----------
9
10Soyez sur d'avoir `Docker
11<https://docs.docker.com/installation/ubuntulinux/>`__ et `Docker
12Compose <https://docs.docker.com/compose/install/>`__ installés et à jour sur votre
13système.
14
15Changer de SGBD
16---------------
17
18Par défaut, wallabag fonctionne avec une base de données SQLite.
19Depuis que wallabag supporte Postgresql et MySQL, les conteneurs Docker sont
20aussi disponibles pour ces SGBD.
21
22Dans ``docker-compose.yml``, en fonction de votre SGBD, décommentez :
23
24- la définition du conteneur (le block racine ``postgres`` ou ``mariadb``)
25- le conteneur ``links`` dans le conteneur ``php``
26- le conteneur ``env_file`` dans le conteneur ``php``
27
28Pour que les commandes Symfony (par exemple ``wallabag:install``) continuent de
29fonctionner sur votre système, vous devez aussi :
30
31- charger le bon fichier d'environnement dans votre ligne de commandes (``source``),
32pour que les variables comme ``SYMFONY__ENV__DATABASE_HOST`` existent.
33- ajouter une ligne ``127.0.0.1 rdbms`` dans votre fichier ``hosts``
34
35Exécuter wallabag
36-----------------
37
38#. Forker et cloner le projet
39#. Editer ``app/config/parameters.yml`` pour remplacer les propriétés ``database_*``
40 par les lignes commentées (celles avec des valeurs préfixées par ``env.``)
41#. ``composer install`` pour installer les dépendances
42#. ``php bin/console wallabag:install`` pour créer le schéma de la BDD
43#. ``docker-compose up`` pour démarrer les conteneurs
44#. Enfin, se rendre sur http://localhost:8080/ pour accéder à une installation
45 tout propre de wallabag.
46
47Il est possible de rencontrer des problèmes de droits UNIX, de mauvais chemins
48dans les fichiers de cache, etc…
49Les opérations comme vider le cache ou restaurer les permissions des fichiers
50peuvent être fréquemment nécessaires, n'ayez crainte !
diff --git a/docs/fr/developer/documentation.rst b/docs/fr/developer/documentation.rst
deleted file mode 100644
index 0fbe5626..00000000
--- a/docs/fr/developer/documentation.rst
+++ /dev/null
@@ -1,12 +0,0 @@
1Contribuer à cette documentation
2================================
3
4Les sources de notre documentation sont ici https://github.com/wallabag/wallabag/tree/master/docs
5
6Nous utilisons `ReadTheDocs
7<https://readthedocs.org>`__ pour la générer.
8
9Les pages sont écrites au format `Restructured Text
10<https://fr.wikipedia.org/wiki/ReStructuredText>`__. Vous pouvez utiliser des outils en ligne comme http://rst.aaroniles.net/ ou http://rst.ninjs.org/ pour prévisualiser vos articles.
11
12Si vous créez une nouvelle page, n'oubliez pas d'éditer le fichier `index.rst <https://raw.githubusercontent.com/wallabag/wallabag/master/docs/en/index.rst>`__ pour ajouter un lien dans la barre latérale. \ No newline at end of file
diff --git a/docs/fr/developer/front-end.rst b/docs/fr/developer/front-end.rst
deleted file mode 100644
index 714df08b..00000000
--- a/docs/fr/developer/front-end.rst
+++ /dev/null
@@ -1,33 +0,0 @@
1Conseils pour développeurs front-end
2====================================
3
4Depuis la version 2.3, wallabag utilise webpack pour générer ses assets.
5
6Mode développeur
7----------------
8
9Si le serveur fonctionne en mode dev, vous devez lancer la commande ``yarn run build:dev`` pour générer les fichiers de sortie javascript pour chaque thème. Ils sont nommés ``%theme%.dev.js`` et sont ignorés par git. Vous devez relancer la commande ``yarn run build:dev`` pour chaque changement que vous effectuez dans les fichiers assets (js, css, images, polices,...).
10
11Live reload
12-----------
13
14Webpack apporte le support pour la fonctionnalité de live reload, ce qui signifie que vous n'avez pas besoin de regénérer manuellement le fichier de sortie javascript ni de rafraichir la page dans votre navigateur. Les changements sont appliqués automatiquement. Vous avez juste besoin de mettre le paramètre ``use_webpack_dev_server`` à ``true`` dans ``app/config/config.yml`` et de lancer ``yarn run watch`` pour que cela soit actif.
15
16.. note::
17
18 N'oubliez pas de remettre ``use_webpack_dev_server`` à ``false`` lorsque vous n'utilisez pas la fonctionnalité de live reload.
19
20Production builds
21-----------------
22
23Lorsque vous committez vos changements, vous devez les compiler dans un environnement de production en exécutant ``yarn run build:prod``. Cela compilera tous les assets nécessaires pour wallabag. Pour tester que cela fonctionne proprement, vous devrez avoir un serveur en mode de production, par exemple avec ``bin/console server:run -e=prod``.
24
25.. note::
26
27 N'oubliez pas de générer des fichiers en mode production avant de committer !
28
29
30Code style
31----------
32
33Le style de code est vérifié par deux outils : stylelint pour le (S)CSS et eslint pour le JS. La configuration ESlint config est basée sur le preset Airbnb base.
diff --git a/docs/fr/developer/paywall.rst b/docs/fr/developer/paywall.rst
deleted file mode 100644
index ddba839a..00000000
--- a/docs/fr/developer/paywall.rst
+++ /dev/null
@@ -1,65 +0,0 @@
1Articles derrière un paywall
2============================
3
4wallabag peut récupérer le contenu des articles des sites qui utilisent un système de paiement.
5
6Activer l'authentification pour les paywall
7-------------------------------------------
8
9Dans les paramètres internes, en tant qu'administrateur de wallabag, section **Article**, activez l'authentification pour les articles derrière un paywall (avec la valeur 1).
10
11Configurer les accès dans wallabag
12----------------------------------
13
14Éditez le fichier ``app/config/parameters.yml`` pour modifier les accès aux sites avec paywall. Par exemple, sous Ubuntu :
15
16``sudo -u www-data nano /var/www/html/wallabag/app/config/parameters.yml``
17
18Voici un exemple pour certains sites (attention, ne pas utiliser la touche "tab", seulement des espaces) :
19
20.. code:: yaml
21
22 sites_credentials:
23 mediapart.fr: {username: "myMediapartLogin", password: "mypassword"}
24 arretsurimages.net: {username: "myASILogin", password: "mypassword"}
25
26.. note::
27
28 Ces accès seront partagés entre chaque utilisateur de votre instance wallabag.
29
30Fichiers de configuration pour parser les articles
31--------------------------------------------------
32
33.. note::
34
35 Lisez `cette documentation <http://doc.wallabag.org/fr/master/user/errors_during_fetching.html>`_ pour en savoir plus sur ces fichiers de configuration, qui se trouvent dans le répertoire ``vendor/j0k3r/graby-site-config/``. Pour la majorité des sites, ce fichier est déjà configuré : les instructions qui suivent concernent seulement les sites non encore configurés.
36
37Chaque fichier de configuration doit être enrichi en ajoutant ``requires_login``, ``login_uri``,
38``login_username_field``, ``login_password_field`` et ``not_logged_in_xpath``.
39
40Attention, le formulaire de connexion doit se trouver dans le contenu de la page lors du chargement de celle-ci.
41Il sera impossible pour wallabag de se connecter à un site dont le formulaire de connexion est chargé après coup (en ajax par exemple).
42
43``login_uri`` correspond à l'URL à laquelle le formulaire est soumis (attribut ``action`` du formulaire).
44``login_username_field`` correspond à l'attribut ``name`` du champ de l'identifiant.
45``login_password_field`` correspond à l'attribut ``name`` du champ du mot de passe.
46
47Par exemple :
48
49.. code::
50
51 title://div[@id="titrage-contenu"]/h1[@class="title"]
52 body: //div[@class="contenu-html"]/div[@class="page-pane"]
53
54 requires_login: yes
55
56 login_uri: http://www.arretsurimages.net/forum/login.php
57 login_username_field: username
58 login_password_field: password
59
60 not_logged_in_xpath: //body[@class="not-logged-in"]
61
62Dernière étape : nettoyer le cache
63----------------------------------
64
65Il est nécessaire de nettoyer le cache de wallabag avec la commande suivante (ici sous Ubuntu) : ``sudo -u www-data php /var/www/html/wallabag/bin/console cache:clear -e=prod``
diff --git a/docs/fr/developer/testsuite.rst b/docs/fr/developer/testsuite.rst
deleted file mode 100644
index bd5c68c6..00000000
--- a/docs/fr/developer/testsuite.rst
+++ /dev/null
@@ -1,10 +0,0 @@
1Suite de tests
2==============
3
4Pour assurer la qualité du développement de wallabag, nous avons écrit des tests avec `PHPUnit <https://phpunit.de>`_.
5
6Si vous contribuez au projet (en traduisant l'application, en corrigeant des bugs ou en ajoutant une nouvelle fonctionnalité), merci d'écrire vos propres tests.
7
8Pour lancer la suite de tests de wallabag, vous devez installer `ant <http://ant.apache.org>`_.
9
10Ensuite, exécutez la commande ``make test``.
diff --git a/docs/fr/developer/translate.rst b/docs/fr/developer/translate.rst
deleted file mode 100644
index 870d1c20..00000000
--- a/docs/fr/developer/translate.rst
+++ /dev/null
@@ -1,62 +0,0 @@
1Traduire wallabag
2=================
3
4L'application web
5-----------------
6
7Fichiers de traductions
8~~~~~~~~~~~~~~~~~~~~~~~
9
10.. note::
11
12 Comme wallabag est principalement dévelopée par une équipe française, c'est
13 cette traduction qui est considérée comme la plus récente. Merci de vous baser
14 sur celle-ci pour créer votre traduction.
15
16Les principaux fichiers de traduction se trouvent ici : https://github.com/wallabag/wallabag/tree/master/src/Wallabag/CoreBundle/Resources/translations.
17
18Vous devez créer les fichiers ``messages.CODE.yml`` et ``validators.CODE.yml``,
19où CODE est le code ISO 639-1 de votre langue (`cf wikipedia <https://fr.wikipedia.org/wiki/Liste_des_codes_ISO_639-1>`__).
20
21Autres fichiers à traduire :
22
23- https://github.com/wallabag/wallabag/tree/master/app/Resources/CraueConfigBundle/translations.
24- https://github.com/wallabag/wallabag/tree/master/src/Wallabag/UserBundle/Resources/translations.
25
26Vous devez créer les fichiers ``LE_FICHIER_DE_TRADUCTION.CODE.yml``.
27
28Fichier de configuration
29~~~~~~~~~~~~~~~~~~~~~~~~
30
31Vous devez éditer `app/config/config.yml
32<https://github.com/wallabag/wallabag/blob/master/app/config/config.yml>`__ pour
33afficher votre langue dans la page Configuration de wallabag (pour permettre aux
34utilisateurs de choisir cette nouvelle traduction).
35
36Dans la section ``wallabag_core.languages``, vous devez ajouter une nouvelle ligne
37avec votre traduction. Par exemple :
38
39::
40
41 wallabag_core:
42 ...
43 languages:
44 en: 'English'
45 fr: 'Français'
46
47
48Pour la première colonne (``en``, ``fr``, etc.), vous devez ajouter le code ISO 639-1
49de votre langue (voir ci-dessus).
50
51Pour la seconde colonne, c'est juste le nom de votre langue.
52
53Documentation de wallabag
54-------------------------
55
56.. note::
57
58 Contrairement à l'application, la langue principale de la documentation est l'anglais
59
60Les fichiers de documentation se trouvent ici : https://github.com/wallabag/wallabag/tree/master/docs
61
62Vous devez respecter la structure du dossier ``en`` quand vous crééz votre traduction.
diff --git a/docs/fr/index.rst b/docs/fr/index.rst
deleted file mode 100644
index 99aaa35a..00000000
--- a/docs/fr/index.rst
+++ /dev/null
@@ -1,54 +0,0 @@
1Documentation de wallabag
2=========================
3
4.. image:: ../img/wallabag.png
5 :alt: wallabag logo
6 :align: center
7
8**wallabag** est une application de lecture différée : elle permet
9simplement d’archiver une page web en ne conservant que le contenu. Les
10éléments superflus (menu, publicité, etc.) sont supprimés.
11
12La documentation principale de cette application est découpée en plusieurs sections :
13
14* :ref:`user-docs`
15* :ref:`dev-docs`
16
17La documentation est disponible dans d'autres langues :
18
19* `Documentation in english <http://doc.wallabag.org/en/master/>`_
20* `Deutsch Dokumentation <http://doc.wallabag.org/de/master/>`_
21
22.. _user-docs:
23
24.. toctree::
25 :maxdepth: 2
26 :caption: Documentation utilisateur
27
28 user/installation
29 user/upgrade
30 user/configuration
31 user/import
32 user/create_account
33 user/articles
34 user/errors_during_fetching
35 user/filters
36 user/tags
37 user/configuring_mobile
38 user/android
39 user/parameters
40 user/backup
41 user/faq
42
43.. _dev-docs:
44
45.. toctree::
46 :maxdepth: 2
47 :caption: Documentation développeur
48
49 developer/api
50 developer/docker
51 developer/paywall
52 developer/documentation
53 developer/translate
54 developer/asynchronous
diff --git a/docs/fr/requirements.txt b/docs/fr/requirements.txt
deleted file mode 100644
index 06fc8973..00000000
--- a/docs/fr/requirements.txt
+++ /dev/null
@@ -1,2 +0,0 @@
1Sphinx>=1.3.0,<1.4.0
2guzzle_sphinx_theme>=0.7.0,<0.8.0
diff --git a/docs/fr/user/android.rst b/docs/fr/user/android.rst
deleted file mode 100644
index 91501eea..00000000
--- a/docs/fr/user/android.rst
+++ /dev/null
@@ -1,96 +0,0 @@
1Application Android
2===================
3
4But de ce document
5------------------
6
7Ce document explique comment configurer votre application Android pour qu'elle fonctionne avec votre instance de wallabag. Il n'y a pas de différence dans cette procédure entre wallabag v1 et wallabag v2.
8
9Étapes pour configurer votre application
10----------------------------------------
11
12Quand vous démarrez l'application pour la première fois, vous voyez le message de bienvenue, où il vous est d'abord conseillé de configurer l'application avec votre instance de wallabag.
13
14.. image:: ../../img/user/android_welcome_screen.en.png
15 :alt: Écran de bienvenue
16 :align: center
17
18Vous devez confirmer le message et vous serez redirigé vers l'écran de configuration.
19
20.. image:: ../../img/user/android_configuration_screen.en.png
21 :alt: Écran de configuration
22 :align: center
23
24Saisissez vos données wallabag. Vous devez entrer l'adresse de votre instance de wallabag. **Il ne faut pas que cette adresse se termine par un slash**. Ajoutez également vos identifiants wallabag dans les champs correspondants.
25
26.. image:: ../../img/user/android_configuration_filled_in.en.png
27 :alt: Paramètres remplis
28 :align: center
29
30Après cet écran, appuyez sur le bouton de test de connexion et attendez que le test se termine.
31
32.. image:: ../../img/user/android_configuration_connection_test.en.png
33 :alt: Test de connexion
34 :align: center
35
36Le test de connexion devrait se terminer avec succès. Si ce n'est pas le cas, vous devez résoudre ça avant de continuer.
37
38.. image:: ../../img/user/android_configuration_connection_test_success.en.png
39 :alt: Test de connexion réussi
40 :align: center
41
42Après le test de connexion réussi, vous pouvez cliquer sur le bouton pour récupérer vos informations de flux (feed credentials). L'application essaie maintenant de se connecter à wallabag pour récupérer votre identifiant et votre jeton pour les flux RSS.
43
44.. image:: ../../img/user/android_configuration_get_feed_credentials.en.png
45 :alt: Récupération des informations de flux
46 :align: center
47
48Quand le processus est terminé avec succès, vous verrez une notification comme quoi l'identifiant et le jeton ont été remplis correctement.
49
50.. image:: ../../img/user/android_configuration_feed_credentials_automatically_filled_in.en.png
51 :alt: Récupération des informations correcte
52 :align: center
53
54Maintenant, vous devez naviguer jusqu'en bas de l'écran des paramètres. Bien sur, vous pouvez régler les paramètres comme vous le souhaitez. Enregistrez la configuration.
55
56.. image:: ../../img/user/android_configuration_scroll_bottom.en.png
57 :alt: Bottom of the settings screen
58 :align: center
59
60Après avoir enregistré les paramètres, vous vous retrouvez face à l'écran suivant. L'application vous propose de démarrer une synchronisation pour récupérer vos articles. Il est recommandé de confirmer cette action.
61
62.. image:: ../../img/user/android_configuration_saved_feed_update.en.png
63 :alt: Settings saved the first time
64 :align: center
65
66Une fois la synchronisation terminée avec succès, vous pouvez lire vos articles.
67
68.. image:: ../../img/user/android_unread_feed_synced.en.png
69 :alt: Filled article list cause feeds successfully synchronized
70 :align: center
71
72Limitations connues
73-------------------
74
75Double authentification (2FA)
76~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77
78Actuellement, l'application Android ne supporte la double authentification. Vous devez la désactiver pour que l'application fonctionne correctement.
79
80Limiter le nombre d'articles avec wallabag v2
81~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
82
83Dans votre instance de wallabag, vous pouvez configurer combien d'articles se trouvent dans les flux RSS. Cette option n'existe pas dans wallabag v1, où tous les articles se retrouvent donc dans le flux RSS. So if you set the amount of articles being displayed greater than the number of items being content of your RSS feed, you will only see the number of items in your RSS feed.
84
85Cryptage SSL/TLS
86~~~~~~~~~~~~~~~~
87
88Si vous souhaitez accéder à votre instance de wallabag via HTTPS, vous devez le définir dans les paramètres. Surtout si votre URL HTTP redirige vers l'URL HTTPS. Actuellement, l'application ne gère pas cette redirection correctement.
89
90Références
91----------
92
93- `Code source de l'application Android <https://github.com/wallabag/android-app>`_
94- `Télécharger l'application Android sur F-Droid <https://f-droid.org/repository/browse/?fdfilter=wallabag&fdid=fr.gaulupeau.apps.InThePoche>`_
95- `Télécharger l'application Android sur Google Play <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_
96
diff --git a/docs/fr/user/articles.rst b/docs/fr/user/articles.rst
deleted file mode 100644
index cefc3c10..00000000
--- a/docs/fr/user/articles.rst
+++ /dev/null
@@ -1,124 +0,0 @@
1Articles
2========
3
4Sauvegardez votre premier article
5---------------------------------
6
7La fonctionnalité principale de wallabag est de sauvegarder des articles.
8Vous avez plusieurs manières de le faire.
9
10.. note::
11
12 Un guide de démarrage s'affichera dans l'application jusqu'à ce que vous
13 enregistriez votre premier article.
14
15En utilisant le bookmarklet
16^^^^^^^^^^^^^^^^^^^^^^^^^^^
17
18Sur la page ``Aide``, vous avez un onglet ``Bookmarklet``. Glissez/déposez le lien ``bag it!``
19dans votre barre de favoris de votre navigateur.
20
21Maintenant, à chaque fois que vous lisez un article et que vous souhaitez le sauvegarder,
22cliquez sur le lien ``bag it!`` dans votre barre de favoris. L'article est enregistré.
23
24En utilisant le formulaire classique
25^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
26
27Dans la barre haut de wallabag, vous avez trois icônes. Avec la première icône,
28un signe plus, vous pouvez facilement ajouter un nouvel article.
29
30.. image:: ../../img/user/topbar.png
31 :alt: Barre supérieure
32 :align: center
33
34Cliquez dessus pour afficher un nouveau champ, collez-y l'URL de l'article et appuyez
35sur la touche ``Entrée``. L'article est enregistré.
36
37En utilisant l'extension de votre navigateur
38^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
39
40Firefox
41"""""""
42
43Vous pouvez télécharger `l'extension Firefox ici <https://addons.mozilla.org/firefox/addon/wallabagger/>`_.
44
45Chrome
46""""""
47
48Vous pouvez télécharger `l'extension Chrome ici <https://chrome.google.com/webstore/detail/wallabagger/gbmgphmejlcoihgedabhgjdkcahacjlj?hl=fr>`_.
49
50En utilisant l'application de votre smartphone
51^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
52
53Android
54"""""""
55
56Vous pouvez télécharger `l'application Android ici <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_ ou sur `F-Droid <https://f-droid.org/repository/browse/?fdid=fr.gaulupeau.apps.InThePoche>`_.
57
58Windows Phone
59~~~~~~~~~~~~~
60
61Vous pouvez télécharger `l'application Windows Phone ici <https://www.microsoft.com/store/apps/9nblggh5x3p6>`_.
62
63Téléchargez vos articles
64------------------------
65
66Vous pouvez télécharger chaque article dans plusieurs formats : ePUB, MOBI, PDF, XML, JSON, CSV.
67
68Lorsque vous lisez un article, cliquez sur cette icône dans la barre latérale :
69
70.. image:: ../../img/user/download_article.png
71 :alt: Télécharger l'article
72 :align: center
73
74Vous pouvez aussi télécharger une catégorie (non lus, favoris, lus) dans ces formats.
75Par exemple, dans la vue **Non lus**, cliquez sur cette icône dans la barre supérieure :
76
77.. image:: ../../img/user/download_articles.png
78 :alt: Télécharger l'article
79 :align: center
80
81Partagez vos articles
82---------------------
83
84Quand vous lisez un article, vous pouvez le partager. Cliquez sur le bouton de partage :
85
86.. image:: ../../img/user/share.png
87 :alt: partager un article
88 :align: center
89
90Vous pouvez maintenant le partager :
91
92- avec une URL publique (vous obtiendrez une vue allégée de l'article)
93- avec un tweet
94- dans votre Shaarli
95- dans votre Scuttle
96- avec un message dans Diaspora*
97- sur Carrot
98- avec un email
99
100Annotez vos articles
101--------------------
102
103Sur chaque article que vous lisez, vous pouvez écrire des annotations. Puisqu'une image vaut mieux qu'un long discours,
104voici ce que ça donne.
105
106Sélectionnez la zone du texte que vous souhaitez annoter et cliquez sur le crayon :
107
108.. image:: ../../img/user/annotations_1.png
109 :alt: Sélectionnez votre texte
110 :align: center
111
112Ensuite, écrivez votre annotation :
113
114.. image:: ../../img/user/annotations_2.png
115 :alt: Écrivez votre annotation
116 :align: center
117
118Le texte est maintenant surligné et vous pouvez lire le annotation en le survolant avec votre souris.
119
120.. image:: ../../img/user/annotations_3.png
121 :alt: Lisez votre annotation
122 :align: center
123
124Vous pouvez créer autant de annotations que vous le souhaitez.
diff --git a/docs/fr/user/backup.rst b/docs/fr/user/backup.rst
deleted file mode 100644
index f8cf87ee..00000000
--- a/docs/fr/user/backup.rst
+++ /dev/null
@@ -1,26 +0,0 @@
1Sauvegarde de wallabag
2======================
3
4Parce que des fois vous faites des erreurs avec votre installation de wallabag et vous perdez des données ou parce que vous souhaitez migrer votre installation sur un autre serveur, vous souhaitez faire une sauvegarde de vos données.
5Cette documentation décrit ce que vous devez sauvegarder.
6
7Configuration
8-------------
9wallabag stocke quelques paramètres (comme la configuration SMTP ou les infos de bases de données) dans le fichier `app/config/parameters.yml`.
10
11Base de données
12---------------
13Comme wallabag supporte différentes sortes de bases de données, la manière de sauvegarder dépend du type de base de données que vous utilisez, donc vous devez vous en référez à la documentation correspondante.
14
15Quelques exemples :
16
17- MySQL: http://dev.mysql.com/doc/refman/5.7/en/backup-methods.html
18- PostgreSQL: https://www.postgresql.org/docs/current/static/backup.html
19
20SQLite
21~~~~~~
22Pour sauvegarder une base SQLite, vous devez juste copier le répertoire `data/db` de votre installation wallabag.
23
24Images
25------
26Les images sauvegardées par wallabag sont stockées dans `web/assets/images` (le stockage des images sera implémenté dans wallabag 2.2).
diff --git a/docs/fr/user/configuration.rst b/docs/fr/user/configuration.rst
deleted file mode 100644
index 0f5d4375..00000000
--- a/docs/fr/user/configuration.rst
+++ /dev/null
@@ -1,134 +0,0 @@
1Configuration
2=============
3
4Maintenant que vous êtes connecté, il est temps de configurer votre compte.
5
6Cliquez sur le menu ``Configuration``. Vous avez accès à 5 onglets :
7``Paramètres``, ``RSS``, ``Mon compte``, ``Mot de passe`` and ``Règles de tag automatiques``.
8
9Paramètres
10----------
11
12Thème
13~~~~~
14
15L'affichage de wallabag est personnalisable. C'est ici que vous choisissez le thème
16que vous préférez. Le thème par défaut est ``Material``, c'est celui
17qui est utilisé dans les captures d'écran de la documentation.
18
19Nombre d'articles par page
20~~~~~~~~~~~~~~~~~~~~~~~~~~
21
22Vous pouvez définir le nombre d'articles affichés sur chaque page.
23
24Vitesse de lecture
25~~~~~~~~~~~~~~~~~~
26
27wallabag calcule une durée de lecture pour chaque article. Vous pouvez définir ici, grâce à cette liste déroulante, si vous lisez plus ou moins vite. wallabag recalculera la durée de lecture de chaque article.
28
29Où souhaitez-vous être redirigé après avoir marqué un article comme lu ?
30~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31
32Chaque fois que vous ferez certaines actions (après avoir marqué un article comme lu / comme favori,
33après avoir supprimé un article, après avoir retiré un tag d'un article), vous pouvez être redirigé :
34
35- sur la page d'accueil
36- sur la page courante
37
38Langue
39~~~~~~
40
41Vous pouvez définir la langue de l'interface de wallabag.
42
43RSS
44---
45
46wallabag propose un flux RSS pour chaque statut d'article : non lus, favoris et lus.
47
48Tout d'abord, vous devez vous créer un jeton personnel : cliquez sur ``Créez votre jeton``.
49Il est possible de regénérer votre jeton en cliquant sur ``Réinitialisez votre jeton``.
50
51Vous avez maintenant trois liens, un par statut : ajoutez-les dans votre agrégateur de flux RSS préféré.
52
53Vous pouvez aussi définir combien d'articles vous souhaitez dans vos flux RSS
54(50 est la valeur par défaut).
55
56Une pagination est aussi disponible pour ces flux. Il suffit de rajouter ``?page=2`` pour aller à la seconde page, par exemple.
57Cette pagination suit `la RFC <https://tools.ietf.org/html/rfc5005#page-4>`_, ce qui signifie que vous trouverez la page suivante (``next``), précédente (``previous``) et la dernière (``last``) dans la balise `<channel>` de chaque flux RSS.
58
59Mon compte
60----------
61
62Vous pouvez ici modifier votre nom, votre adresse email et activer la ``Double authentification``.
63
64Si l'instance de wallabag compte plus d'un utilisateur actif, vous pouvez supprimer ici votre compte. **Attention, nous supprimons toutes vos données**.
65
66Double authentification (2FA)
67~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68
69 L'authentification à deux facteurs (également appelée 2FA) est une technologie brevetée en 1984
70 qui fournit l'identification des utilisateurs au moyen de la combinaison de deux composants différents .
71
72 https://fr.wikipedia.org/wiki/Authentification_forte
73
74**Attention**: l'activation de la 2FA depuis l'interface de configuration n'est possible que si elle a au préalable été autorisée dans `app/config/parameters.yml` en passant la propriété *twofactor_auth* à `true` (n'oubliez pas d'exécuter `php bin/console cache:clear -e=prod` après modification).
75
76Si vous activez 2FA, à chaque tentative de connexion à wallabag, vous recevrez
77un code par email. Vous devez renseigner ce code dans le formulaire suivant :
78
79.. image:: ../../img/user/2FA_form.png
80 :alt: Authentification à deux facteurs
81 :align: center
82
83Si vous ne souhaitez pas recevoir un code à chaque fois que vous vous connectez,
84vous pouvez cocher la case ``Je suis sur un ordinateur de confiance`` : wallabag
85se souviendra de vous pour 15 jours.
86
87Mot de passe
88------------
89
90Vous pouvez changer de mot de passe ici (8 caractères minimum).
91
92Règles de tag automatiques
93--------------------------
94
95Si vous voulez automatiquement assigner un tag à de nouveaux articles en fonction de
96certains critères, cette partie de la configuration est pour vous.
97
98Que veut dire « règles de tag automatiques » ?
99~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
100
101Ce sont des règles utilisées par wallabag pour automatiquement assigner un tag
102à un nouvel article.
103À chaque fois que vous ajoutez un nouvel article, toutes les règles sont utilisées pour ajouter
104les tags que vous avez configurés, vous épargnant ainsi la peine de classer manuellement vos articles.
105
106Comment les utiliser ?
107~~~~~~~~~~~~~~~~~~~~~~
108
109Admettons que vous voulez ajouter comme tag *« lecture rapide »* quand le temps de lecture
110d'un article est inférieur à 3 minutes.
111Dans ce cas, vous devez ajouter « readingTime <= 3 » dans le champ **Règle** et *« lecture rapide »* dans le champ **Tags**.
112Plusieurs tags peuvent être ajoutés en même temps en les séparant par une virgule : *« lecture rapide, à lire »*.
113Des règles complexes peuvent être écrites en utilisant les opérateurs pré-définis :
114if *« readingTime >= 5 AND domainName = "github.com" »* then tag as *« long reading, github »*.
115
116Quels variables et opérateurs puis-je utiliser pour écrire mes règles ?
117~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118
119Les variables et opérateurs suivants peuvent être utilisés lors de la création de vos règles (attention, pour certaines valeurs, vous devez ajouter des guillemets, par exemple ``language = "en"``) :
120
121=========== ============================================== ========== ==========
122Variable Sens Opérateur Sens
123----------- ---------------------------------------------- ---------- ----------
124title Titre de l'article <= Inférieur ou égal à …
125url URL de l'article < Strictement inférieur à …
126isArchived Si l'article est archivé ou non => Supérieur ou égal à …
127isStarred Si l'article est en favori ou non > Strictement supérieur à …
128content Le contenu de l'article = Égal à …
129language La langue de l'article != Différent de …
130mimetype The type MIME de l'article OR Telle règle ou telle autre règle
131readingTime Le temps de lecture de l'article, en minutes AND Telle règle et telle règle
132domainName Le nom de domaine de l'article matches Contient telle chaîne de caractère (insensible à la casse). Exemple : title matches "football"
133 notmaches Ne contient pas telle chaîne de caractère (insensible à la casse). Exemple : title notmatches "football"
134=========== ============================================== ========== ==========
diff --git a/docs/fr/user/configuring_mobile.rst b/docs/fr/user/configuring_mobile.rst
deleted file mode 100644
index 4036c354..00000000
--- a/docs/fr/user/configuring_mobile.rst
+++ /dev/null
@@ -1,12 +0,0 @@
1Configurer les applications mobile pour wallabag
2================================================
3
4Étapes pour configurer les applications
5---------------------------------------
6
7- Tout d'abord, *créez un nouveau client* dans la section ``Gestion des clients API``. Le nom de votre application importe peu. Ce qui nous intéresse, ce sont l'``ID Client`` et la ``clé secrète``. Notez bien ces deux valeurs.
8- Quand vous installez une application smartphone, on va vous demander de renseigner l'adresse de votre serveur de wallabag. Par exemple, pour wallabag.it, c'est ``https://app.wallabag.it``.
9- Les deux valeurs notées précédemment vous seront également demandées. Insérez-les dans les champs correspondants.
10- Enfin, vous devez renseigner votre ``nom d'utilisateur`` et votre ``mot de passe``. Ce sont les mêmes valeurs que lorsque vous vous connectez à wallabag.
11
12Vous pouvez également regarder du côté de la page `Android <android.html>`_. Particulièrement la section sur les *limitations connues*.
diff --git a/docs/fr/user/create_account.rst b/docs/fr/user/create_account.rst
deleted file mode 100644
index 9c18e094..00000000
--- a/docs/fr/user/create_account.rst
+++ /dev/null
@@ -1,42 +0,0 @@
1Se créer un compte et se connecter
2==================================
3
4Se créer un compte
5------------------
6
7Sur la page de connexion, cliquez sur le bouton ``Créer un compte``.
8
9.. image:: ../../img/user/registration_form.png
10 :alt: Formulaire de création de compte
11 :align: center
12
13Vous devez renseigner le formulaire. Faites attention de bien renseigner une adresse
14email valide, nous allons vous envoyer un email d'activation.
15
16.. image:: ../../img/user/sent_email.png
17 :alt: Un email a été envoyé pour activer votre compte
18 :align: center
19
20Vérifiez votre boite de réception, vous avez un nouvel email avec un lien comme celui-ci
21``http://wallabag/register/confirm/Ba19wokGovN-DdBQNfg4YgRkUQWRP4-k2g0Bk-hBTX4``.
22Cliquez dessus pour activer votre compte.
23
24Votre compte est maintenant actif.
25
26.. image:: ../../img/user/activated_account.png
27 :alt: Bienvenue à bord !
28 :align: center
29
30Se connecter
31------------
32
33Votre compte est maintenant actif, félicitations !
34
35Pour vous connecter à wallabag, remplissez le formulaire de connexion.
36
37Si vous êtes sur un ordinateur de confiance et que vous souhaitez rester connecté
38vous pouvez cocher la case ``Restez connecté`` : wallabag se souviendra de vous pour un an.
39
40.. image:: ../../img/user/login_form.png
41 :alt: Formulaire de connexion
42 :align: center
diff --git a/docs/fr/user/errors_during_fetching.rst b/docs/fr/user/errors_during_fetching.rst
deleted file mode 100644
index 13cbde1d..00000000
--- a/docs/fr/user/errors_during_fetching.rst
+++ /dev/null
@@ -1,37 +0,0 @@
1Erreur durant la récupération des articles
2==========================================
3
4Pourquoi la récupération des articles échoue ?
5----------------------------------------------
6
7Il peut y avoir plusieurs raisons :
8
9- problème de connexion internet
10- wallabag ne peut pas récupérer le contenu à cause de la structure du site web
11
12Comment puis-je aider pour réparer ça ?
13---------------------------------------
14
15Vous pouvez essayer de résoudre ce problème vous même (comme ça, nous restons concentrés pour améliorer wallabag au lieu d'écrire ces fichiers de configuration :) ).
16
17Vous pouvez essayer de voir si ça fonctionne ici : `http://f43.me/feed/test <http://f43.me/feed/test>`_ (ce site utilise principalement la même manière de fonctionner que wallabag pour récupérer les articles).
18
19Si ça fonctionne ici et pas sur wallabag, c'est qu'il y a un souci avec wallabag qui casse le parser (difficile à résoudre : merci d'ouvrir un nouveau ticket à ce sujet).
20
21Si ça ne fonctionne pas, vous pouvez essayer de créer un fichier de configuration en utilisant : `http://siteconfig.fivefilters.org/ <http://siteconfig.fivefilters.org/>`_ (sélectionnez les parties du contenu qui correspondent à ce que vous souhaitez garder). Vous pouvez `lire cette documentation avant <http://help.fivefilters.org/customer/en/portal/articles/223153-site-patterns>`_.
22
23Vous pouvez tester ce fichier sur le site **f43.me** : cliquez sur **Want to try a custom siteconfig?** et insérez le fichier généré depuis siteconfig.fivefilters.org.
24
25Répétez cette opération jusqu'à avoir quelque chose qui vous convienne.
26
27Ensuite, vous pouvez créer une pull request ici `https://github.com/fivefilters/ftr-site-config <https://github.com/fivefilters/ftr-site-config>`_, qui est le projet principal pour stocker les fichiers de configuration.
28
29Comment puis-je réessayer de récupérer le contenu ?
30---------------------------------------------------
31
32Si wallabag échoue en récupérant l'article, vous pouvez cliquer sur le bouton suivant
33(le troisième sur l'image ci-dessous).
34
35.. image:: ../../img/user/refetch.png
36 :alt: Réessayer de récupérer le contenu
37 :align: center
diff --git a/docs/fr/user/faq.rst b/docs/fr/user/faq.rst
deleted file mode 100644
index 49aa94ba..00000000
--- a/docs/fr/user/faq.rst
+++ /dev/null
@@ -1,42 +0,0 @@
1Foire Aux Questions
2===================
3
4Durant l'installation, je rencontre cette erreur ``Error Output: sh: 1: @post-cmd: not found``
5----------------------------------------------------------------------------------------------
6
7Il semblerait que vous ayiez un problème avec votre installation de ``composer``. Essayez de le désinstaller puis de le réinstaller.
8
9`Vous pouvez lire la documentation de composer pour savoir comment l'installer
10<https://getcomposer.org/doc/00-intro.md>`__.
11
12Je ne peux pas valider le formulaire de création de compte
13----------------------------------------------------------
14
15Soyez sur d'avoir bien renseigné tous les champs :
16
17* une adresse email valide
18* le même mot de passe dans les deux champs
19
20Je n'ai pas reçu mon email d'activation
21---------------------------------------
22
23Êtes-vous sur d'avoir renseigné votre bonne adresse ? Avez-vous vérifié le dossier de spams ?
24
25Quand je clique sur le lien d'activation, j'ai ce message : ``The user with confirmation token "DtrOPfbQeVkWf6N" does not exist``.
26----------------------------------------------------------------------------------------------------------------------------------
27
28Vous avez déjà activé votre compte ou l'URL d'activation n'est pas correcte.
29
30J'ai oublié mon mot de passe
31----------------------------
32
33Vous pouvez réinitialiser votre mot de passe en cliquant sur ``Mot de passe oublié ?``,
34sur la page de connexion. Ensuite, renseignez votre adresse email ou votre nom d'utilisateur,
35un email vous sera envoyé.
36
37J'ai l'erreur ``failed to load external entity`` quand j'essaie d'installer wallabag
38------------------------------------------------------------------------------------
39
40Comme décrit `ici <https://github.com/wallabag/wallabag/issues/2529>`_, modifiez le fichier ``web/app.php`` et ajoutez la ligne ``libxml_disable_entity_loader(false);`` à la ligne 5.
41
42C'est un bug lié à PHP et Doctrine, nous ne pouvons rien faire de notre côté.
diff --git a/docs/fr/user/filters.rst b/docs/fr/user/filters.rst
deleted file mode 100644
index 5807bdbd..00000000
--- a/docs/fr/user/filters.rst
+++ /dev/null
@@ -1,55 +0,0 @@
1Retrouver des articles grâce aux filtres
2========================================
3
4Pour retrouver plus facilement vos articles, vous pouvez utiliser les filtres.
5Cliquez sur la troisième icône de la barre supérieure.
6
7.. image:: ../../img/user/topbar.png
8 :alt: Barre supérieure
9 :align: center
10
11Tous ces filtres peuvent être combinés.
12
13.. image:: ../../img/user/filters.png
14 :alt: Combine all filters
15 :align: center
16
17Statut
18------
19
20Utilisez ces cases à cocher pour retrouver les articles lus ou mis en favori.
21
22Image de prévisualisation
23-------------------------
24
25Cochez ce filtre si vous voulez retrouver les articles avec une image de prévisualisation.
26
27Langage
28-------
29
30wallabag (via graby) peut détecter la langue dans laquelle l'article est écrit.
31C'est ainsi facile pour vous de retrouver des articles écrits dans une langue spécifique.
32
33Statut HTTP
34-----------
35
36Vous pouvez retrouver des articles en filtrant par leur code HTTP : 200, 404, 500, etc.
37
38Temps de lecture
39----------------
40
41wallabag estime combien de temps vous avez besoin pour lire un article.
42Avec ce filtre, vous pouvez par exemple retrouver les articles qui ont une estimation
43entre 2 et 5 minutes.
44
45Nom de domaine
46--------------
47
48Grâce à ce filtre, vous pouvez retrouver les articles venant d'un même nom de domaine.
49Par exemple, dans ce champ, saisissez ``lemonde.fr`` pour retrouver les articles de ce site.
50
51Date de création
52----------------
53
54Quand vous ajoutez un article, wallabag stocke la date courante.
55C'est très pratique pour retrouver les articles ajoutés entre le 1er et le 31 janvier par exemple.
diff --git a/docs/fr/user/import.rst b/docs/fr/user/import.rst
deleted file mode 100644
index 5317ee4b..00000000
--- a/docs/fr/user/import.rst
+++ /dev/null
@@ -1,155 +0,0 @@
1Migrer depuis ...
2=================
3
4Dans wallabag 2.x, vous pouvez importer des données depuis :
5
6- `Pocket <#id1>`_
7- `Readability <#id2>`_
8- `Instapaper <#id4>`_
9- `wallabag 1.x <#id6>`_
10- `wallabag 2.x <#id7>`_
11
12Nous avons aussi développé `un script pour exécuter des migrations via la ligne de commande <#import-via-la-ligne-de-commande-cli>`_.
13
14Puisque les imports peuvent gourmands en ressource, nous avons mis en place un système de tâche asynchrone. `Vous trouverez la documentation ici <http://doc.wallabag.org/fr/master/developer/asynchronous.html>`_ (niveau expert).
15
16Pocket
17------
18
19Créer une nouvelle application dans Pocket
20~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21
22Pour importer vos données depuis Pocket, nous utilisons l'API de Pocket.
23Vous devez créer une nouvelle application sur leur site dédié aux développeurs pour continuer.
24
25* Créez une nouvelle application `sur leur site Développeurs <https://getpocket.com/developer/apps/new>`_
26* Remplissez les champs requis : nom de l'application, description de l'application,
27 permissions (seulement **retrieve**), la plateforme (**web**), acceptez les
28 termes d'utilisation du service et soumettez votre application
29
30Pocket vous fournira une **Consumer Key** (par exemple, `49961-985e4b92fe21fe4c78d682c1`).
31Vous devez configurer la ``pocket_consumer_key`` dans le menu ``Configuration``.
32
33Maintenant, tout est bien configuré pour migrer depuis Pocket.
34
35Importez vos données dans wallabag 2.x
36~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37
38Cliquez sur le lien ``Importer`` dans le menu, sur ``Importer les contenus`` dans
39la section Pocket puis sur ``Se connecter à Pocket et importer les données``.
40
41Vous devez autoriser wallabag à se connecter à votre compte Pocket.
42Vos données vont être importées. L'import de données est une action qui peut être couteuse
43pour votre serveur.
44
45Readability
46-----------
47
48Exportez vos données de Readability
49~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50
51Sur la page des outils (`https://www.readability.com/tools/ <https://www.readability.com/tools/>`_), cliquez sur "Export your data" dans la section "Data Export". Vous allez recevoir un email avec un lien pour télécharger le json.
52
53Importez vos données dans wallabag 2.x
54~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
56Cliquez sur le lien ``Importer`` dans le menu, sur ``Importer les contenus`` dans
57la section Readability et ensuite sélectionnez votre fichier json pour l'uploader.
58
59Vos données vont être importées. L'import de données est une action qui peut être couteuse pour votre serveur.
60
61Depuis Pinboard
62---------------
63
64Exportez vos données de Pinboard
65~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
66
67Sur la page « Backup » (`https://pinboard.in/settings/backup <https://pinboard.in/settings/backup>`_), cliquez sur « JSON » dans la section « Bookmarks ». Un fichier json (sans extension) sera téléchargé (``pinboard_export``).
68
69Importez vos données dans wallabag 2.x
70~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71
72Cliquez sur le lien ``Importer`` dans le menu, sur ``Importer les contenus`` dans
73la section Pinboard et ensuite sélectionnez votre fichier json pour l'uploader.
74
75Vos données vont être importées. L'import de données est une action qui peut être couteuse pour votre serveur.
76
77Depuis Instapaper
78-----------------
79
80Exportez vos données de Instapaper
81~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
82
83Sur la page des paramètres (`https://www.instapaper.com/user <https://www.instapaper.com/user>`_), cliquez sur "Download .CSV file" dans la section "Export". Un fichier CSV se téléchargera (``instapaper-export.csv``).
84
85Importez vos données dans wallabag 2.x
86~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
87
88Cliquez sur le lien ``Importer`` dans le menu, sur ``Importer les contenus`` dans
89la section Instapaper et ensuite sélectionnez votre fichier CSV pour l'uploader.
90
91Vos données vont être importées. L'import de données est une action qui peut être couteuse pour votre serveur.
92
93wallabag 1.x
94------------
95
96Si vous utilisiez wallabag v1.x, vous devez exporter vos données avant de migrer à wallabag v2.x, à cause du changement complet de l'application et de sa base de données. Sur votre ancienne instance de wallabag v1, vous pouvez exporter vos données en allant sur la page de configuration de l'application.
97
98.. image:: ../../img/user/export_v1.png
99 :alt: Export depuis wallabag v1
100 :align: center
101
102.. note::
103 Si vous avez plusieurs comptes sur la même instance de wallabag, chaque utilisateur doit exporter ses données depuis wallabag v1 et les importer dans la v2.
104
105.. note::
106 S'il vous arrive des problèmes durant l'export ou l'import, n'hésitez pas à `demander de l'aide <http://gitter.im/wallabag/wallabag>`_.
107
108Une 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>`_.
109
110Une 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.
111
112.. image:: ../../img/user/import_wallabagv1.png
113 :alt: Import depuis wallabag v1
114 :align: center
115
116wallabag 2.x
117------------
118
119Depuis l'instance sur laquelle vous étiez, rendez-vous dans la section `Tous les articles`, puis exportez ces articles au format json.
120
121.. image:: ../../img/user/export_v2.png
122 :alt: Export depuis wallabag v2
123 :align: center
124
125Depuis votre nouvelle instance de wallabag, créez votre compte utilisateur puis cliquez sur le lien dans le menu pour accéder à l'import. Choisissez l'import depuis wallabag v2 puis sélectionnez votre fichier json pour l'uploader.
126
127.. note::
128 S'il vous arrive des problèmes durant l'export ou l'import, n'hésitez pas à `demander de l'aide <http://gitter.im/wallabag/wallabag>`_.
129
130Import via la ligne de commande (CLI)
131-------------------------------------<http://doc.wallabag.org/en/master/user/parameters.html
132
133Si vous avez accès à la ligne de commandes de votre serveur web, vous pouvez exécuter cette commande pour import votre fichier wallabag v1 :
134
135::
136
137 bin/console wallabag:import 1 ~/Downloads/wallabag-export-1-2016-04-05.json --env=prod
138
139Remplacez les valeurs :
140
141* ``1`` est l'identifiant de votre utilisateur en base (l'ID de votre premier utilisateur créé sur wallabag est 1)
142* ``~/Downloads/wallabag-export-1-2016-04-05.json`` est le chemin de votre export wallabag v1
143
144Si vous voulez marquer tous ces articles comme lus, vous pouvez ajouter l'option ``--markAsRead``.
145
146Pour importer un fichier wallabag v2, vous devez ajouter l'option ``--importer=v2``.
147
148Vous obtiendrez :
149
150::
151
152 Start : 05-04-2016 11:36:07 ---
153 403 imported
154 0 already saved
155 End : 05-04-2016 11:36:09 ---
diff --git a/docs/fr/user/installation.rst b/docs/fr/user/installation.rst
deleted file mode 100644
index 442241e6..00000000
--- a/docs/fr/user/installation.rst
+++ /dev/null
@@ -1,316 +0,0 @@
1Installer wallabag
2==================
3
4Pré-requis
5------------
6
7wallabag est compatible avec **PHP >= 5.6**, PHP 7 inclus.
8
9.. note::
10
11 Pour installer wallabag facilement, nous avons créé un ``Makefile``, vous avez donc besoin d'avoir installé l'outil ``make``.
12
13wallabag utilise un grand nombre de bibliothèques PHP pour fonctionner. Ces bibliothèques doivent être installées à l'aide d'un outil nommé Composer. Vous devez l'installer si ce n'est déjà fait et vous assurer que vous utilisez bien la version 1.2 (si vous avez déjà Composer, faite un ``composer selfupdate``).
14
15Installation de Composer :
16
17::
18
19 curl -s https://getcomposer.org/installer | php
20
21Vous pouvez trouver des instructions spécifiques `ici (en anglais) <https://getcomposer.org/doc/00-intro.md>`__.
22
23Vous aurez besoin des extensions suivantes pour que wallabag fonctionne. Il est possible que certaines de ces extensions soient déjà activées dans votre version de PHP, donc vous n'avez pas forcément besoin d'installer tous les paquets correspondants.
24
25- php-session
26- php-ctype
27- php-dom
28- php-hash
29- php-simplexml
30- php-json
31- php-gd
32- php-mbstring
33- php-xml
34- php-tidy
35- php-iconv
36- php-curl
37- php-gettext
38- php-tokenizer
39- php-bcmath
40
41wallabag utilise PDO afin de se connecter à une base de données, donc vous aurez besoin d'une extension et d'un système de bases de données parmi :
42
43- pdo_mysql
44- pdo_sqlite
45- pdo_pgsql
46
47Installation
48------------
49
50Sur un serveur dédié (méthode conseillée)
51~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52
53Pour installer wallabag, vous devez exécuter ces commandes :
54
55::
56
57 git clone https://github.com/wallabag/wallabag.git
58 cd wallabag && make install
59
60Pour démarrer le serveur interne à php et vérifier que tout s'est installé correctement, vous pouvez exécuter :
61
62::
63
64 make run
65
66Et accéder wallabag à l'adresse http://lipdevotreserveur:8000
67
68.. tip::
69 Pour définir des paramètres via des variables d'environnement, vous pouvez les spécifier avec le préfixe ``SYMFONY__``. Par exemple, ``SYMFONY__DATABASE_DRIVER``. Vous pouvez lire la `documentation Symfony <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__ pour en savoir plus.
70
71Sur un serveur mutualisé
72~~~~~~~~~~~~~~~~~~~~~~~~
73
74Nous mettons à votre disposition une archive avec toutes les dépendances à l'intérieur.
75La configuration par défaut utilise SQLite pour la base de données. Si vous souhaitez changer ces paramètres, vous devez modifier le fichier ``app/config/parameters.yml``.
76
77Nous avons déjà créé un utilisateur : le login et le mot de passe sont ``wallabag``.
78
79.. caution:: Avec cette archive, wallabag ne vérifie pas si les extensions obligatoires sont présentes sur votre serveur pour bien fonctionner (ces vérifications sont faites durant le ``composer install`` quand vous avez un serveur dédié, voir ci-dessus).
80
81Exécutez cette commande pour télécharger et décompresser l'archive :
82
83.. code-block:: bash
84
85 wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
86
87Vous trouverez `le hash md5 du dernier package sur notre site <https://static.wallabag.org/releases/>`_.
88
89Maintenant, lisez la documentation ci-dessous pour crééer un virtual host. Accédez ensuite à votre installation de wallabag.
90Si vous avez changé la configuration pour modifier le type de stockage (MySQL ou PostgreSQL), vous devrez vous créer un utilisateur via la commande ``php bin/console wallabag:install --env=prod``.
91
92Installation avec Docker
93~~~~~~~~~~~~~~~~~~~~~~~~
94
95Nous vous proposons une image Docker pour installer wallabag facilement. Allez voir du côté de `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ pour plus d'informations.
96
97Commande pour démarrer le containeur
98^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
99
100.. code-block:: bash
101
102 docker pull wallabag/wallabag
103
104Installation sur Cloudron
105~~~~~~~~~~~~~~~~~~~~~~~~
106
107Cloudron permet d'installer des applications web sur votre serveur
108wallabag est proposé en tant qu'application Cloudron et est disponible directement depuis le store.
109
110`Installer wallabag sur Cloudron <https://cloudron.io/store/org.wallabag.cloudronapp.html>`__
111
112Virtual hosts
113-------------
114
115Configuration avec Apache
116~~~~~~~~~~~~~~~~~~~~~~~~~
117
118N'oubliez pas d'activer le mod *rewrite* de Apache
119
120.. code-block:: bash
121
122 a2enmod rewrite && systemctl reload apache2
123
124En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag`` et que vous utilisiez PHP comme un module Apache, voici un vhost pour wallabag :
125
126::
127
128 <VirtualHost *:80>
129 ServerName domain.tld
130 ServerAlias www.domain.tld
131
132 DocumentRoot /var/www/wallabag/web
133 <Directory /var/www/wallabag/web>
134 AllowOverride None
135 Order Allow,Deny
136 Allow from All
137
138 <IfModule mod_rewrite.c>
139 Options -MultiViews
140 RewriteEngine On
141 RewriteCond %{REQUEST_FILENAME} !-f
142 RewriteRule ^(.*)$ app.php [QSA,L]
143 </IfModule>
144 </Directory>
145
146 # uncomment the following lines if you install assets as symlinks
147 # or run into problems when compiling LESS/Sass/CoffeScript assets
148 # <Directory /var/www/wallabag>
149 # Options FollowSymlinks
150 # </Directory>
151
152 # optionally disable the RewriteEngine for the asset directories
153 # which will allow apache to simply reply with a 404 when files are
154 # not found instead of passing the request into the full symfony stack
155 <Directory /var/www/wallabag/web/bundles>
156 <IfModule mod_rewrite.c>
157 RewriteEngine Off
158 </IfModule>
159 </Directory>
160 ErrorLog /var/log/apache2/wallabag_error.log
161 CustomLog /var/log/apache2/wallabag_access.log combined
162 </VirtualHost>
163
164.. tip:: Pour Apache 2.4, dans la section `<Directory /var/www/wallabag/web>` vous devez remplacer les directives suivantes :
165
166::
167
168 AllowOverride None
169 Order Allow,Deny
170 Allow from All
171
172
173par
174
175::
176
177 Require All granted
178
179
180
181
182Après que vous ayez rechargé/redémarré Apache, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld.
183
184Configuration avec Nginx
185~~~~~~~~~~~~~~~~~~~~~~~~
186
187En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag``, voici un fichier de configuration Nginx pour wallabag :
188
189::
190
191 server {
192 server_name domain.tld www.domain.tld;
193 root /var/www/wallabag/web;
194
195 location / {
196 # try to serve file directly, fallback to app.php
197 try_files $uri /app.php$is_args$args;
198 }
199 location ~ ^/app\.php(/|$) {
200 fastcgi_pass unix:/var/run/php5-fpm.sock;
201 fastcgi_split_path_info ^(.+\.php)(/.*)$;
202 include fastcgi_params;
203 # When you are using symlinks to link the document root to the
204 # current version of your application, you should pass the real
205 # application path instead of the path to the symlink to PHP
206 # FPM.
207 # Otherwise, PHP's OPcache may not properly detect changes to
208 # your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
209 # for more information).
210 fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
211 fastcgi_param DOCUMENT_ROOT $realpath_root;
212 # Prevents URIs that include the front controller. This will 404:
213 # http://domain.tld/app.php/some-path
214 # Remove the internal directive to allow URIs like this
215 internal;
216 }
217
218 # return 404 for all other php files not matching the front controller
219 # this prevents access to other php files you don't want to be accessible.
220 location ~ \.php$ {
221 return 404;
222 }
223
224 error_log /var/log/nginx/wallabag_error.log;
225 access_log /var/log/nginx/wallabag_access.log;
226 }
227
228Après que vous ayez rechargé/redémarré Nginx, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld.
229
230.. tip::
231
232 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``.
233
234Configuration avec lighttpd
235~~~~~~~~~~~~~~~~~~~~~~~~~~~
236
237En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag``, voici un fichier de configuration pour wallabag (éditez votre fichier ``lighttpd.conf`` collez-y cette configuration) :
238
239::
240
241 server.modules = (
242 "mod_fastcgi",
243 "mod_access",
244 "mod_alias",
245 "mod_compress",
246 "mod_redirect",
247 "mod_rewrite",
248 )
249 server.document-root = "/var/www/wallabag/web"
250 server.upload-dirs = ( "/var/cache/lighttpd/uploads" )
251 server.errorlog = "/var/log/lighttpd/error.log"
252 server.pid-file = "/var/run/lighttpd.pid"
253 server.username = "www-data"
254 server.groupname = "www-data"
255 server.port = 80
256 server.follow-symlink = "enable"
257 index-file.names = ( "index.php", "index.html", "index.lighttpd.html")
258 url.access-deny = ( "~", ".inc" )
259 static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
260 compress.cache-dir = "/var/cache/lighttpd/compress/"
261 compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" )
262 include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
263 include_shell "/usr/share/lighttpd/create-mime.assign.pl"
264 include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
265 dir-listing.activate = "disable"
266
267 url.rewrite-if-not-file = (
268 "^/([^?])(?:\?(.))?" => "/app.php?$1&$2",
269 "^/([^?]*)" => "/app.php?=$1",
270 )
271
272Droits d'accès aux dossiers du projet
273-------------------------------------
274
275Environnement de test
276~~~~~~~~~~~~~~~~~~~~~
277
278Quand 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.
279
280Environnement de production
281~~~~~~~~~~~~~~~~~~~~~~~~~~~
282
283Dè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.
284
285Aussi, 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).
286
287Donc 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.
288
289Cela 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 :
290
291.. code-block:: bash
292
293 chown -R www-data:www-data /var/www/wallabag/var
294
295Il en est de même pour les dossiers suivants :
296
297* /var/www/wallabag/bin/
298* /var/www/wallabag/app/config/
299* /var/www/wallabag/vendor/
300
301en tapant
302
303.. code-block:: bash
304
305 chown -R www-data:www-data /var/www/wallabag/bin
306 chown -R www-data:www-data /var/www/wallabag/app/config
307 chown -R www-data:www-data /var/www/wallabag/vendor
308
309sinon lors de la mise à jour vous finirez par rencontrer les erreurs suivantes :
310
311
312.. code-block:: bash
313
314 Unable to write to the "bin" directory.
315 file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied
316 file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied
diff --git a/docs/fr/user/parameters.rst b/docs/fr/user/parameters.rst
deleted file mode 100644
index b2e33524..00000000
--- a/docs/fr/user/parameters.rst
+++ /dev/null
@@ -1,95 +0,0 @@
1À quoi servent les paramètres ?
2===============================
3
4Fichier `parameters.yml` par défaut
5-----------------------------------
6
7Voici la dernière version par défaut du fichier `app/config/parameters.yml`. Soyez sur que le votre respecte celui-ci.
8Si vous ne savez pas quelle valeur vous devez mettre, laissez celle par défaut.
9
10.. code-block:: yml
11
12 parameters:
13 database_driver: pdo_sqlite
14 database_host: 127.0.0.1
15 database_port: null
16 database_name: symfony
17 database_user: root
18 database_password: null
19 database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
20 database_table_prefix: wallabag_
21 database_socket: null
22 mailer_transport: smtp
23 mailer_host: 127.0.0.1
24 mailer_user: null
25 mailer_password: null
26 locale: en
27 secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
28 twofactor_auth: true
29 twofactor_sender: no-reply@wallabag.org
30 fosuser_registration: true
31 fosuser_confirmation: true
32 from_email: no-reply@wallabag.org
33 rss_limit: 50
34 rabbitmq_host: localhost
35 rabbitmq_port: 5672
36 rabbitmq_user: guest
37 rabbitmq_password: guest
38 redis_scheme: tcp
39 redis_host: localhost
40 redis_port: 6379
41 redis_path: null
42 redis_password: null
43
44Meaning of each parameter
45-------------------------
46
47.. csv-table:: Paramètres de base de données
48 :header: "name", "default", "description"
49
50 "database_driver", "pdo_sqlite", "Doit être pdo_sqlite ou pdo_mysql ou pdo_pgsql"
51 "database_host", "127.0.0.1", "Hôte de votre base de données (généralement localhost ou 127.0.0.1)"
52 "database_port", "~", "Port de votre base de données (vous pouvez laisser ``~`` pour utiliser celui par défaut)"
53 "database_name", "symfony", "Nom de votre base de données"
54 "database_user", "root", "Utilisateur de votre base de données"
55 "database_password", "~", "Mot de passe de cet utilisateur"
56 "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "Uniquement pour SQLite. Chemin du fichier de base de données. Laissez vide pour les autres bases de données."
57 "database_table_prefix", "wallabag_", "Toutes les tables de wallabag seront préfixées par cette chaine. Vous pouvez ajouter un ``_`` pour plus de clarté"
58 "database_socket", "null", "Si votre base de données utilise un socket plutôt que tcp, spécifiez le chemin du socket (les autres paramètres de connexion seront alors ignorés)"
59
60.. csv-table:: Configuration pour envoyer des emails depuis wallabag
61 :header: "name", "default", "description"
62
63 "mailer_transport", "smtp", "Méthode de transport exacte utilisée pour envoyer des emails. Les valeurs correctes sont : smtp, gmail, mail, sendmail, null (ce qui désactivera l'envoi des emails)"
64 "mailer_host", "127.0.0.1", "Hôte sur lequel se connecter quand on utilise smtp comme transport."
65 "mailer_user", "~", "Utilisateur smtp."
66 "mailer_password", "~", "Mot de passe de cet utilisateur."
67
68.. csv-table:: Autres options de wallabag
69 :header: "name", "default", "description"
70
71 "locale", "en", "Langue par défaut de votre instance wallabag (comme en, fr, es, etc.)"
72 "secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "C'est une chaine qui doit être unique à votre application et qui est couramment utilisée pour ajouter plus d'entropie aux opérations relatives à la sécurité."
73 "twofactor_auth", "true", "true pour activer l'authentification à deux facteurs"
74 "twofactor_sender", "no-reply@wallabag.org", "Email de l'expéditeur du code de l'authentification à deux facteurs"
75 "fosuser_registration", "true", "true pour activer l'inscription publique"
76 "fosuser_confirmation", "true", "true pour envoyer un email de confirmation pour chaque création de compte"
77 "from_email", "no-reply@wallabag.org", "Email de l'expéditeur pour chaque email envoyé"
78 "rss_limit", "50", "Limite pour les flux RSS"
79
80.. csv-table:: Configuration RabbitMQ
81 :header: "name", "default", "description"
82
83 "rabbitmq_host", "localhost", "Hôte de votre instance RabbitMQ"
84 "rabbitmq_port", "5672", "Port de votre instance RabbitMQ"
85 "rabbitmq_user", "guest", "Utilisateur de votre instance RabbitMQ"
86 "rabbitmq_password", "guest", "Mot de passe de cet utilisateur"
87
88.. csv-table:: Configuration Redis
89 :header: "name", "default", "description"
90
91 "redis_scheme", "tcp", "Définit le protocole utilisé pour commuiquer avec l'instance Redis. Les valeurs correctes sont : tcp, unix, http"
92 "redis_host", "localhost", "IP ou hôte du serveur cible (ignoré pour un schéma unix)"
93 "redis_port", "6379", "Port TCP/IP du serveur cible (ignoré pour un schéma unix)"
94 "redis_path", "null", "Chemin du fichier de socket du domaine UNIX utilisé quand on se connecte à Redis en utilisant les sockets du domaine UNIX"
95 "redis_password", "null", "Mot de passe défini dans la configuration serveur de Redis (paramètre `requirepass` dans `redis.conf`)"
diff --git a/docs/fr/user/query-upgrade-21-22.rst b/docs/fr/user/query-upgrade-21-22.rst
deleted file mode 100644
index fa9835a8..00000000
--- a/docs/fr/user/query-upgrade-21-22.rst
+++ /dev/null
@@ -1,984 +0,0 @@
1Migration 20161001072726
2------------------------
3
4MySQL
5^^^^^
6
7Migration up
8""""""""""""
9
10.. code-block:: sql
11
12 ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBA364942
13 ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBAD26311
14 ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE
15 ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE
16 ALTER TABLE wallabag_annotation DROP FOREIGN KEY FK_A7AED006BA364942
17 ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE
18
19Migration down
20""""""""""""""
21
22We didn't write down migration for ``20161001072726``.
23
24PostgreSQL
25^^^^^^^^^^
26
27Migration up
28""""""""""""
29
30.. code-block:: sql
31
32 ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cba364942
33 ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cbad26311
34 ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE
35 ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE
36 ALTER TABLE wallabag_annotation DROP CONSTRAINT fk_a7aed006ba364942
37 ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE
38
39Migration down
40""""""""""""""
41
42We didn't write down migration for ``20161001072726``.
43
44SQLite
45^^^^^^
46
47This migration can only be executed safely on MySQL or PostgreSQL.
48
49Migration 20161022134138
50------------------------
51
52MySQL
53^^^^^
54
55Migration up
56""""""""""""
57
58.. code-block:: sql
59
60 ALTER DATABASE wallabag CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
61 ALTER TABLE wallabag_user CHANGE confirmation_token confirmation_token VARCHAR(180) DEFAULT NULL;
62 ALTER TABLE wallabag_user CHANGE salt salt VARCHAR(180) NOT NULL;
63 ALTER TABLE wallabag_user CHANGE password password VARCHAR(180) NOT NULL;
64 ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
65 ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
66 ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
67 ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
68 ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
69 ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
70 ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
71 ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
72 ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
73 ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
74
75Migration down
76""""""""""""""
77
78.. code-block:: sql
79
80 ALTER DATABASE wallabag CHARACTER SET = utf8 COLLATE = utf8_unicode_ci;
81 ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
82 ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
83 ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
84 ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
85 ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;
86 ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci;
87 ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;
88 ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;
89 ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;
90 ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;
91
92PostgreSQL and SQLite
93^^^^^^^^^^^^^^^^^^^^^
94
95This migration only apply to MySQL.
96
97Migration 20161024212538
98------------------------
99
100MySQL
101^^^^^
102
103Migration up
104""""""""""""
105
106.. code-block:: sql
107
108 ALTER TABLE wallabag_oauth2_clients ADD user_id INT NOT NULL
109 ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE
110 CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id)
111
112Migration down
113""""""""""""""
114
115.. code-block:: sql
116
117 ALTER TABLE wallabag_oauth2_clients DROP FOREIGN KEY IDX_user_oauth_client
118 ALTER TABLE wallabag_oauth2_clients DROP user_id
119
120PostgreSQL
121^^^^^^^^^^
122
123Migration up
124""""""""""""
125
126.. code-block:: sql
127
128 ALTER TABLE wallabag_oauth2_clients ADD user_id INT DEFAULT NULL
129 ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE
130 CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id)
131
132
133Migration down
134""""""""""""""
135
136.. code-block:: sql
137
138 ALTER TABLE wallabag_oauth2_clients DROP CONSTRAINT idx_user_oauth_client
139 ALTER TABLE wallabag_oauth2_clients DROP user_id
140
141SQLite
142^^^^^^
143
144Migration up
145""""""""""""
146
147.. code-block:: sql
148
149 CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients
150 DROP TABLE wallabag_oauth2_clients
151 CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id), CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)
152 INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients
153 DROP TABLE __temp__wallabag_oauth2_clients
154 CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id)
155
156Migration down
157""""""""""""""
158
159.. code-block:: sql
160
161 DROP INDEX IDX_635D765EA76ED395
162 CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients
163 DROP TABLE wallabag_oauth2_clients
164 CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
165 INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients
166 DROP TABLE __temp__wallabag_oauth2_clients
167
168Migration 20161031132655
169------------------------
170
171MySQL
172^^^^^
173
174Migration up
175""""""""""""
176
177.. code-block:: sql
178
179 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc')
180
181Migration down
182""""""""""""""
183
184.. code-block:: sql
185
186 DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled';
187
188PostgreSQL
189^^^^^^^^^^
190
191Migration up
192""""""""""""
193
194.. code-block:: sql
195
196 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc')
197
198Migration down
199""""""""""""""
200
201.. code-block:: sql
202
203 DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled';
204
205SQLite
206^^^^^^
207
208Migration up
209""""""""""""
210
211.. code-block:: sql
212
213 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc')
214
215Migration down
216""""""""""""""
217
218.. code-block:: sql
219
220 DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled';
221
222Migration 20161104073720
223------------------------
224
225MySQL
226^^^^^
227
228Migration up
229""""""""""""
230
231.. code-block:: sql
232
233 CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at)
234
235Migration down
236""""""""""""""
237
238.. code-block:: sql
239
240 DROP INDEX IDX_entry_created_at ON wallabag_entry
241
242PostgreSQL
243^^^^^^^^^^
244
245Migration up
246""""""""""""
247
248.. code-block:: sql
249
250 CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at)
251
252Migration down
253""""""""""""""
254
255.. code-block:: sql
256
257 DROP INDEX idx_entry_created_at
258
259SQLite
260^^^^^^
261
262Migration up
263""""""""""""
264
265.. code-block:: sql
266
267 DROP INDEX created_at_idx
268 DROP INDEX IDX_F4D18282A76ED395
269 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry
270 DROP TABLE wallabag_entry
271 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id))
272 INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry
273 DROP TABLE __temp__wallabag_entry
274 CREATE INDEX created_at_idx ON wallabag_entry (created_at)
275 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
276 CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at)
277
278Migration down
279""""""""""""""
280
281.. code-block:: sql
282
283 DROP INDEX IDX_entry_created_at
284 DROP INDEX IDX_F4D18282A76ED395
285 DROP INDEX created_at_idx
286 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry
287 DROP TABLE wallabag_entry
288 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id))
289 INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry
290 DROP TABLE __temp__wallabag_entry
291 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
292 CREATE INDEX created_at_idx ON wallabag_entry (created_at)
293
294Migration 20161106113822
295------------------------
296
297MySQL
298^^^^^
299
300Migration up
301""""""""""""
302
303.. code-block:: sql
304
305 ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0
306
307Migration down
308""""""""""""""
309
310.. code-block:: sql
311
312 ALTER TABLE wallabag_config DROP action_mark_as_read
313
314PostgreSQL
315^^^^^^^^^^
316
317Migration up
318""""""""""""
319
320.. code-block:: sql
321
322 ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0
323
324Migration down
325""""""""""""""
326
327.. code-block:: sql
328
329 ALTER TABLE wallabag_config DROP action_mark_as_read
330
331SQLite
332^^^^^^
333
334Migration up
335""""""""""""
336
337.. code-block:: sql
338
339 ALTER TABLE wallabag_config ADD COLUMN action_mark_as_read INTEGER DEFAULT 0
340
341Migration down
342""""""""""""""
343
344.. code-block:: sql
345
346 DROP INDEX UNIQ_87E64C53A76ED395
347 CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config
348 DROP TABLE wallabag_config
349 CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
350 INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config
351 DROP TABLE __temp__wallabag_config
352 CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id)
353
354Migration 20161117071626
355------------------------
356
357MySQL
358^^^^^
359
360Migration up
361""""""""""""
362
363.. code-block:: sql
364
365 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry')
366 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry')
367
368Migration down
369""""""""""""""
370
371.. code-block:: sql
372
373 DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark';
374 DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url';
375
376PostgreSQL
377^^^^^^^^^^
378
379Migration up
380""""""""""""
381
382.. code-block:: sql
383
384 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry')
385 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry')
386
387Migration down
388""""""""""""""
389
390.. code-block:: sql
391
392 DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark';
393 DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url';
394
395SQLite
396^^^^^^
397
398Migration up
399""""""""""""
400
401.. code-block:: sql
402
403 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry')
404 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry')
405
406Migration down
407""""""""""""""
408
409.. code-block:: sql
410
411 DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark';
412 DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url';
413
414Migration 20161118134328
415------------------------
416
417MySQL
418^^^^^
419
420Migration up
421""""""""""""
422
423.. code-block:: sql
424
425 ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL
426
427Migration down
428""""""""""""""
429
430.. code-block:: sql
431
432 ALTER TABLE wallabag_entry DROP http_status
433
434PostgreSQL
435^^^^^^^^^^
436
437Migration up
438""""""""""""
439
440.. code-block:: sql
441
442 ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL
443
444Migration down
445""""""""""""""
446
447.. code-block:: sql
448
449 ALTER TABLE wallabag_entry DROP http_status
450
451SQLite
452^^^^^^
453
454Migration up
455""""""""""""
456
457.. code-block:: sql
458
459 ALTER TABLE wallabag_entry ADD COLUMN http_status VARCHAR(3) DEFAULT NULL
460
461Migration down
462""""""""""""""
463
464.. code-block:: sql
465
466 DROP INDEX created_at_idx
467 DROP INDEX IDX_F4D18282A76ED395
468 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry
469 DROP TABLE wallabag_entry
470 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id))
471 INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry
472 DROP TABLE __temp__wallabag_entry
473 CREATE INDEX created_at_idx ON wallabag_entry (created_at)
474 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
475
476Migration 20161122144743
477------------------------
478
479MySQL
480^^^^^
481
482Migration up
483""""""""""""
484
485.. code-block:: sql
486
487 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry')
488
489Migration down
490""""""""""""""
491
492.. code-block:: sql
493
494 DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access';
495
496PostgreSQL
497^^^^^^^^^^
498
499Migration up
500""""""""""""
501
502.. code-block:: sql
503
504 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry')
505
506Migration down
507""""""""""""""
508
509.. code-block:: sql
510
511 DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access';
512
513SQLite
514^^^^^^
515
516Migration up
517""""""""""""
518
519.. code-block:: sql
520
521 INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry')
522
523Migration down
524""""""""""""""
525
526.. code-block:: sql
527
528 DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access';
529
530Migration 20161122203647
531------------------------
532
533MySQL
534^^^^^
535
536Migration up
537""""""""""""
538
539.. code-block:: sql
540
541 ALTER TABLE wallabag_user DROP expired, DROP credentials_expired
542
543Migration down
544""""""""""""""
545
546.. code-block:: sql
547
548 ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL, ADD credentials_expired SMALLINT DEFAULT NULL
549
550PostgreSQL
551^^^^^^^^^^
552
553Migration up
554""""""""""""
555
556.. code-block:: sql
557
558 ALTER TABLE wallabag_user DROP expired
559 ALTER TABLE wallabag_user DROP credentials_expired
560
561Migration down
562""""""""""""""
563
564.. code-block:: sql
565
566 ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL
567 ALTER TABLE wallabag_user ADD credentials_expired SMALLINT DEFAULT NULL
568
569SQLite
570^^^^^^
571
572Migration up
573""""""""""""
574
575.. code-block:: sql
576
577 DROP INDEX UNIQ_1D63E7E5C05FB297
578 DROP INDEX UNIQ_1D63E7E5A0D96FBF
579 DROP INDEX UNIQ_1D63E7E592FC23A8
580 CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM wallabag_user
581 DROP TABLE wallabag_user
582 CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, locked BOOLEAN NOT NULL, expires_at DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, credentials_expire_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
583 INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM __temp__wallabag_user
584 DROP TABLE __temp__wallabag_user
585 CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token)
586 CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical)
587 CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical)
588
589Migration down
590""""""""""""""
591
592.. code-block:: sql
593
594 ALTER TABLE wallabag_user ADD COLUMN expired SMALLINT DEFAULT NULL
595 ALTER TABLE wallabag_user ADD COLUMN credentials_expired SMALLINT DEFAULT NULL
596
597Migration 20161128084725
598------------------------
599
600MySQL
601^^^^^
602
603Migration up
604""""""""""""
605
606.. code-block:: sql
607
608 ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL
609
610Migration down
611""""""""""""""
612
613.. code-block:: sql
614
615 ALTER TABLE wallabag_config DROP list_mode
616
617PostgreSQL
618^^^^^^^^^^
619
620Migration up
621""""""""""""
622
623.. code-block:: sql
624
625 ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL
626
627Migration down
628""""""""""""""
629
630.. code-block:: sql
631
632 ALTER TABLE wallabag_config DROP list_mode
633
634SQLite
635^^^^^^
636
637Migration up
638""""""""""""
639
640.. code-block:: sql
641
642 ALTER TABLE wallabag_config ADD COLUMN list_mode INTEGER DEFAULT NULL
643
644Migration down
645""""""""""""""
646
647.. code-block:: sql
648
649 DROP INDEX UNIQ_87E64C53A76ED395
650 CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config
651 DROP TABLE wallabag_config
652 CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
653 INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config
654 DROP TABLE __temp__wallabag_config
655 CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id)
656
657Migration 20161128131503
658------------------------
659
660MySQL
661^^^^^
662
663Migration up
664""""""""""""
665
666.. code-block:: sql
667
668 ALTER TABLE wallabag_user DROP locked, DROP credentials_expire_at, DROP expires_at
669
670Migration down
671""""""""""""""
672
673.. code-block:: sql
674
675 ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL, ADD credentials_expire_at DATETIME DEFAULT NULL, ADD expires_at DATETIME DEFAULT NULL
676
677PostgreSQL
678^^^^^^^^^^
679
680Migration up
681""""""""""""
682
683.. code-block:: sql
684
685 ALTER TABLE wallabag_user DROP locked
686 ALTER TABLE wallabag_user DROP credentials_expire_at
687 ALTER TABLE wallabag_user DROP expires_at
688
689Migration down
690""""""""""""""
691
692.. code-block:: sql
693
694 ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL
695 ALTER TABLE wallabag_user ADD credentials_expire_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL
696 ALTER TABLE wallabag_user ADD expires_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL
697
698SQLite
699^^^^^^
700
701Migration up
702""""""""""""
703
704.. code-block:: sql
705
706 ALTER TABLE wallabag_user ADD COLUMN locked SMALLINT DEFAULT NULL
707 ALTER TABLE wallabag_user ADD COLUMN credentials_expire_at DATETIME DEFAULT NULL
708 ALTER TABLE wallabag_user ADD COLUMN expires_at DATETIME DEFAULT NULL
709
710Migration down
711""""""""""""""
712
713.. code-block:: sql
714
715 DROP INDEX UNIQ_1D63E7E592FC23A8
716 DROP INDEX UNIQ_1D63E7E5A0D96FBF
717 DROP INDEX UNIQ_1D63E7E5C05FB297
718 CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM wallabag_user
719 DROP TABLE wallabag_user
720 CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, expired SMALLINT DEFAULT NULL, credentials_expired SMALLINT DEFAULT NULL, PRIMARY KEY(id))
721 INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM __temp__wallabag_user
722 DROP TABLE __temp__wallabag_user
723 CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical)
724 CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical)
725 CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token)
726
727Migration 20161214094402
728------------------------
729
730MySQL
731^^^^^
732
733Migration up
734""""""""""""
735
736.. code-block:: sql
737
738 ALTER TABLE wallabag_entry CHANGE uuid uid VARCHAR(23)
739
740Migration down
741""""""""""""""
742
743.. code-block:: sql
744
745 ALTER TABLE wallabag_entry CHANGE uid uuid VARCHAR(23)
746
747PostgreSQL
748^^^^^^^^^^
749
750Migration up
751""""""""""""
752
753.. code-block:: sql
754
755 ALTER TABLE wallabag_entry RENAME uuid TO uid
756
757Migration down
758""""""""""""""
759
760.. code-block:: sql
761
762 ALTER TABLE wallabag_entry RENAME uid TO uuid
763
764SQLite
765^^^^^^
766
767Migration up
768""""""""""""
769
770.. code-block:: sql
771
772 CREATE TABLE __temp__wallabag_entry (
773 id INTEGER NOT NULL,
774 user_id INTEGER DEFAULT NULL,
775 uid VARCHAR(23) DEFAULT NULL,
776 title CLOB DEFAULT NULL,
777 url CLOB DEFAULT NULL,
778 is_archived BOOLEAN NOT NULL,
779 is_starred BOOLEAN NOT NULL,
780 content CLOB DEFAULT NULL,
781 created_at DATETIME NOT NULL,
782 updated_at DATETIME NOT NULL,
783 mimetype CLOB DEFAULT NULL,
784 language CLOB DEFAULT NULL,
785 reading_time INTEGER DEFAULT NULL,
786 domain_name CLOB DEFAULT NULL,
787 preview_picture CLOB DEFAULT NULL,
788 is_public BOOLEAN DEFAULT '0',
789 http_status VARCHAR(3) DEFAULT NULL,
790 PRIMARY KEY(id)
791 );
792 INSERT INTO __temp__wallabag_entry SELECT id,user_id,uuid,title,url,is_archived,is_starred,content,created_at,updated_at,mimetype,language,reading_time,domain_name,preview_picture,is_public,http_status FROM wallabag_entry;
793 DROP TABLE wallabag_entry;
794 ALTER TABLE __temp__wallabag_entry RENAME TO wallabag_entry
795 CREATE INDEX uid ON wallabag_entry (uid)
796 CREATE INDEX created_at ON wallabag_entry (created_at)
797 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
798
799
800Migration down
801""""""""""""""
802
803.. code-block:: sql
804
805 CREATE TABLE __temp__wallabag_entry (
806 id INTEGER NOT NULL,
807 user_id INTEGER DEFAULT NULL,
808 uuid VARCHAR(23) DEFAULT NULL,
809 title CLOB DEFAULT NULL,
810 url CLOB DEFAULT NULL,
811 is_archived BOOLEAN NOT NULL,
812 is_starred BOOLEAN NOT NULL,
813 content CLOB DEFAULT NULL,
814 created_at DATETIME NOT NULL,
815 updated_at DATETIME NOT NULL,
816 mimetype CLOB DEFAULT NULL,
817 language CLOB DEFAULT NULL,
818 reading_time INTEGER DEFAULT NULL,
819 domain_name CLOB DEFAULT NULL,
820 preview_picture CLOB DEFAULT NULL,
821 is_public BOOLEAN DEFAULT '0',
822 http_status VARCHAR(3) DEFAULT NULL,
823 PRIMARY KEY(id)
824 );
825 INSERT INTO __temp__wallabag_entry SELECT id,user_id,uid,title,url,is_archived,is_starred,content,created_at,updated_at,mimetype,language,reading_time,domain_name,preview_picture,is_public,http_status FROM wallabag_entry;
826 DROP TABLE wallabag_entry;
827 ALTER TABLE __temp__wallabag_entry RENAME TO wallabag_entry
828 CREATE INDEX uid ON wallabag_entry (uid)
829 CREATE INDEX created_at ON wallabag_entry (created_at)
830 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
831
832Migration 20161214094403
833------------------------
834
835MySQL
836^^^^^
837
838Migration up
839""""""""""""
840
841.. code-block:: sql
842
843 CREATE INDEX IDX_entry_uid ON wallabag_entry (uid)
844
845Migration down
846""""""""""""""
847
848.. code-block:: sql
849
850 DROP INDEX IDX_entry_uid ON wallabag_entry
851
852PostgreSQL
853^^^^^^^^^^
854
855Migration up
856""""""""""""
857
858.. code-block:: sql
859
860 CREATE INDEX IDX_entry_uid ON wallabag_entry (uid)
861
862Migration down
863""""""""""""""
864
865.. code-block:: sql
866
867 DROP INDEX idx_entry_uid
868
869SQLite
870^^^^^^
871
872Migration up
873""""""""""""
874
875.. code-block:: sql
876
877 DROP INDEX IDX_F4D18282A76ED395
878 DROP INDEX created_at_idx
879 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry
880 DROP TABLE wallabag_entry
881 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id))
882 INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry
883 DROP TABLE __temp__wallabag_entry
884 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
885 CREATE INDEX created_at_idx ON wallabag_entry (created_at)
886 CREATE INDEX IDX_entry_uid ON wallabag_entry (uid)
887
888Migration down
889""""""""""""""
890
891.. code-block:: sql
892
893 DROP INDEX IDX_entry_uid
894 DROP INDEX created_at_idx
895 DROP INDEX IDX_F4D18282A76ED395
896 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry
897 DROP TABLE wallabag_entry
898 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id))
899 INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry
900 DROP TABLE __temp__wallabag_entry
901 CREATE INDEX created_at_idx ON wallabag_entry (created_at)
902 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
903
904Migration 20170127093841
905------------------------
906
907MySQL
908^^^^^
909
910Migration up
911""""""""""""
912
913.. code-block:: sql
914
915 CREATE INDEX IDX_entry_starred ON wallabag_entry (is_starred)
916 CREATE INDEX IDX_entry_archived ON wallabag_entry (is_archived)
917
918Migration down
919""""""""""""""
920
921.. code-block:: sql
922
923 DROP INDEX IDX_entry_starred ON wallabag_entry
924 DROP INDEX IDX_entry_archived ON wallabag_entry
925
926PostgreSQL
927^^^^^^^^^^
928
929Migration up
930""""""""""""
931
932.. code-block:: sql
933
934 CREATE INDEX IDX_entry_starred ON wallabag_entry (is_starred)
935 CREATE INDEX IDX_entry_archived ON wallabag_entry (is_archived)
936
937Migration down
938""""""""""""""
939
940.. code-block:: sql
941
942 DROP INDEX IDX_entry_starred
943 DROP INDEX IDX_entry_archived
944
945SQLite
946^^^^^^
947
948Migration up
949""""""""""""
950
951.. code-block:: sql
952
953 DROP INDEX uid
954 DROP INDEX created_at
955 DROP INDEX IDX_F4D18282A76ED395
956 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status FROM wallabag_entry
957 DROP TABLE wallabag_entry
958 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid VARCHAR(23) DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', http_status VARCHAR(3) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
959 INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status FROM __temp__wallabag_entry
960 DROP TABLE __temp__wallabag_entry
961 CREATE INDEX uid ON wallabag_entry (uid)
962 CREATE INDEX created_at ON wallabag_entry (created_at)
963 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
964 CREATE INDEX IDX_entry_starred ON wallabag_entry (is_starred)
965 CREATE INDEX IDX_entry_archived ON wallabag_entry (is_archived)
966
967Migration down
968""""""""""""""
969
970.. code-block:: sql
971
972 DROP INDEX IDX_entry_archived
973 DROP INDEX IDX_entry_starred
974 DROP INDEX IDX_F4D18282A76ED395
975 DROP INDEX created_at
976 DROP INDEX uid
977 CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status FROM wallabag_entry
978 DROP TABLE wallabag_entry
979 CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid VARCHAR(23) DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', http_status VARCHAR(3) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id))
980 INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public, http_status FROM __temp__wallabag_entry
981 DROP TABLE __temp__wallabag_entry
982 CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id)
983 CREATE INDEX created_at ON wallabag_entry (created_at)
984 CREATE INDEX uid ON wallabag_entry (uid)
diff --git a/docs/fr/user/tags.rst b/docs/fr/user/tags.rst
deleted file mode 100644
index 8ddc0f40..00000000
--- a/docs/fr/user/tags.rst
+++ /dev/null
@@ -1,2 +0,0 @@
1Tags
2==== \ No newline at end of file
diff --git a/docs/fr/user/upgrade.rst b/docs/fr/user/upgrade.rst
deleted file mode 100644
index af198006..00000000
--- a/docs/fr/user/upgrade.rst
+++ /dev/null
@@ -1,140 +0,0 @@
1Mettre à jour votre installation de wallabag
2============================================
3
4Vous trouverez ici différentes manières de mettre à jour wallabag :
5
6- `de la 2.1.x à la 2.2.x <#mettre-a-jour-de-la-2-1-x-a-la-2-2-x>`_
7- `de la 2.0.x à la 2.1.1 <#mettre-a-jour-de-la-2-0-x-a-la-2-1-1>`_
8- `de la 1.x à la 2.x <#depuis-wallabag-1-x>`_
9
10Mettre à jour de la 2.1.x à la 2.2.x
11------------------------------------
12
13Mise à jour sur un serveur dédié
14^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
15
16**Depuis 2.1.x:**
17
18::
19
20 make update
21 php bin/console doctrine:migrations:migrate --no-interaction -e=prod
22
23**Depuis 2.2.0:**
24
25::
26
27 make update
28
29Explications à propos des migrations de base de données
30"""""""""""""""""""""""""""""""""""""""""""""""""""""""
31
32Durant la mise à jour, nous exécutons des migrations de base de données.
33
34Toutes les migrations de base de données sont stockées dans le dossier ``app/DoctrineMigrations``. Vous pouvez exécuter chaque migration individuellement :
35``bin/console doctrine:migrations:execute 20161001072726 --env=prod``.
36
37Voici la liste des migrations de la 2.1.x à la 2.2.0 :
38
39* ``20161001072726``: ajout de clés étrangères pour la réinitialisation de compte
40* ``20161022134138``: conversion de la base de données à l'encodage ``utf8mb4`` (pour MySQL uniquement)
41* ``20161024212538``: ajout de la colonne ``user_id`` sur la table ``oauth2_clients`` pour empêcher les utilisateurs de supprimer des clients API d'autres utilisateurs
42* ``20161031132655``: ajout du paramètre interne pour activer/désactiver le téléchargement des images
43* ``20161104073720``: ajout de l'index ``created_at`` sur la table ``entry``
44* ``20161106113822``: ajout du champ ``action_mark_as_read`` sur la table ``config``
45* ``20161117071626``: ajout du paramètre interne pour partager ses articles vers unmark.it
46* ``20161118134328``: ajout du champ ``http_status`` sur la table ``entry``
47* ``20161122144743``: ajout du paramètre interne pour activer/désactiver la récupération d'articles derrière un paywall
48* ``20161122203647``: suppression des champs ``expired`` et ``credentials_expired`` sur la table ``user``
49* ``20161128084725``: ajout du champ ``list_mode`` sur la table ``config``
50* ``20161128131503``: suppression des champs ``locked``, ``credentials_expire_at`` et ``expires_at`` sur la table ``user``
51* ``20161214094402``: renommage du champ ``uuid`` en ``uid`` sur la table ``entry``
52* ``20161214094403``: ajout de l'index ``uid`` sur la table ``entry``
53* ``20170127093841``: ajout des index ``is_starred`` et ``is_archived`` sur la table ``entry``
54
55Mise à jour sur un hébergement mutualisé
56^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
57
58Effectuez une sauvegarde du fichier ``app/config/parameters.yml``.
59
60Téléchargez la dernière version de wallabag :
61
62.. code-block:: bash
63
64 wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
65
66Vous trouverez `le hash md5 du dernier package sur notre site <https://static.wallabag.org/releases/>`_.
67
68Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
69
70Merci de vérifier que votre fichier ``app/config/parameters.yml`` contient tous les paramètres requis. Vous trouverez `ici une documentation détaillée concernant les paramètres <http://doc.wallabag.org/fr/master/user/parameters.html>`_.
71
72Si vous utilisez SQLite, vous devez également conserver le contenu du répertoire ``data/``.
73
74Videz le répertoire ``var/cache``.
75
76Vous allez devoir également exécuter des requêtes SQL pour mettre à jour votre base de données. Nous partons du principe que le préfixe de vos tables est ``wallabag_``.
77
78`Vous trouverez toutes les requêtes à exécuter ici <http://doc.wallabag.org/fr/master/user/query-upgrade-21-22.html>`_.
79
80
81Mettre à jour de la 2.0.x à la 2.1.1
82------------------------------------
83
84.. warning::
85Avant cette migration, si vous aviez configuré l'import depuis Pocket en ajoutant votre consumer key dans les paramètres internes, pensez à effectuer une sauvegarde de celle-ci : vous devrez l'ajouter dans la configuration de wallabag après la mise à jour.
86
87Mise à jour sur un serveur dédié
88^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
89
90::
91
92 rm -rf var/cache/*
93 git fetch origin
94 git fetch --tags
95 git checkout 2.1.1 --force
96 SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
97 php bin/console doctrine:migrations:migrate --env=prod
98 php bin/console cache:clear --env=prod
99
100Mise à jour sur un hébergement mutualisé
101^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
102
103Effectuez une sauvegarde du fichier ``app/config/parameters.yml``.
104
105Téléchargez la version 2.1.1 de wallabag :
106
107.. code-block:: bash
108
109 wget http://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz
110
111(hash md5 de l'archive 2.1.1 : ``9584a3b60a2b2a4de87f536548caac93``)
112
113Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
114
115Merci de vérifier que votre fichier ``app/config/parameters.yml`` contient tous les paramètres requis. Vous trouverez `ici une documentation détaillée concernant les paramètres <http://doc.wallabag.org/fr/master/user/parameters.html>`_.
116
117Si vous utilisez SQLite, vous devez également conserver le contenu du répertoire ``data/``.
118
119Videz le répertoire ``var/cache``.
120
121Vous allez devoir également exécuter des requêtes SQL pour mettre à jour votre base de données. Nous partons du principe que le préfixe de vos tables est ``wallabag_`` et que le serveur SQL est un serveur MySQL :
122
123.. code-block:: sql
124
125 ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
126 INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
127 ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
128 INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
129 INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
130 ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
131 DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';
132
133Depuis wallabag 1.x
134-------------------
135
136Il n'y a pas de script automatique pour mettre à jour wallabag 1.x en wallabag 2.x. Vous devez :
137
138- exportez vos données
139- installer wallabag 2.x (`lisez la documentation d'installation <http://doc.wallabag.org/fr/master/user/installation.html>`_ )
140- importer vos données dans votre installation toute propre (`lisez la documentation d'import <http://doc.wallabag.org/fr/master/user/import.html>`_ )