aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/de
diff options
context:
space:
mode:
Diffstat (limited to 'docs/de')
-rw-r--r--docs/de/conf.py55
-rw-r--r--docs/de/developer/api.rst272
-rw-r--r--docs/de/developer/asynchronous.rst159
-rw-r--r--docs/de/developer/docker.rst57
-rw-r--r--docs/de/developer/documentation.rst10
-rw-r--r--docs/de/developer/paywall.rst56
-rw-r--r--docs/de/developer/testsuite.rst10
-rw-r--r--docs/de/developer/translate.rst57
-rw-r--r--docs/de/index.rst53
-rw-r--r--docs/de/requirements.txt2
-rw-r--r--docs/de/user/android.rst102
-rw-r--r--docs/de/user/articles.rst113
-rw-r--r--docs/de/user/backup.rst25
-rw-r--r--docs/de/user/configuration.rst131
-rw-r--r--docs/de/user/configuring_mobile.rst12
-rw-r--r--docs/de/user/create_account.rst41
-rw-r--r--docs/de/user/errors_during_fetching.rst28
-rw-r--r--docs/de/user/faq.rst52
-rw-r--r--docs/de/user/filters.rst54
-rw-r--r--docs/de/user/import.rst152
-rw-r--r--docs/de/user/installation.rst349
-rw-r--r--docs/de/user/parameters.rst95
-rw-r--r--docs/de/user/query-upgrade-21-22.rst984
-rw-r--r--docs/de/user/tags.rst2
-rw-r--r--docs/de/user/upgrade.rst140
25 files changed, 0 insertions, 3011 deletions
diff --git a/docs/de/conf.py b/docs/de/conf.py
deleted file mode 100644
index 1bc39d4c..00000000
--- a/docs/de/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 = 'wallabagdedoc'
22
23latex_elements = {
24}
25
26latex_documents = [
27 ('index', 'wallabag-de.tex', u'wallabag Documentation',
28 u'Nicolas Lœuillet', 'manual'),
29]
30
31man_pages = [
32 ('index', 'wallabagde', 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/de/developer/api.rst b/docs/de/developer/api.rst
deleted file mode 100644
index 7a18afde..00000000
--- a/docs/de/developer/api.rst
+++ /dev/null
@@ -1,272 +0,0 @@
1API Dokumentation
2=================
3
4Dank dieser Dokumentation werden wir sehen, wie wir mit der wallabag API interagieren.
5
6Voraussetzungen
7---------------
8
9* wallabag frisch (oder nicht) installiert auf http://localhost:8000
10* ``httpie`` installiert auf deinem Computer (`siehe Projektwebsite <https://github.com/jkbrzt/httpie>`__). Beachte, dass du die Kommandos auch mit curl oder wget nutzen kannst.
11* alle API Methoden sind hier dokumentiert http://localhost:8000/api/doc
12
13Einen neuen API Client erstellen
14--------------------------------
15
16In deinem wallabag Account, kannst du einen neuen API Client unter dieser URL http://localhost:8000/developer/client/create erstellen.
17
18Gib dazu nur die Umleitungs-URL deiner Appliaktion an und erstelle deinen Client. Wenn deine Applikation eine Desktopapplikation ist, trage die URL, die dir am besten passt, ein.
19
20Du bekommst Informationen wie diese:
21
22::
23
24 Client ID:
25
26 1_3o53gl30vhgk0c8ks4cocww08o84448osgo40wgw4gwkoo8skc
27
28 Client secret:
29
30 636ocbqo978ckw0gsw4gcwwocg8044sco0w8w84cws48ggogs4
31
32
33Einen Aktualisierungstoken erhalten
34-----------------------------------
35
36Für jeden API Aufruf brauchst du einen Token. Lass uns einen erstellen mit diesem Kommando (ersetze ``client_id``, ``client_secret``, ``username`` und ``password`` mit ihren Werten):
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
47Du bekommst folgendes zurück:
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
70Wir werden mit dem ``access_token`` Wert in unseren nächsten Aufrufen arbeiten.
71
72cURL Beispiel:
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
78Existierende Einträge erhalten
79------------------------------
80
81Dokumentation für diese Methode: http://localhost:8000/api/doc#get--api-entries.{_format}
82
83Da wir auf einer neuen wallabag Installation arbeiten, bekommen wir keine Ergebnisse mit diesem Kommando:
84
85::
86
87 http GET http://localhost:8000/api/entries.json \
88 "Authorization:Bearer ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
89
90gibt zurück:
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
127Das Array ``items`` ist leer.
128
129cURL Beispiel:
130
131::
132
133 curl --get "https://localhost:8000/api/entries.html?access_token=ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
134
135Deinen ersten Eintrag hinzufügen
136--------------------------------
137
138Dokumentation für diese Methode: 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
146gibt zurück:
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
187Wenn du jetzt das vorherige Kommando (siehe **Existierende Einträge erhalten**), wirst du Daten erhalten.
188
189cURL Beispiel:
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
195Eintrag löschen
196-----------------
197
198Dokumentation für diese Methode: 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
205gibt zurück:
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
246Und wenn du die existierenden Einträge nun listen willst (siehe **Existierende Einträge erhalten**), ist das Array wieder leer.
247
248cURL Beispiel:
249
250::
251
252 curl --request DELETE "https://localhost:8000/api/entries/1.html?access_token=ZGJmNTA2MDdmYTdmNWFiZjcxOWY3MWYyYzkyZDdlNWIzOTU4NWY3NTU1MDFjOTdhMTk2MGI3YjY1ZmI2NzM5MA"
253
254Andere Methoden
255---------------
256
257Wir werden nicht für jede API Methode Beispiele schreiben.
258
259Wirf einen Blick in die Liste http://localhost:8000/api/doc, um alle Methode kennenzulernen.
260
261
262Drittanbieter Ressourcen
263------------------------
264
265Einige Applikationen oder Bibliotheken nutzen unsere API. Hier ist eine nicht abschließende Aufzählung von ihnen:
266
267- `Java wrapper for the wallabag API <https://github.com/di72nn/wallabag-api-wrapper>`_ von Dmitriy Bogdanov.
268- `.NET library for the wallabag v2 API <https://github.com/jlnostr/wallabag-api>`_ von Julian Oster.
269- `Python API for wallabag <https://github.com/foxmask/wallabag_api>`_ von FoxMaSk, für sein Projekt `Trigger Happy <https://blog.trigger-happy.eu/>`_.
270- `A plugin <https://github.com/joshp23/ttrss-to-wallabag-v2>`_ entworfen für `Tiny Tiny RSS <https://tt-rss.org/gitlab/fox/tt-rss/wikis/home>`_, das die wallabag v2 API nutzt. Von Josh Panter.
271- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ von Strubbl, für seine Projekte `wallabag-stats Graph <https://github.com/Strubbl/wallabag-stats>`_ und das Kommandozeilentool `wallabag-add-article <https://github.com/Strubbl/wallabag-add-article>`_.
272- Tool, um automatisiert wallabag Artikel auf den lokalen PC oder ebook reader zu laden `wallabako <https://gitlab.com/anarcat/wallabako>`_ von anarcat.
diff --git a/docs/de/developer/asynchronous.rst b/docs/de/developer/asynchronous.rst
deleted file mode 100644
index 742dd3e5..00000000
--- a/docs/de/developer/asynchronous.rst
+++ /dev/null
@@ -1,159 +0,0 @@
1Asynchrone Aufgaben
2===================
3
4Um große asynchrone Aufgaben zu starten (etwa für große Importe), können wir RabbitMQ oder Redis nutzen.
5
6Installation von RabbitMQ für asynchrone Aufgaben
7-------------------------------------------------
8
9Voraussetzungen
10^^^^^^^^^^^^^^^
11
12Du musst RabbitMQ auf deinem Server installiert haben.
13
14Installation
15^^^^^^^^^^^^
16
17.. code:: bash
18
19 wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
20 apt-key add rabbitmq-signing-key-public.asc
21 apt-get update
22 apt-get install rabbitmq-server
23
24Konfiguration und Start
25^^^^^^^^^^^^^^^^^^^^^^^
26
27.. code:: bash
28
29 rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
30 rabbitmq-server -detached
31
32RabbitMQ stoppen
33^^^^^^^^^^^^^^^^
34
35.. code:: bash
36
37 rabbitmqctl stop
38
39RabbitMQ für wallabag konfigurieren
40^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
41
42Bearbeite deine ``app/config/parameters.yml``-Datei, um die RabbitMQ-Parameter zu ändern. Die Standardwerte sollten in Ordnung sein:
43
44.. code:: yaml
45
46 rabbitmq_host: localhost
47 rabbitmq_port: 5672
48 rabbitmq_user: guest
49 rabbitmq_password: guest
50 rabbitmq_prefetch_count: 10 # lesen http://www.rabbitmq.com/consumer-prefetch.html
51
52RabbitMQ in wallabag aktivieren
53^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
54
55In den internen Einstellungen, aktiviere RabbitMQ im Import-Abschnitt mit dem Wert 1.
56
57Starte den RabbitMQ-Consumer
58^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59
60Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
61
62.. code:: bash
63
64 # für den Pocket-Import
65 bin/console rabbitmq:consumer -e=prod import_pocket -w
66
67 # für den Readability-Import
68 bin/console rabbitmq:consumer -e=prod import_readability -w
69
70 # für den Instapaper-Import
71 bin/console rabbitmq:consumer -e=prod import_instapaper -w
72
73 # für den wallabag v1-Import
74 bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
75
76 # für den wallabag v2-Import
77 bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
78
79 # für den Firefox-Import
80 bin/console rabbitmq:consumer -e=prod import_firefox -w
81
82 # für den Chrome-Import
83 bin/console rabbitmq:consumer -e=prod import_chrome -w
84
85Redis für asynchrone Aufgaben installieren
86------------------------------------------
87
88Um große asynchrone Aufgaben zu starten (etwa für große Importe), können wir auch Redis nutzen.
89
90Voraussetzungen
91^^^^^^^^^^^^^^^
92
93Du musst Redis auf deinem Server installiert haben.
94
95Installation
96^^^^^^^^^^^^
97
98.. code:: bash
99
100 apt-get install redis-server
101
102Start
103^^^^^
104
105Der Server kann bereits nach der Installation laufen, falls nicht, kannst du ihn wie folgt starten:
106
107.. code:: bash
108
109 redis-server
110
111
112Redis für wallabag konfigurieren
113^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
114
115Bearbeite deine ``app/config/parameters.yml``-Datei, um die Redis-Parameter zu ändern. Die Standardwerte sollten in Ordnung sein:
116
117.. code:: yaml
118
119 redis_host: localhost
120 redis_port: 6379
121
122Redis in wallabag aktivieren
123^^^^^^^^^^^^^^^^^^^^^^^^^^^^
124
125In den internen Einstellungen, aktiviere Redis im Import-Abschnitt mit dem Wert 1.
126
127Starten des Redis-Consumer
128^^^^^^^^^^^^^^^^^^^^^^^^^^
129
130Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
131
132.. code:: bash
133
134 # für den Pocket-Import
135 bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
136
137 # für den Readability-Import
138 bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
139
140 # für den Instapaper-Import
141 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
142
143 # für den wallabag v1-Import
144 bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
145
146 # für den wallabag v2-Import
147 bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
148
149 # für den Firefox-Import
150 bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
151
152 # für den Chrome-Import
153 bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log
154
155Wenn du den Import nur für einige Artikel nutzen willst, kannst du die Nummer festlegen (hier: 12) und der Consumer wird nach dem zwölften Artikel aufhören:
156
157.. code:: bash
158
159 bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12
diff --git a/docs/de/developer/docker.rst b/docs/de/developer/docker.rst
deleted file mode 100644
index 9948fe8c..00000000
--- a/docs/de/developer/docker.rst
+++ /dev/null
@@ -1,57 +0,0 @@
1Lasse wallabag in docker-compose laufen
2=======================================
3
4Um deine eigene Entwicklungsinstanz von wallabag laufen zu lassen,
5möchtest du vielleicht die vorkonfigurierten docker compose Dateien
6nutzen.
7
8Voraussetzungen
9---------------
10
11Stelle sicher `Docker
12<https://docs.docker.com/installation/ubuntulinux/>`__ und `Docker
13Compose <https://docs.docker.com/compose/install/>`__ auf deinem
14System verfügbar und aktuell zu haben.
15
16Wechsel des DBMS
17----------------
18
19Standardmäßig startet wallabag mit einer SQLite Datenbank.
20Da wallabag Unterstützung für Postgresql und MySQL bietet, gibt es
21auch docker Container für diese.
22
23In der ``docker-compose.yml`` kommentierst du für das gewählte DBMS
24aus:
25
26- die Container Definition (``postgres`` oder ``mariadb`` root
27 Level Block)
28- den Container Link in dem ``php`` Container
29- die Container Umgebungsdatei in dem ``php`` Container
30
31Um mit Symfony Kommandos auf deinem Host auszuführen (wie z.B.
32``wallabag:install``), sollst du außerdem:
33
34- die richtige Umgebungsdatei auf deiner Kommandozeile einlesen,
35 sodass Variablen wie ``SYMFONY__ENV__DATABASE_HOST`` existieren
36- eine Zeile ``127.0.0.1 rdbms`` in deiner ``hosts`` Datei auf dem
37 System erstellen
38
39wallabag laufen lassen
40----------------------
41
42#. Forke und klone das Projekt
43#. Bearbeite ``app/config/parameters.yml`` um ``database_*``
44 Eigenschaften mit den kommentierten zu ersetzen (mit Werten
45 mit ``env.`` Präfix)
46#. ``composer install`` die Projektabhängigkeiten
47#. ``php bin/console wallabag:install``, um das Schema zu erstellen
48#. ``docker-compose up`` um die Container laufen zu lassen
49#. Schließlich öffne http://localhost:8080/, um dein frisch
50 installiertes wallabag zu finden.
51
52In den verschiedenen Schritten wirst du vielleicht in verschiendene
53Probleme laufen wie UNIX Berechtigungsprobleme, falschen Pfaden im
54generierten Cache, etc.…
55Operationen wie das Löschen der Cachedateien oder das Ändern der
56Dateibesitzer können öfter gebraucht werden, darum habe keine Angst
57sie anzupassen.
diff --git a/docs/de/developer/documentation.rst b/docs/de/developer/documentation.rst
deleted file mode 100644
index 41e19363..00000000
--- a/docs/de/developer/documentation.rst
+++ /dev/null
@@ -1,10 +0,0 @@
1Wirke an dieser Dokumentation mit
2=================================
3
4Quellen der Dokumentation sind hier zu finden https://github.com/wallabag/wallabag/tree/master/docs
5
6Wir nutzen `ReadTheDocs <https://readthedocs.org>`__, um sie zu generieren.
7
8Seiten werden in `reStructuredText <https://de.wikipedia.org/wiki/ReStructuredText>`__ geschrieben. Du kannst Onlinetools wie http://rst.aaroniles.net/ oder http://rst.ninjs.org/ nutzen, um eine Vorschau deiner Artikel zu betrachten.
9
10Wenn du eine neue Seite erstellst, vergiss nicht die `index.rst <https://raw.githubusercontent.com/wallabag/wallabag/master/docs/en/index.rst>`__ zu bearbeiten, um dort einen Link für die Seitenleiste hinzuzufügen.
diff --git a/docs/de/developer/paywall.rst b/docs/de/developer/paywall.rst
deleted file mode 100644
index 365027b4..00000000
--- a/docs/de/developer/paywall.rst
+++ /dev/null
@@ -1,56 +0,0 @@
1Articles behind a paywall
2=========================
3
4wallabag can fetch articles from websites which use a paywall system.
5
6Enable paywall authentication
7-----------------------------
8
9In internal settings, in the **Article** section, enable authentication for websites with paywall (with the value 1).
10
11Configure credentials in wallabag
12---------------------------------
13
14Edit your ``app/config/parameters.yml`` file to edit credentials for each website with paywall. Here is an example for some french websites:
15
16.. code:: yaml
17
18 sites_credentials:
19 mediapart.fr: {username: "myMediapartLogin", password: "mypassword"}
20 arretsurimages.net: {username: "myASILogin", password: "mypassword"}
21
22.. note::
23
24 These credentials will be shared between each user of your wallabag instance.
25
26Parsing configuration files
27---------------------------
28
29.. note::
30
31 Read `this part of the documentation <http://doc.wallabag.org/en/master/user/errors_during_fetching.html>`_ to understand the configuration files.
32
33Each parsing configuration file needs to be improved by adding ``requires_login``, ``login_uri``,
34``login_username_field``, ``login_password_field`` and ``not_logged_in_xpath``.
35
36Be careful, the login form must be in the page content when wallabag loads it. It's impossible for wallabag to be authenticated
37on a website where the login form is loaded after the page (by ajax for example).
38
39``login_uri`` is the action URL of the form (``action`` attribute in the form).
40``login_username_field`` is the ``name`` attribute of the login field.
41``login_password_field`` is the ``name`` attribute of the password field.
42
43For example:
44
45.. code::
46
47 title://div[@id="titrage-contenu"]/h1[@class="title"]
48 body: //div[@class="contenu-html"]/div[@class="page-pane"]
49
50 requires_login: yes
51
52 login_uri: http://www.arretsurimages.net/forum/login.php
53 login_username_field: username
54 login_password_field: password
55
56 not_logged_in_xpath: //body[@class="not-logged-in"]
diff --git a/docs/de/developer/testsuite.rst b/docs/de/developer/testsuite.rst
deleted file mode 100644
index b2b16cdc..00000000
--- a/docs/de/developer/testsuite.rst
+++ /dev/null
@@ -1,10 +0,0 @@
1Testsuite
2=========
3
4To ensure wallabag development quality, we wrote tests with `PHPUnit <https://phpunit.de>`_.
5
6If you contribute to the project (by translating the application, by fixing bugs or by adding a new feature), please write your own tests.
7
8To launch wallabag testsuite, you need to install `ant <http://ant.apache.org>`_.
9
10Then, execute this command ``make test``.
diff --git a/docs/de/developer/translate.rst b/docs/de/developer/translate.rst
deleted file mode 100644
index 10544e31..00000000
--- a/docs/de/developer/translate.rst
+++ /dev/null
@@ -1,57 +0,0 @@
1Übersetze wallabag
2==================
3
4wallabag Webapplikation
5-----------------------
6
7Übersetzungsdateien
8~~~~~~~~~~~~~~~~~~~
9
10.. note::
11
12 Da wallabag hauptsächlich von einem französischem Team entwickelt wird, betrachte
13 die französische Übersetzung als die aktuellste und kopiere sie, um deine eigene Übersetzung zu starten.
14
15Du kannst die Übersetzungsdateien hier finden: https://github.com/wallabag/wallabag/tree/master/src/Wallabag/CoreBundle/Resources/translations.
16
17Du musst die ``messages.CODE.yml`` und ``validators.CODE.yml`` erstellen, wobei CODE
18der ISO 639-1 Code deiner Sprache ist (`siehe Wikipedia <https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes>`__).
19
20Andere Dateien zum Übersetzen:
21
22- https://github.com/wallabag/wallabag/tree/master/app/Resources/CraueConfigBundle/translations.
23- https://github.com/wallabag/wallabag/tree/master/src/Wallabag/UserBundle/Resources/translations.
24
25Du musst die ``THE_TRANSLATION_FILE.CODE.yml`` Dateien erstellen.
26
27Konfigurationsdatei
28~~~~~~~~~~~~~~~~~~~
29
30Du musst die `app/config/config.yml <https://github.com/wallabag/wallabag/blob/master/app/config/config.yml>`__ bearbeiten,
31um deine Sprache auf der Konfigurationsseite in wallabag anzuzeigen (um Nutzern zu erlauben zu dieser neuen Übersetzung zu wechseln).
32
33Unter dem Abschnitt ``wallabag_core.languages`` musst du eine neue Zeile mit deiner Übersetzung hinzufügen. Zum Beispiel:
34
35::
36
37 wallabag_core:
38 ...
39 languages:
40 en: 'English'
41 fr: 'Français'
42
43
44Für die erste Spalte (``en``, ``fr``, etc.) musst du den ISO 639-1 Code deiner Sprache hinzufügen (siehe oben).
45
46Für die zweite Spalte trägst du den Namen deiner Sprache ein. Nur den.
47
48wallabag Dokumentation
49----------------------
50
51.. note::
52
53 Im Gegensatz zur Webapplikation ist die Hauptsprache für die Dokumentation Englisch.
54
55Documentationsdateien sind hier gespeichert: https://github.com/wallabag/wallabag/tree/master/docs
56
57Du musst die Ordnerstruktur des Ordners ``en`` beachten, wenn du deine eigene Übersetzung startest.
diff --git a/docs/de/index.rst b/docs/de/index.rst
deleted file mode 100644
index 6e725fbe..00000000
--- a/docs/de/index.rst
+++ /dev/null
@@ -1,53 +0,0 @@
1wallabag Dokumentation
2======================
3
4.. image:: ../img/wallabag.png
5 :alt: wallabag Logo
6 :align: center
7
8**wallabag** ist eine Read-it-later Applikation: es speichert Websites,
9indem es nur den Inhalt behält. Elemente wie Navigation oder Werbung werden gelöscht.
10
11Die Hauptdokumentation für diese Applikation ist in einigen Abschnitten organisiert:
12
13* :ref:`user-docs`
14* :ref:`dev-docs`
15
16Die Dokumentation ist in anderen Sprachen verfügbar :
17
18* `Documentation in english <http://doc.wallabag.org/en/master/>`_
19* `Documentation en français <http://doc.wallabag.org/fr/master/>`_
20
21.. _user-docs:
22
23.. toctree::
24 :maxdepth: 2
25 :caption: Nutzerdokumentation
26
27 user/installation
28 user/upgrade
29 user/configuration
30 user/import
31 user/create_account
32 user/articles
33 user/errors_during_fetching
34 user/filters
35 user/tags
36 user/configuring_mobile
37 user/android
38 user/parameters
39 user/backup
40 user/faq
41
42.. _dev-docs:
43
44.. toctree::
45 :maxdepth: 2
46 :caption: Entwicklerdokumentation
47
48 developer/api
49 developer/docker
50 developer/paywall
51 developer/documentation
52 developer/translate
53 developer/asynchronous
diff --git a/docs/de/requirements.txt b/docs/de/requirements.txt
deleted file mode 100644
index 06fc8973..00000000
--- a/docs/de/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/de/user/android.rst b/docs/de/user/android.rst
deleted file mode 100644
index 31509438..00000000
--- a/docs/de/user/android.rst
+++ /dev/null
@@ -1,102 +0,0 @@
1Android App
2===========
3
4
5Zweck dieses Dokuments
6----------------------
7
8Dieses Dokument beschreibt wie du deine Android App einrichtest, damit sie mit deiner Wallabaginstanz zusammenarbeitet. Es gibt hierbei keinen Unterschied im Vorgang - egal ob du Wallabag v1 oder v2 einsetzt.
9
10
11Schritte, um dein App zu einzurichten
12-------------------------------------
13
14Wenn du das erste Mal die App startest, siehst du den Willkommensbildschirm, wo du angewiesen wirst zunächst deine App mit deiner Wallabaginstanz einzurichten.
15
16.. image:: ../../img/user/android_welcome_screen.de.png
17 :alt: Willkommensbildschirm
18 :align: center
19
20Bestätige nur diese Nachricht und du wirst zum Einstellungsbildschirm weitergeleitet.
21
22.. image:: ../../img/user/android_configuration_screen.de.png
23 :alt: Einstellungsbildschirm
24 :align: center
25
26Trage deine Wallabagdaten ein. Du musst deine Wallabagadresse eintragen. **Es ist wichtig, dass die URL nicht mit einem Schrägstrich endet.** Füge auch deine Wallabagzugangsdaten in das Nutzer- und Passwortfeld ein.
27
28.. image:: ../../img/user/android_configuration_filled_in.de.png
29 :alt: Eingetragene Einstellungen
30 :align: center
31
32Nachdem du deine Daten eingetragen hast, drücke den Button Verbindung testen und warte auf das Fertigstellen des Tests.
33
34.. image:: ../../img/user/android_configuration_connection_test.de.png
35 :alt: Verbindungstest mit deinen Wallabagdaten
36 :align: center
37
38Der Verbindungstest sollte mit Erfolg ausgehen. Falls nicht, musst du zunächst deine Daten korrigieren bevor du zum nächsten Schritt gehst.
39
40.. image:: ../../img/user/android_configuration_connection_test_success.de.png
41 :alt: Verbindungstest war erfolgreich
42 :align: center
43
44Nach dem Verbindungstest erfolgreich war, kannst du den Button zum Feedzugangsdaten abholen drücken. Die App versucht nun sich bei deiner Wallabaginstanz einzuloggen und die Nutzer ID und den dazugehörigen Token für die Feeds zu laden.
45
46.. image:: ../../img/user/android_configuration_get_feed_credentials.de.png
47 :alt: Feedzugangsdaten abholen
48 :align: center
49
50Wenn der Prozess des Abholens deiner Feedzugangsdaten erfolgreich beendet wurde, siehst du eine Toastnachricht, dass die User ID und der Token automatisch in das Formular eingetragen wurden.
51
52.. image:: ../../img/user/android_configuration_feed_credentials_automatically_filled_in.de.png
53 :alt: Feedzugangsdaten erfolgreich abgeholt
54 :align: center
55
56Jetzt scrollst du bis zum unteren Rand des Einstellungsbildschirms. Natürlich kannst du die Einstellungen dort deinen Wünschen anpassen. Schließe die Einrichtung mit dem Drücken des Speicherbuttons ab.
57
58.. image:: ../../img/user/android_configuration_scroll_bottom.de.png
59 :alt: unterer Rand des Einstellungsbildschirms
60 :align: center
61
62Nachdem du den Speicherbutton gedrückt hast, kommst du in den folgenden Bildschirm. Die App schlägt vor, eine initiale Synchronisation der Artikelfeeds durchzuführen. Hier ist es empfohlen, dies zu bestätigen und Ja zu drücken.
63
64.. image:: ../../img/user/android_configuration_saved_feed_update.de.png
65 :alt: Einstellung erstmals gespeichert
66 :align: center
67
68Schließlich nach der ersten erfolgreichen Synchronisation, wird dir die Liste der ungelesenen Artikel präsentiert.
69
70.. image:: ../../img/user/android_unread_feed_synced.de.png
71 :alt: Gefüllte Artikellist da Feeds erfolgreich synchronisiert sind
72 :align: center
73
74
75
76Bekannte Limitierungen
77---------------------
78
79Zwei-Faktor-Authentifizierung (2FA)
80~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
81
82Zur Zeit unterstützt die App keine Zwei-Faktor Authentifizierung. Du solltest sie deaktivieren damit die App funktioniert.
83
84
85Begrenzte Anzahl Artikel mit Wallabag v2
86~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
87
88In deiner Wallabaginstanz kannst du einstellen, wie viele Artikel Teil deiner RSS Feeds sind. Diese Option existierte in Wallabag v1 nicht, wo immer alle Artikel Teil des Feeds waren. Also wenn du die Anzahl der Artikel, die in der App angezeigt werden sollen, größer einstellst als die Anzahl Artikel in deinem Feed, wirst du nur die Anzahl an Artikel deines Feeds sehen.
89
90
91SSL/TLS Verschlüsselung
92~~~~~~~~~~~~~~~~~~~~~~~
93
94Wenn du deine Wallabaginstanz per HTTPS erreichen kannst, solltest du das so konfigurieren. Besonders dann, wenn deine HTTP URL nach HTTPS umleitet. Im Moment kann die App mit dieser Weiterleitung nicht korrekt umgehen.
95
96
97Referenzen
98----------
99
100- `Quellcode der Android-App <https://github.com/wallabag/android-app>`_
101- `Android-App auf F-Droid <https://f-droid.org/repository/browse/?fdfilter=wallabag&fdid=fr.gaulupeau.apps.InThePoche>`_
102- `Android-App auf Google Play <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_ \ No newline at end of file
diff --git a/docs/de/user/articles.rst b/docs/de/user/articles.rst
deleted file mode 100644
index b6893a2c..00000000
--- a/docs/de/user/articles.rst
+++ /dev/null
@@ -1,113 +0,0 @@
1Artikel
2=======
3
4Speichere deinen ersten Artikel
5-------------------------------
6
7Die Hauptzweck von wallabag ist es, Artikel aus dem Web zu speichern. Es gibt viele Wege, dieses Ziel zu erreichen.
8Wenn du denkst, dass ein Artikel falsch angezeigt wird, kannst du `diese Dokumentation lesen <http://doc.wallabag.org/de/master/user/errors_during_fetching.html>`_.
9
10Über ein Bookmarklet
11^^^^^^^^^^^^^^^^^^^^
12
13Auf der ``Howto``-Seite hast du einen ``Bookmarklet``-Tab. Ziehe das ``bag it!`` in die Lesezeichenleiste deines Browsers.
14Nun kannst du jedes Mal, wenn du einen Artikel speichern willst, auf den ``bag it!``-Link klicken, dann ist der Artikel gespeichert.
15
16Der klassische Weg
17^^^^^^^^^^^^^^^^^^
18
19In der oberen Leiste deines Fensters hast du auf der rechten Seite drei Symbole. Mit dem ersten Symbole, einem Plus-Zeichen, kannst du auf einfache Weise einen neuen Artikel speichern.
20
21.. image:: ../../img/user/topbar.png
22 :alt: Top bar
23 :align: center
24
25Klicke darauf, um ein neues Feld anzuzeigen, füge die Artikel-URL ein und drücke Enter. Dann wird der Artikel gespeichert.
26
27Über ein Browser-Addon
28^^^^^^^^^^^^^^^^^^^^^^
29
30Firefox
31"""""""
32
33Du kannst das `Firefox-Addon hier <https://addons.mozilla.org/firefox/addon/wallabagger/> herunterladen`_.
34
35Chrome
36""""""
37
38Du kannst das `Chrome-Addon hier <https://chrome.google.com/webstore/detail/wallabagger/gbmgphmejlcoihgedabhgjdkcahacjlj?hl=fr> herunterladen`_.
39
40Über das Smartphone
41^^^^^^^^^^^^^^^^^^^
42
43Android
44"""""""
45
46Du kannst die `Android-App hier <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_ oder auf `F-Droid <https://f-droid.org/repository/browse/?fdid=fr.gaulupeau.apps.InThePoche>`_ herunterladen.
47
48Windows 10 in general
49"""""""""""""""""""""
50
51Du kannst die `Windows-App hier <https://www.microsoft.com/store/apps/9nblggh5x3p6> herunterladen`_.
52
53Artikel herunterladen
54---------------------
55
56Du kannst jeden Artikel in verschiedenen Formaten herunterladen: ePUB, MOBI, PDF, XML, JSON, CSV.
57
58Klicke in der Artikelansicht auf dieses Symbol in der Seitenleiste:
59
60.. image:: ../../img/user/download_article.png
61 :alt: Artikel herunterladen
62 :align: center
63
64Du kannst sogar eine ganze Kategorie (Ungelesen, Favoriten, Archiv) in diesen Formaten herunterladen:
65Beispielsweise kannst du auf der **Ungelesen**-Ansicht auf dieses Symbol in der oberen Leiste klicken:
66
67.. image:: ../../img/user/download_articles.png
68 :alt: Artikel herunterladen
69 :align: center
70
71Artikel teilen
72--------------
73
74Wenn du einen Artikel liest, kannst du ihn auch teilen. Klicke dazu einfach auf den Teilen-Button:
75
76.. image:: ../../img/user/share.png
77 :alt: Artikel teilen
78 :align: center
79
80Nun kannst du den Artikel teilen:
81
82- über eine öffentliche URL (es wird eine reduzierte Ansicht des Artikels zurückgegeben)
83- über einen Tweet
84- in deine Shaarli
85- in deine Scuttle
86- mit einem Beitrag auf Diaspora*
87- an Carrot
88- mit einer E-Mail
89
90Artikel-Anmerkungen
91-------------------
92
93In jedem Artikel, den du liest, kannst du Anmerkungen hinzufügen. Es ist einfacher mit ein paar Bilder erklärt.
94
95Wähle den Teil des Artikels aus, den du kommentieren willst und klicke auf den Bleistift:
96
97.. image:: ../../img/user/annotations_1.png
98 :alt: Wähle den Text
99 :align: center
100
101Schreibe deinen Kommentar:
102
103.. image:: ../../img/user/annotations_2.png
104 :alt: Schreibe deinen Kommentar
105 :align: center
106
107Der Text ist nun hervorgehoben und du kannst deine Anmerkung lesen, wenn du den Mauspfeil darüber fährst.
108
109.. image:: ../../img/user/annotations_3.png
110 :alt: lese deine Anmerkung
111 :align: center
112
113Du kannst so viele Anmerkungen erstellen wie du möchtest.
diff --git a/docs/de/user/backup.rst b/docs/de/user/backup.rst
deleted file mode 100644
index 521e17ad..00000000
--- a/docs/de/user/backup.rst
+++ /dev/null
@@ -1,25 +0,0 @@
1wallabag sichern
2================
3Da es manchmal vorkommen kann, dass dir ein Fehler mit deiner wallabag unterläuft und du Daten verlierst oder deine wallabag auf einen anderen Server verschieben willst, ist eine Sicherung der Daten sicher ratsam.
4Dieser Artikel beschreibt, was du für die Sicherung benötigst.
5
6Grundlegende Einstellungen
7--------------------------
8wallabag speichert grundlegende Parameter (etwa der SMTP-Server oder das Datenbank-Backend) in der Datei `app/config/parameters.yml`.
9
10Datenbank
11---------
12Da wallabag verschiedene Datenbank-Typen unterstützt, hängt der Weg der Sicherung von dem verwendeten Typ ab. Daher verweisen wir an dieser Stelle auf die entsprechenden Dokumentationen:
13
14Hier sind einige Beispiele:
15
16- MySQL: http://dev.mysql.com/doc/refman/5.7/en/backup-methods.html
17- PostgreSQL: https://www.postgresql.org/docs/current/static/backup.html
18
19SQLite
20~~~~~~
21Um die SQLite-Datenbank zu sichern, ist es lediglich notwendig, das Verzeichnis `data/db` aus dem wallabag-Installations-Ordner zu kopieren.
22
23Bilder
24------
25Die Bilder, die von wallabag empfangen worden, sind unter `web/assets/images` gespeichert (der Bilder-Speicher wird in wallabag 2.2 implementiert).
diff --git a/docs/de/user/configuration.rst b/docs/de/user/configuration.rst
deleted file mode 100644
index 06cae7cb..00000000
--- a/docs/de/user/configuration.rst
+++ /dev/null
@@ -1,131 +0,0 @@
1Konfiguration
2=============
3
4Nun, da du eingeloggt bist, ist es Zeit, deinen Account so zu konfigurieren,
5wie du möchtest.
6
7Klicke auf ``Konfiguration`` im Menü. Du hast fünf Karteireiter: ``Einstellungen``,
8``RSS``, ``Benutzer-Informationen``, ``Kennwort`` und ``Tagging-Regeln``.
9
10Einstellungen
11-------------
12
13Theme
14~~~~~
15
16wallabag ist anpassbar. Du kannst dein bevorzugtes Theme hier auswählen. Das Standardtheme
17ist ``Material``, es ist das Theme, dass in den Dokumentationsbildschirmfotos genutzt wird.
18
19Artikel pro Seite
20~~~~~~~~~~~~~~~~~
21
22Du kannst die Anzahl der dargestellten Artikel pro Seite ändern.
23
24Lesegeschwindigkeit
25~~~~~~~~~~~~~~~~~~~
26
27wallabag berechnet die Lesezeit für jeden Artikel. Du kannst hier definieren, dank dieser Liste, ob du
28ein schneller oder langsamer Leser bist. wallabag wird die Lesezeit für jeden Artikel neu berechnen.
29
30Wohin möchtest du weitergeleitet werden, nach dem ein Artikel als gelesen markiert wurde?
31~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32
33Jedes Mal, wenn du eine Aktion ausführst (nach dem Markieren eines Artikels als gelesen oder Favorit, nach dem Löschen eines Artikels oder dem Entfernen eines Tag von einem Eintrag), kannst du weitergeleitet werden:
34
35- zur Homepage
36- zur aktuellen Seite
37
38Sprache
39~~~~~~~
40
41Du kannst die Sprache von der wallabag Benutzeroberfläche ändern.
42
43RSS
44---
45
46wallabag stellt RSS Feeds für jeden Artikelstatus bereit: ungelesen, Favoriten und Archiv.
47
48Als erstes musst du einen persönlciehn Token erstellen: Klicke auf ``Token generieren``.
49Es ist möglich deinen Token zu ändern, indem du auf ``Token zurücksetzen`` klickst.
50
51Jetzt hast du drei Links, einen für jeden Status: Füge sie in deinem liebsten Feedreader hinzu.
52
53Du kannst auch definieren wie viele Artikel du in deinem RSS Feed (Standardwert: 50) haben willst.
54
55There is also a pagination available for these feeds. You can add ``?page=2`` to jump to the second page.
56The pagination follow `the RFC <https://tools.ietf.org/html/rfc5005#page-4>`_ about that, which means you'll find the ``next``, ``previous`` & ``last`` page link inside the `<channel>` tag of each RSS feed.
57
58Benutzer-Informationen
59----------------------
60
61Du kannst deinen Namen ändern, deine E-Mail-Adresse und die Zwei-Faktor-Authentifizierung aktivieren.
62
63Zwei-Faktor-Authentifizierung (2FA)
64~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
65
66 Die Zwei-Faktor-Authentifizierung (2FA) dient dem Identitätsnachweis eines Nutzers mittels der
67 Kombination zweier verschiedener und insbesondere unabhängiger Komponenten (Faktoren).
68
69 https://de.wikipedia.org/wiki/Zwei-Faktor-Authentifizierung
70
71**Warnung:** Das Aktivieren von 2FA über das Konfigurations-Interface ist nur möglich, wenn vorher in der `app/config/parameters.yml` die `twofactor_auth`-Eigenschaft auf `true` gesetzt wurde (nach der Konfiguration das Leeren des Cache mit `php bin/console cache:clear -e=prod` nicht vergessen).
72
73Wenn du 2FA aktivierst, erhälst du jedes Mal, wenn du dich bei wallabag einloggen willst, einen Code per
74Mail. Du musst den Code in das folgende Formular eingeben.
75
76.. image:: ../../img/user/2FA_form.png
77 :alt: Zwei-Faktor-Authentifizierung
78 :align: center
79
80Wenn du nicht jedes Mal, wenn du dich einloggen willst, einen Code zugesendet bekommen möchtest, kannst du
81die Checkbox ``Ich bin an einem persönlichen Computer`` anhaken: wallabag wird sich an dich für 15 Tage
82erinnern.
83
84Passwort
85--------
86
87Du kannst dein Passwort hier ändern (8 Zeichen Minimum).
88
89Tagging-Regeln
90--------------
91
92Wenn du automatisch einen Tag zu einem neuen Artikel zuweisen lassen möchtest, ist dieser Teil der
93Konfiguration, was du suchst.
94
95Was ist mit Tagging-Regeln gemeint?
96~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
97
98Dies sind Regeln, die von wallabag genutzt werden, um neue Artikel automatisch zu taggen
99Jedes Mal, wenn ein neuer Artikel hinzugefügt wird, werden alle Tagging-Regeln genutzt, um deine
100konfigurierten Tags hinzuzufügen, folglich um dir den Aufwand zu sparen, die Artikel manuell einzuteilen.
101
102Wie benutze ich sie?
103~~~~~~~~~~~~~~~~~~~~
104
105Nehmen wir an, du möchtest neuen Artikeln einen Tag *schnell gelesen*, wenn du die Lesezeit kleiner als
1063 Minuten ist.
107In diesem Fall solltest du in das Regelfeld "readingTime <= 3" eintragen und *schnell gelesen* in das Tags-Feld.
108Mehrere Tags können gleichzeitig hinzugefügt werden, wenn man sie mit einem Komma trennt:
109*schnell gelesen, Pflichtlektüre*.
110Komplexe Regeln können mit vordefinierten Operatoren geschrieben werden:
111Wenn *readingTime >= 5 AND domainName = "github.com"*, dann tagge als *lange zu lesen, github*.
112
113Welche Variablen und Operatoren kann ich zum Regeln schreiben nutzen?
114~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
115
116Die folgenden Variablen und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen (sei vorsichtig, denn bei einigen Werten musst du Anführungszeichen hinzufügen, z.B. ``language = "de"``):
117
118=========== ============================================== ========== ==========
119Variable Bedeutung Operator Bedeutung
120----------- ---------------------------------------------- ---------- ----------
121title Titel des Artikels <= Kleiner gleich als…
122url URL des Artikels < Kleiner als…
123isArchived Ob der Artikel archiviert ist oder nicht => Größer gleich als…
124isStarred Ob der Artikel favorisiert ist oder nicht > Größer als…
125content Inhalt des Eintrags = Gleich zu…
126language Sprache des Eintrags != Nicht gleich zu…
127mimetype MIME-Typ des Eintrags OR Eine Regel oder die andere
128readingTime Die geschätzte Lesezeit in Minuten AND Eine Regel und die andere
129domainName Der Domain-Name des Eintrags matches Testet, dass ein Feld einer Suche (unabhängig von Groß- und Kleinschreibung) übereinstimmt. Z.B.: title matches "Fußball"
130 notmatches
131=========== ============================================== ========== ==========
diff --git a/docs/de/user/configuring_mobile.rst b/docs/de/user/configuring_mobile.rst
deleted file mode 100644
index c80320c9..00000000
--- a/docs/de/user/configuring_mobile.rst
+++ /dev/null
@@ -1,12 +0,0 @@
1Konfiguration mobiler Apps für wallabag
2=======================================
3
4Schritte zum Konfigurieren der App
5----------------------------------
6
7- Als Erstes erstellst du einen *neuen Client* in dem Abschnitt ``API Client Management``. Der Name deiner App ist dabei nicht so wichtig wie die ``Client-ID`` und das ``Client-Secret``. Schreib diese zwei Werte auf.
8- Wenn du eine mobile App herunterlädst, wird sie dich nach der Server-Adresse deiner wallabag-Instanz fragen. Zum Beispiel ist es ``https://app.wallabag.it`` bei wallabag.it.
9- Sie wird dich auch nach den zuvor genannten ``Client-ID`` und ``Client-Secret`` fragen. Bitte trage diese in die Textfelder ein, wenn du danach gefragt wirst.
10- Zuletzt musst du deinen ``Benutzernamen`` und ``Passwort`` bereitstellen. Diese Zugangsdaten sind die gleichen, die du zum Login bei wallabag nutzt.
11
12Bitte schaue auch auf die `Android <android.html>`_ Seite und dort insbesondere den Abschnitt *Bekannte Limitierungen*.
diff --git a/docs/de/user/create_account.rst b/docs/de/user/create_account.rst
deleted file mode 100644
index 14a7d006..00000000
--- a/docs/de/user/create_account.rst
+++ /dev/null
@@ -1,41 +0,0 @@
1Account erstellen
2=================
3
4Registrierungsformular
5----------------------
6
7Klicke auf der Loginseite auf den ``Registrieren`` Button-
8
9.. image:: ../../img/user/registration_form.png
10 :alt: Registrierungsformular
11 :align: center
12
13Du musst das Formular ausfüllen. Bitte stelle sicher, dass du eine gültige
14E-Mail-Adresse eingibst, wir werden dir eine Aktivierungsmail schicken.
15
16.. image:: ../../img/user/sent_email.png
17 :alt: E-Mail wurde gesendet, um Account zu aktivieren
18 :align: center
19
20Überprüfge deinen Posteingang, du hast jetzt eine neue Mail mit einem Link wie diesen
21``http://wallabag/register/confirm/Ba19wokGovN-DdBQNfg4YgRkUQWRP4-k2g0Bk-hBTX4``.
22Klicke auf den Link, um deinen Account zu aktivieren.
23
24Dein Account ist nun aktiviert.
25
26.. image:: ../../img/user/activated_account.png
27 :alt: Willkommen!
28 :align: center
29
30Anmeldung
31---------
32
33Glückwunsch, dein Account ist nun aktiviert!
34Um dich auf wallabag anzumelden, fülle das Formular auf der Login-Seite aus.
35
36Wenn du auf einem persönlichen Computer bist und angemeldet bleiben möchtest,
37kannst du ein Häkchen nach ``angemeldet bleiben`` setzen, wallabag wird sich ein Jahr an dich erinnern.
38
39.. image:: ../../img/user/login_form.png
40 :alt: Login form
41 :align: center \ No newline at end of file
diff --git a/docs/de/user/errors_during_fetching.rst b/docs/de/user/errors_during_fetching.rst
deleted file mode 100644
index 29621559..00000000
--- a/docs/de/user/errors_during_fetching.rst
+++ /dev/null
@@ -1,28 +0,0 @@
1Fehler während des Artikelladens
2================================
3
4Warum schlägt das Laden eines Artikels fehl?
5--------------------------------------------
6
7Das kann verschiedene Ursachen haben:
8
9- Netzwerkprobleme
10- wallabag kann den Inhalt aufgrund der Websitestruktur nicht laden
11
12Wie kann ich helfen das zu beheben?
13-----------------------------------
14
15- `indem du uns eine Mail mit der URL des Artikels sendest <mailto:hello@wallabag.org>`_
16- indem du versuchst das Laden des Artikels durch Erstellen einer Datei für den Artikel
17 selbst zu beheben
18 Du kannst `dieses Tool <http://siteconfig.fivefilters.org/>`__ nutzen.
19
20Wie kann ich versuchen, einen Artikel erneut zu laden?
21------------------------------------------------------
22
23Wenn wallabag beim Laden eines Artikels fehlschlägt, kannst du auf den erneut laden Button
24klicken (der dritte in dem unteren Bild).
25
26.. image:: ../../img/user/refetch.png
27 :alt: Inhalt neu laden
28 :align: center
diff --git a/docs/de/user/faq.rst b/docs/de/user/faq.rst
deleted file mode 100644
index c14cb3ef..00000000
--- a/docs/de/user/faq.rst
+++ /dev/null
@@ -1,52 +0,0 @@
1Häufig gestellte Fragen
2==========================
3
4Während der Installation sehe ich den Fehler ``Error Output: sh: 1: @post-cmd: not found``
5------------------------------------------------------------------------------------------
6
7Es scheint, dass du ein Problem bei deiner ``composer`` Installation hast. Versuche es zu deinstallieren und neu zu installieren.
8
9`Lies die Dokumentation über composer, um zu erfahren wie es installiert wird
10<https://getcomposer.org/doc/00-intro.md>`__.
11
12Ich kann das Registrierungsformular nicht validieren
13----------------------------------------------------
14
15Stelle sicher, dass alle Felder ausgefüllt sind:
16
17* valide E-Mail-Adresse
18* das gleiche Passwort in zwei Feldern
19
20Ich erhalte meine Aktivierungsmail nicht
21----------------------------------------
22
23Bist du sicher, dass deine eingegebene E-Mail-Adresse korrekt war? Hast du deinen Spamordner überprüft?
24
25Wenn du dann immer noch nicht deine Aktivierungsmail siehst, stelle bitte sicher, dass du einen MTA
26korrekt installiert und eingerichtet hast. Prüfe, dass deine Firewallregel existiert, z.B. für firewalld:
27
28::
29 firewall-cmd --permanent --add-service=smtp
30 firewall-cmd --reload
31
32Schließlich, falls du SELinux aktiviert hast, setze folgende Regel:
33
34``setsebool -P httpd_can_sendmail 1``
35
36Wenn ich den Aktivierungslink klicke, bekomme ich die Nachricht ``Der Nutzer mit dem Bestätigungstoken "DtrOPfbQeVkWf6N" existiert nicht``
37------------------------------------------------------------------------------------------------------------------------------------------
38
39Du hast deinen Account schon aktiviert oder die URL der Aktivierungsmail ist falsch.
40
41Ich habe mein Passwort vergessen
42--------------------------------
43
44Du kannst dein Passwort zurücksetzen, indem du auf den Link ``Kennwort vergessen?`` auf der Loginseite klickst. Fülle dann das Formular mit deiner E-Mail-Adresse oder deinem Nutzernamen aus
45und du wirst eine E-Mail zum Passwort zurücksetzen erhalten.
46
47Ich erhalte den Fehler ``failed to load external entity``, wenn ich wallabag installiere
48----------------------------------------------------------------------------------------
49
50Wie `hier <https://github.com/wallabag/wallabag/issues/2529>`_ beschrieben, bearbeite bitte deine Datei ``web/app.php`` und füge ihr diese Zeile ``libxml_disable_entity_loader(false);`` in Zeile 5 hinzu.
51
52Dies ist ein Doctrine / PHP Fehler - nichts, woran wir etwas ändern können.
diff --git a/docs/de/user/filters.rst b/docs/de/user/filters.rst
deleted file mode 100644
index 94b82b24..00000000
--- a/docs/de/user/filters.rst
+++ /dev/null
@@ -1,54 +0,0 @@
1Filter
2======
3
4Um Artikel leichter zu erreichen, kannst du sie filtern.
5Klicke auf das dritte Symbol in der oberen Leiste.
6
7.. image:: ../../img/user/topbar.png
8 :alt: Obere Leiste
9 :align: center
10
11Alle diese Filter können kombiniert werden.
12
13.. image:: ../../img/user/filters.png
14 :alt: Kombiniere alle Filter
15 :align: center
16
17Status
18------
19
20Nutze die Checkboxen, um einen archivierten oder favorisierten Artikel zu finden.
21
22Vorschaubild
23---------------
24
25Hake diesen Filter an, wenn du Artikel mit einem Vorschaubild erhalten willst.
26
27Sprache
28-------
29
30wallabag (via graby) kann die Artikelsprache erkennen. Es ist einfach für dich, Artikel
31in einer bestimmten Sprache zu filtern.
32
33HTTP status
34-----------
35
36You can retrieve the articles by filtering by their HTTP status code: 200, 404, 500, etc.
37
38Lesezeit
39--------
40
41wallabag schätzt wieviel Zeit du brauchst, um einen Artikel zu lesen. Mit diesem Filter
42kannst du zum Beispiel Artikel mit einer Lesezeit zwischen 2 und 5 Minuten finden.
43
44Domainname
45----------
46
47Dank dieses Filters, kannst ud Artikel von der gleichen Domain finden.
48Zum Beispiel tippst du in diesem Feld ``bbc.co.uk``, um Artikel dieser Website zu finden.
49
50Erstellungsdatum
51----------------
52
53Wenn du Artikel speicherst, merkt sich wallabag das aktuelle Datum. So praktisch, um Aritkel, die
54zwischen dem 1. und 31. Januar geschrieben sind, zu finden.
diff --git a/docs/de/user/import.rst b/docs/de/user/import.rst
deleted file mode 100644
index b4e89c39..00000000
--- a/docs/de/user/import.rst
+++ /dev/null
@@ -1,152 +0,0 @@
1Migration von einem Drittanbieter
2=================================
3
4In wallabag 2.x kannst du Daten von folgenden Anbietern importieren:
5
6- Pocket <#id1>`_
7- Readability <#id2>`_
8- Instapaper <#id4>`_
9- wallabag 1.x <#id6>`_
10- wallabag 2.x <#id7>`_
11
12Wir haben zusätzlich `ein Skript für die Migration per Kommandozeile <#import-via-command-line-interface-cli>`_ geschrieben.
13
14Da Importe eine Menge Zeit in Anspruch nehmen können, haben wir auch ein asynchrones Aufgabensystem entwickelt. `Du kannst die Dokumentation hier lesen <http://doc.wallabag.org/de/master/developer/asynchronous.html>`_ (für Experten).
15
16Pocket
17------
18
19Erstelle eine neue Applikation in Pocket
20~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21
22Um deine Daten von Pocket zu importieren, nutzen wir die Pocket API. Du musst
23eine neue Applikation auf ihrer Entwicklerwebsite erstellen, um fortzufahren.
24
25* Erstelle eine neue Applikation `auf der Entwicklerwebsite <https://getpocket.com/developer/apps/new>`_
26* Fülle die erforderlichen Felder aus: Name, Beschreibung, Berechtigungen (nur **abrufen**), Plattform
27 (**web**), akzeptiere die Nutzungsbedingungen und reiche deine neue Applikation ein
28
29Pocket wird dir einen **Consumer Key** geben (z.B. `49961-985e4b92fe21fe4c78d682c1`).
30Du musst den ``pocket_consumer_key`` in dem Abschnitt ``Import`` in dem ``Interne Einstellungen`` Menü
31konfigurieren.
32
33Jetzt ist alles in Ordnung, um von Pocket zu migrieren.
34
35Importiere deine Daten in wallabag 2.x
36~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37
38Klicke auf den ``Importieren`` Link im Menü, auf ``Inhalte importieren`` in dem Pocketabschnitt und
39dann auf ``Verbinde mit Pocket und importieren Daten``.
40
41Du musst wallabag erlauben, mit deinem Pocketaccount zu interagieren.
42Deine Daten werden importiert. Datenimport kann ein sehr anspruchsvoller Prozess für deinen Server
43sein (wir müssen daran arbeiten, um diesen Import zu verbessern).
44
45Von Readability
46----------------
47
48Exportiere deine Readability Daten
49~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50
51Auf der Seite Tools (`https://www.readability.com/tools/ <https://www.readability.com/tools/>`_), klicke auf "Exportiere deine Daten" in dem Abschnitt "Daten Export". Du wirst eine E-Mail empfangen, um eine JSON Datei herunterladen zu können (Datei endet aber nicht auf .json).
52
53Importiere deine Daten in wallabag 2.x
54~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
56Klicke auf den ``Importieren`` Link im Menü, auf ``Importiere Inhalte`` in dem Readability Abschnitt und wähle dann deine JSON Datei aus und lade sie hoch.
57
58Deine Daten werden importiert. Der Datenimport can ein beanspruchender Prozess für deinen Server sein.
59
60Von Pinboard
61-------------
62
63Exportiere deine Pinboard Daten
64~~~~~~~~~~~~~~~~~~~~~~~~~
65
66Auf der Seite Backup (`https://pinboard.in/settings/backup <https://pinboard.in/settings/backup>`_), klicke auf "JSON" in dem Abschnitt "Lesezeichen". Eine JSON Datei wird heruntergeladen (z.B. ``pinboard_export``).
67
68Importiere deine Daten in wallabag 2.x
69~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70
71Klicke auf den ``Importieren`` Link im Menü, auf ``Importiere Inhalte`` in dem Pinboard Abschnitt und wähle dann deine JSON Datei aus und lade sie hoch.
72
73Deine Daten werden importiert. Der Datenimport can ein beanspruchender Prozess für deinen Server sein.
74
75Von Instapaper
76---------------
77
78Exportiere deine Instapaper Daten
79~~~~~~~~~~~~~~~~~~~~~~~~~~~~
80
81Auf der Seite Einstellungen (`https://www.instapaper.com/user <https://www.instapaper.com/user>`_), klicke auf "Download .CSV Datei" in dem Abschnitt "Export". Eine CSV Datei wird heruntergeladen (z.B. ``instapaper-export.csv``).
82
83Importiere deine Daten in wallabag 2.x
84~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
85
86Klicke auf den ``Importieren`` Link im Menü, auf ``Importiere Inhalte`` in dem Instapaper Abschnitt und wähle dann deine JSON Datei aus und lade sie hoch.
87
88Deine Daten werden importiert. Der Datenimport can ein beanspruchender Prozess für deinen Server sein.
89
90wallabag 1.x
91------------
92
93Wenn du in der Vergangenheit wallabag 1.x genutzt hast, musst du deine Daten exportieren, bevor du auf wallabag 2.x umsteigst, da sich viel an der Anwendung und der Datenbank geändert hast. In deiner alten wallabag-installation kannst du deine Daten exportieren, indem du die Konfigurationsseite auf der alten wallabag-Instanz öffnest.
94
95.. image:: ../../img/user/export_v1.png
96 :alt: Export aus wallabag 1.x
97 :align: center
98
99.. note::
100 Wenn du mehrere Accounts auf der gleichen wallabag-Instanz hast, muss jeder Nutzer seine Daten aus 1.x exportieren und in 2.x importieren.
101
102.. note::
103 Falls während des Exports oder des Imports Probleme auftreten sollten, scheue dich nicht, den `Support zu kontaktieren <http://gitter.im/wallabag/wallabag>`__.
104
105Wenn du dann die JSON-Datei mit deinen Einträgen heruntergeladen hast, kannst du `wallabag 2 über die Standard-Prozedur installieren <http://doc.wallabag.org/en/master/user/installation.html>`__.
106
107Nach dem Erstellen des Benutzeraccounts auf deiner neuen "wallabag 2.x"-Instanz, navigiere auf den Import-Bereich und wähle `Aus wallabag v1 importieren`. Wähle deine JSON-Datei und lade sie hoch.
108
109.. image:: ../../img/user/import_wallabagv1.png
110 :alt: Import aus wallabag v1
111 :align: center
112
113wallabag 2.x
114------------
115
116Gehe auf der alten wallabag-Instanz, die du vorher genutzt hast, auf `Alle Artikel` und exportiere diese dann als JSON.
117
118.. image:: ../../img/user/export_v2.png
119 :alt: Export aus wallabag v2
120 :align: center
121
122Nach dem Erstellen des Benutzeraccounts auf deiner neuen "wallabag 2.x"-Instanz, navigiere auf den Import-Bereich und wähle `Aus wallabag v2 importieren`. Wähle deine JSON-Datei und lade sie hoch.
123
124.. note::
125 Falls während des Exports oder des Imports Probleme auftreten sollten, scheue dich nicht, den `Support zu kontaktieren <http://gitter.im/wallabag/wallabag>`__.
126
127Import über die Kommandozeile (CLI)
128-----------------------------------
129
130Falls du auf deinem Server Zugriff auf die Kommandozeile hast, kannst du den folgenden Befehl ausführen, um deine Daten aus wallabag v1 zu importieren:
131
132::
133
134 bin/console wallabag:import 1 ~/Downloads/wallabag-export-1-2016-04-05.json --env=prod
135
136Bitte ersetze die Werte:
137
138* ``1`` ist die Benutzer-ID in der Datenbank (die ID des ersten Benutzers ist immer 1)
139* ``~/Downloads/wallabag-export-1-2016-04-05.json`` ist der Pfad zu deiner wallabag v1-Exportdatei
140
141Wenn du alle Artikel als gelesen markieren möchtest, kannst du die ``--markAsRead``-Option hinzufügen.
142
143Um eine wallabag 2.x-Datei zu importieren, musst du die Option ``--importer=v2`` hinzufügen.
144
145Als Ergebnis wirst du so etwas erhalten:
146
147::
148
149 Start : 05-04-2016 11:36:07 ---
150 403 imported
151 0 already saved
152 End : 05-04-2016 11:36:09 ---
diff --git a/docs/de/user/installation.rst b/docs/de/user/installation.rst
deleted file mode 100644
index 7dd489b1..00000000
--- a/docs/de/user/installation.rst
+++ /dev/null
@@ -1,349 +0,0 @@
1Installation von wallabag
2=========================
3
4Voraussetzungen
5---------------
6
7wallabag ist kompatibel mit **PHP >= 5.6**, inkl. PHP 7.
8
9.. note::
10
11 To install wallabag easily, we create a ``Makefile``, so you need to have the ``make`` tool.
12
13wallabag nutzt eine große Anzahl an Bibliotheken, um zu funktionieren. Diese Bibliotheken müssen mit einem Tool namens Composer installiert werden. Du musst es installieren sofern du es bisher noch nicht gemacht hast.
14
15Composer installieren:
16
17::
18
19 curl -s https://getcomposer.org/installer | php
20
21Du kannst eine spezifische Anleitung `hier <https://getcomposer.org/doc/00-intro.md>`__ finden.
22
23Du benötigst die folgenden Extensions damit wallabag funktioniert. Einige von diesen sind vielleicht schon in deiner Version von PHP aktiviert, somit musst du eventuell
24nicht alle folgenden Pakete installieren.
25
26- php-session
27- php-ctype
28- php-dom
29- php-hash
30- php-simplexml
31- php-json
32- php-gd
33- php-mbstring
34- php-xml
35- php-tidy
36- php-iconv
37- php-curl
38- php-gettext
39- php-tokenizer
40- php-bcmath
41
42wallabag nutzt PDO, um sich mit der Datenbank zu verbinden, darum benötigst du eines der folgenden Komponenten:
43
44- pdo_mysql
45- pdo_sqlite
46- pdo_pgsql
47
48und dessen dazugehörigen Datenbankserver.
49
50Installation
51------------
52
53Auf einem dedizierten Webserver (empfohlener Weg)
54~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
56Um wallabag selbst zu installieren, musst du die folgenden Kommandos ausführen:
57
58::
59
60 git clone https://github.com/wallabag/wallabag.git
61 cd wallabag && make install
62
63Um PHPs eingebauten Server zu starten und zu testen, ob alles korrekt installiert wurde, kannst du folgendes Kommando ausführen:
64
65::
66
67 make run
68
69und wallabag unter http://deineserverip:8000 erreichen.
70
71.. tip::
72
73 Um Parameter mit Umgebungsvariable zu definieren, musst du die Variable mit dem ``SYMFONY__`` Präfix setzen. Zum Beispiel ``SYMFONY__DATABASE_DRIVER``. Du kannst einen Blick die `Symfony Dokumentation <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__ werfen.
74
75Auf einem geteilten Webhosting
76~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77
78Wir stellen ein Paket inkl. aller Abhängigkeiten bereit.
79Die Standardkonfiguration nutzt SQLite für die Datenbank. Wenn du diese Einstellung ändern willst, ändere bitte ``app/config/parameters.yml``.
80
81Wir haben bereits einen Nutzer erstellt: Login und Passwort sind ``wallabag``.
82
83.. caution:: Mit diesem Paket überprüft wallabag nicht die von der Applikation gebrauchten Exentions (diese Tests werden während ``composer install`` durchgeführt wenn du einen dedizierten Webserver hast, siehe oben).
84
85Führe dieses Kommando aus, um das neueste Paket herunterzuladen und zu entpacken:
86
87.. code-block:: bash
88
89 wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
90
91Du findest die `md5 Hashsumme des neuesten Pakets auf unserer Website <https://static.wallabag.org/releases/>`_.
92
93Jetzt lies die Dokumentation, um einen Virtualhost zu erstellen, dann greife auf dein wallabag zu.
94Wenn du die Datenbankkonfiguration eingestellt hast, MySQL oder PostgreSQL zu nutzen, musst du einen Nutzer über das folgende Kommando erstellen ``php bin/console wallabag:install --env=prod``.
95
96Installation mit Docker
97~~~~~~~~~~~~~~~~~~~~~~~
98
99Wir stellen ein Docker Image zu Verfügung, um wallabag einfach zu installieren. Schaue in unser Repository in unserem `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__, um mehr Informationen zu erhalten.
100
101Kommando, um den Container zu starten
102^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
103
104.. code-block:: bash
105
106 docker pull wallabag/wallabag
107
108Cloudron Installation
109~~~~~~~~~~~~~~~~~~~~~~~~
110
111Cloudron bietet einfache Webapp Installation auf deinem Server, mit Fokus auf System Administrator Automatisierung und Updates.
112Ein Wallabag Paket ist direkt zur Installation durch den Cloudron Store verfügbar.
113
114`Installiere wallabag auf deinem Cloudron <https://cloudron.io/store/org.wallabag.cloudronapp.html>`__
115
116Virtualhosts
117------------
118
119Konfiguration von Apache
120~~~~~~~~~~~~~~~~~~~~~~~~
121
122Vergiss nicht, die *rewrite* mod von Apache zu aktivieren.
123
124.. code-block:: bash
125
126 a2enmod rewrite && systemctl reload apache2
127
128Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren und du willst PHP als Apache Modul nutzen, dann ist hier ein vhost für wallabag:
129
130::
131
132 <VirtualHost *:80>
133 ServerName domain.tld
134 ServerAlias www.domain.tld
135
136 DocumentRoot /var/www/wallabag/web
137 <Directory /var/www/wallabag/web>
138 AllowOverride None
139 Order Allow,Deny
140 Allow from All
141
142 <IfModule mod_rewrite.c>
143 Options -MultiViews
144 RewriteEngine On
145 RewriteCond %{REQUEST_FILENAME} !-f
146 RewriteRule ^(.*)$ app.php [QSA,L]
147 </IfModule>
148 </Directory>
149
150 # uncomment the following lines if you install assets as symlinks
151 # or run into problems when compiling LESS/Sass/CoffeScript assets
152 # <Directory /var/www/wallabag>
153 # Options FollowSymlinks
154 # </Directory>
155
156 # optionally disable the RewriteEngine for the asset directories
157 # which will allow apache to simply reply with a 404 when files are
158 # not found instead of passing the request into the full symfony stack
159 <Directory /var/www/wallabag/web/bundles>
160 <IfModule mod_rewrite.c>
161 RewriteEngine Off
162 </IfModule>
163 </Directory>
164 ErrorLog /var/log/apache2/wallabag_error.log
165 CustomLog /var/log/apache2/wallabag_access.log combined
166 </VirtualHost>
167
168Nach dem du Apache neugeladen oder neugestartet hast, solltest du nun wallabag unter http://domain.tld erreichen.
169
170Konfiguration von Nginx
171~~~~~~~~~~~~~~~~~~~~~~~
172
173Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren, dann ist hier ein Rezept für wallabag:
174
175::
176
177 server {
178 server_name domain.tld www.domain.tld;
179 root /var/www/wallabag/web;
180
181 location / {
182 # try to serve file directly, fallback to app.php
183 try_files $uri /app.php$is_args$args;
184 }
185 location ~ ^/app\.php(/|$) {
186 fastcgi_pass unix:/var/run/php5-fpm.sock;
187 fastcgi_split_path_info ^(.+\.php)(/.*)$;
188 include fastcgi_params;
189 # When you are using symlinks to link the document root to the
190 # current version of your application, you should pass the real
191 # application path instead of the path to the symlink to PHP
192 # FPM.
193 # Otherwise, PHP's OPcache may not properly detect changes to
194 # your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
195 # for more information).
196 fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
197 fastcgi_param DOCUMENT_ROOT $realpath_root;
198 # Prevents URIs that include the front controller. This will 404:
199 # http://domain.tld/app.php/some-path
200 # Remove the internal directive to allow URIs like this
201 internal;
202 }
203
204 # return 404 for all other php files not matching the front controller
205 # this prevents access to other php files you don't want to be accessible.
206 location ~ \.php$ {
207 return 404;
208 }
209
210 error_log /var/log/nginx/wallabag_error.log;
211 access_log /var/log/nginx/wallabag_access.log;
212 }
213
214Nach dem Neuladen oder Neustarten von nginx solltest du nun wallabag unter http://domain.tld erreichen.
215
216.. tip::
217
218 Wenn du eine große Datei in wallabag importieren willst, solltest du diese Zeile zu deiner nginx Konfiguration hinzufügen ``client_max_body_size XM; # allows file uploads up to X megabytes``.
219
220Konfiguration von lighttpd
221~~~~~~~~~~~~~~~~~~~~~~~~~~
222
223Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren, dann ist hier ein Rezept für wallabag (bearbeite deine ``lighttpd.conf`` und füge die Konfiguration dort ein):
224
225::
226
227 server.modules = (
228 "mod_fastcgi",
229 "mod_access",
230 "mod_alias",
231 "mod_compress",
232 "mod_redirect",
233 "mod_rewrite",
234 )
235 server.document-root = "/var/www/wallabag/web"
236 server.upload-dirs = ( "/var/cache/lighttpd/uploads" )
237 server.errorlog = "/var/log/lighttpd/error.log"
238 server.pid-file = "/var/run/lighttpd.pid"
239 server.username = "www-data"
240 server.groupname = "www-data"
241 server.port = 80
242 server.follow-symlink = "enable"
243 index-file.names = ( "index.php", "index.html", "index.lighttpd.html")
244 url.access-deny = ( "~", ".inc" )
245 static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
246 compress.cache-dir = "/var/cache/lighttpd/compress/"
247 compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" )
248 include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
249 include_shell "/usr/share/lighttpd/create-mime.assign.pl"
250 include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
251 dir-listing.activate = "disable"
252
253 url.rewrite-if-not-file = (
254 "^/([^?]*)(?:\?(.*))?" => "/app.php?$1&$2",
255 "^/([^?]*)" => "/app.php?=$1",
256 )
257
258Rechte, um das Projektverzeichnis zu betreten
259---------------------------------------------
260
261Testumgebung
262~~~~~~~~~~~~
263
264Wenn wir nur wallabag testen wollen, führen wir nur das Kommando ``php bin/console server:run --env=prod`` aus, um unsere wallabag Instanz zu starten und alles wird geschmeidig laufen, weil der Nutzer, der das Projekt gestartet hat, den aktuellen Ordner ohne Probleme betreten kann.
265
266Produktionsumgebung
267~~~~~~~~~~~~~~~~~~~
268
269Sobald wir Apache oder Nginx nutzen, um unsere wallabag Instanz zu erreichen, und nicht das Kommando ``php bin/console server:run --env=prod`` nutzen, sollten wir dafür sorgen, die Rechte vernünftig zu vergeben, um die Ordner des Projektes zu schützen.
270
271Um dies zu machen, muss der Ordner, bekannt als ``DocumentRoot`` (bei Apache) oder ``root`` (bei Nginx), von dem Apache-/Nginx-Nutzer zugänglich sein. Sein Name ist meist ``www-data``, ``apache`` oder ``nobody`` (abhängig vom genutzten Linuxsystem).
272
273Der Ordner ``/var/www/wallabag/web`` musst dem letztgenannten zugänglich sein. Aber dies könnte nicht genug sein, wenn wir nur auf diesen Ordner achten, weil wir eine leere Seite sehen könnten oder einen Fehler 500, wenn wir die Homepage des Projekt öffnen.
274
275Dies kommt daher, dass wir die gleichen Rechte dem Ordner ``/var/www/wallabag/var`` geben müssen, so wie wir es für den Ordner ``/var/www/wallabag/web`` gemacht haben. Somit beheben wir das Problem mit dem folgenden Kommando:
276
277.. code-block:: bash
278
279 chown -R www-data:www-data /var/www/wallabag/var
280
281Es muss analog für die folgenden Ordner ausgeführt werden
282
283* /var/www/wallabag/bin/
284* /var/www/wallabag/app/config/
285* /var/www/wallabag/vendor/
286* /var/www/wallabag/data/
287
288durch Eingabe der Kommandos
289
290.. code-block:: bash
291
292 chown -R www-data:www-data /var/www/wallabag/bin
293 chown -R www-data:www-data /var/www/wallabag/app/config
294 chown -R www-data:www-data /var/www/wallabag/vendor
295 chown -R www-data:www-data /var/www/wallabag/data/
296
297ansonsten wirst du früher oder später folgenden Fehlermeldung sehen:
298
299.. code-block:: bash
300
301 Unable to write to the "bin" directory.
302 file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied
303 file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied
304
305Zusätzliche Regeln für SELinux
306~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
307
308Wenn SELinux in deinem System aktiviert ist, wirst du zusätzliche Kontexte konfigurieren müssen damit wallabag ordentlich funktioniert. Um zu testen, ob SELinux aktiviert ist, führe einfach folgendes aus:
309
310``getenforce``
311
312Dies wird ``Enforcing`` ausgeben, wenn SELinux aktiviert ist. Einen neuen Kontext zu erstellen, erfordert die folgende Syntax:
313
314``semanage fcontext -a -t <context type> <full path>``
315
316Zum Beispiel:
317
318``semanage fcontext -a -t httpd_sys_content_t "/var/www/wallabag(/.*)?"``
319
320Dies wird rekursiv den httpd_sys_content_t Kontext auf das wallabag Verzeichnis und alle darunterliegenden Dateien und Ordner anwenden. Die folgenden Regeln werden gebraucht:
321
322+-----------------------------------+----------------------------+
323| Vollständiger Pfad | Kontext |
324+===================================+============================+
325| /var/www/wallabag(/.*)? | ``httpd_sys_content_t`` |
326+-----------------------------------+----------------------------+
327| /var/www/wallabag/data(/.*)? | ``httpd_sys_rw_content_t`` |
328+-----------------------------------+----------------------------+
329| /var/www/wallabag/var/logs(/.*)? | ``httpd_log_t`` |
330+-----------------------------------+----------------------------+
331| /var/www/wallabag/var/cache(/.*)? | ``httpd_cache_t`` |
332+-----------------------------------+----------------------------+
333
334Nach dem diese Kontexte erstellt wurden, tippe das folgende, um deine Regeln anzuwenden:
335
336``restorecon -R -v /var/www/wallabag``
337
338Du kannst deine Kontexte in einem Verzeichnis überprüfen, indem du ``ls -lZ`` tippst und alle deine aktuellen Regeln mit ``semanage fcontext -l -C`` überprüfst.
339
340Wenn du das vorkonfigurierte latest-v2-package installierst, dann ist eine weitere Regel während der Installation nötig:
341
342``semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/wallabag/var"``
343
344Nachdem du erfolgreich dein wallabag erreichst und die Installation fertiggestellt hast, kann dieser Kontext entfernt werden:
345
346::
347
348 semanage fcontext -d -t httpd_sys_rw_content_t "/var/www/wallabag/var"
349 retorecon -R -v /var/www/wallabag/var
diff --git a/docs/de/user/parameters.rst b/docs/de/user/parameters.rst
deleted file mode 100644
index 8d8f9206..00000000
--- a/docs/de/user/parameters.rst
+++ /dev/null
@@ -1,95 +0,0 @@
1Was bedeuten die Parameter?
2===========================
3
4Standardeinstellungen der `parameters.yml`
5------------------------------------------
6
7Dies ist die letzte standardisierte Version der `app/config/parameters.yml`-Datei. Stelle sicher, dass sich deine mit dieser ähnelt.
8Wenn du nicht weißt, welchen Wert du setzen sollst, belasse es bei dem Standardwert.
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
44Bedeutung von jedem Parameter
45-----------------------------
46
47.. csv-table:: Datenbankparameter
48 :header: "Name", "Standardwert", "Beschreibung"
49
50 "database_driver", "pdo_sqlite", "Sollte pdo_sqlite oder pdo_mysql oder pdo_pgsql sein"
51 "database_host", "127.0.0.1", "Hostadresse deiner Datenbank (normalerweise localhost oder 127.0.0.1)"
52 "database_port", "~", "Port deiner Datenbank (Du kannst ``~`` stehen lassen, um den Standardport zu nutzen)"
53 "database_name", "symfony", "Benenne deine Datenbank"
54 "database_user", "root", "Benutzer, der Schreibrecht in der Datenbank hat"
55 "database_password", "~", "Passwort des Benutzers"
56 "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "nur für SQLite, definiere, wo die Datenbankdatei abgelegt werden soll. Lass den Parameter leer für andere Datenbanktypen."
57 "database_table_prefix", "wallabag_", "alle wallabag Tabellen erhalten diesen Präfix im Namen. Du kannst einen ``_`` dafür im Präfix nutzen, um das zu verdeutlichen."
58 "database_socket", "null", "Wenn deine Datenbank einen Socket statt TCP nutzt, schreibe hier den Pfad zum Socket hin (andere Verbindungsparameter werden dann ignoriert."
59
60.. csv-table:: Konfiguration, um mit wallabag E-Mails senden zu können
61 :header: "Name", "Standardwert", "Beschreibung"
62
63 "mailer_transport", "smtp", "Die exakte Transportmethode, um E-Mails zuzustellen. Gültige Werte sind: smtp, gmail, mail, sendmail, null (was das Mailen deaktivert)"
64 "mailer_host", "127.0.0.1", "Der Host, zu dem sich verbunden wird, wenn SMTP als Transport genutzt wird."
65 "mailer_user", "~", "Der Benutzername, wenn SMTP als Transport genutzt wird."
66 "mailer_password", "~", "Das Passwort, wenn SMTP als Transport genutzt wird."
67
68.. csv-table:: Andere wallabag Optionen
69 :header: "Name", "Standardwert", "Beschreibung"
70
71 "locale", "en", "Standardsprache deiner wallabag Instanz (wie z.B. en, fr, es, etc.)"
72 "secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "Dieser String sollte einzigartig für deine Applikation sein und er wird genutzt, um sicherheitsrelevanten Operationen mehr Entropie hinzuzufügen."
73 "twofactor_auth", "true", "true, um Zwei-Faktor-Authentifizierung zu aktivieren"
74 "twofactor_sender", "no-reply@wallabag.org", "E-Mail-Adresse des Senders der Mails mit dem Code für die Zwei-Faktor-Authentifizierung"
75 "fosuser_registration", "true", "true, um die Registrierung für jedermann zu aktivieren"
76 "fosuser_confirmation", "true", "true, um eine Bestätigungsmail für jede Registrierung zu senden"
77 "from_email", "no-reply@wallabag.org", "E-Mail-Adresse, die im Absenderfeld jeder Mail genutzt wird"
78 "rss_limit", "50", "Artikellimit für RSS Feeds"
79
80.. csv-table:: RabbitMQ Konfiguration
81 :header: "Name", "Standardwert", "Beschreibung"
82
83 "rabbitmq_host", "localhost", "Host deines RabbitMQ"
84 "rabbitmq_port", "5672", "Port deines RabbitMQ"
85 "rabbitmq_user", "guest", "Benutzer, der die Queue lesen kann"
86 "rabbitmq_password", "guest", "Passwort dieses Benutzers"
87
88.. csv-table:: Redis Konfiguration
89 :header: "Name", "Standardwert", "Beschreibung"
90
91 "redis_scheme", "tcp", "Bestimmt das Protokoll, dass genutzt wird, um mit Redis zu kommunizieren. Gültige Werte sind: tcp, unix, http"
92 "redis_host", "localhost", "IP oder Hostname des Zielservers (ignoriert bei Unix Schema)"
93 "redis_port", "6379", "TCP/IP Port des Zielservers (ignoriert bei Unix Schema)"
94 "redis_path", "null", "Pfad zur Unix Domain Socket Datei, wenn Redis Unix Domain Sockets nutzt"
95 "redis_password", "null", "Kennwort, welches in der Redis-Server-Konfiguration definiert ist (Parameter `requirepass` in `redis.conf`)"
diff --git a/docs/de/user/query-upgrade-21-22.rst b/docs/de/user/query-upgrade-21-22.rst
deleted file mode 100644
index fa9835a8..00000000
--- a/docs/de/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/de/user/tags.rst b/docs/de/user/tags.rst
deleted file mode 100644
index 8ddc0f40..00000000
--- a/docs/de/user/tags.rst
+++ /dev/null
@@ -1,2 +0,0 @@
1Tags
2==== \ No newline at end of file
diff --git a/docs/de/user/upgrade.rst b/docs/de/user/upgrade.rst
deleted file mode 100644
index fa2aac45..00000000
--- a/docs/de/user/upgrade.rst
+++ /dev/null
@@ -1,140 +0,0 @@
1wallabag-Installation aktualisieren
2===================================
3
4Du wirst hier mehrere Wege finden, um deine wallabag zu aktualisieren:
5
6- `von 2.1.x zu 2.2.x <#upgrade-von-2-1-x-zu-2-2-x>`_
7- `von 2.0.x zu 2.1.1 <#upgrade-von-2-0-x-zu-2-1-1>`_
8- `von 1.x zu 2.x <#upgrade-von-1-x>`_
9
10Upgrade von 2.1.x zu 2.2.x
11--------------------------
12
13Upgrade auf einem dedizierten Webserver
14^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
15
16**Von 2.1.x:**
17
18::
19
20 make update
21 php bin/console doctrine:migrations:migrate --no-interaction -e=prod
22
23**Von 2.2.0:**
24
25::
26
27 make update
28
29Erklärungen über die Datenbankmigration
30"""""""""""""""""""""""""""""""""""""""
31
32Während des Updates migrieren wir die Datenbank.
33
34Alle Datenbankmigrationen sind im Verzeichnis ``app/DoctrineMigrations`` gespeichert. Jede von ihnen kann einzeln ausgeführt werden:
35``bin/console doctrine:migrations:execute 20161001072726 --env=prod``.
36
37Dies ist die Migrationsliste von 2.1.x auf 2.2.0:
38
39* ``20161001072726``: Fremdschlüssel für das Zurücksetzen des Kontos hinzugefügt
40* ``20161022134138``: Datenbank zum ``utf8mb4``-Encoding ändern (nur für MySQL)
41* ``20161024212538``: ``user_id``-Spalte zu ``oauth2_clients`` hinzugefügt, um Benutzer davon abzuhalten, API-Clients anderer Nutzer zu löschen
42* ``20161031132655``: Interne Einstellung für das (de-)aktivieren vom Bilder-Download hinzugefügt
43* ``20161104073720``: ``created_at``-Index zur ``entry``-Tabelle hinzugefügt
44* ``20161106113822``: ``action_mark_as_read``-Feld zur ``config``-Tabelle hinzugefügt
45* ``20161117071626``: Interne Einstellung zum Teilen mit unmark.it hinzugefügt
46* ``20161118134328``: ``http_status``-Feld zur ``entry``-Tabelle hinzugefügt
47* ``20161122144743``: Interne Einstellung für das (de-)aktivieren zum Holen von Artikeln mit einer Paywall hinzugefügt
48* ``20161122203647``: ``expired``- und ``credentials_expired``-Feld aus der ``user``-Tabelle entfernt
49* ``20161128084725``: added ``list_mode`` field on ``config`` table
50* ``20161128131503``: dropped ``locked``, ``credentials_expire_at`` and ``expires_at`` fields on ``user`` table
51* ``20161214094402``: renamed ``uuid`` to ``uid`` on ``entry`` table
52* ``20161214094403``: added ``uid`` index on ``entry`` table
53* ``20170127093841``: added ``is_starred`` and ``is_archived`` indexes on ``entry`` table
54
55Upgrade auf einem Shared Hosting
56^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
57
58Sichere deine ``app/config/parameters.yml``-Datei.
59
60Lade das letzte Release von wallabag herunter:
61
62.. code-block:: bash
63
64 wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
65
66Du findest den `aktuellen MD5-Hash auf unserer Webseite <https://static.wallabag.org/releases/>`_.
67
68Extrahiere das Archiv in deinen wallabag-Ordner und ersetze die ``app/config/parameters.yml`` mit deiner.
69
70Bitte überprüfe, dass deine ``app/config/parameters.yml`` alle notwendigen Parameter enthält. Eine Dokumentation darüber `findest du hier <http://doc.wallabag.org/de/master/user/parameters.html>`_.
71
72Falls du SQLite nutzt, musst du außerdem deinen ``data/``-Ordner in die neue Installation kopieren.
73
74Leere den ``var/cache``-Ordner.
75
76Du musst einige SQL-Abfragen durchführen, um deine Datenbank zu aktualisieren. Wir gehen in diesem Fall davon aus, dass das Tabellenpräfix ``wallabag_`` ist.
77
78`You can find all the queries here <http://doc.wallabag.org/en/master/user/query-upgrade-21-22.html>`_.
79
80Upgrade von 2.0.x zu 2.1.1
81---------------------------
82
83.. warning::
84
85 Mache eine Sicherung deines Pocket-Consumer-Key, falls hinzugefügt, da dieser nach dem Upgrade erneut hinzugefügt werden muss.
86
87Upgrade auf einem dedizierten Webserver
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
100Upgrade auf einem Shared Hosting
101^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
102
103Sichere deine ``app/config/parameters.yml``-Datei.
104
105Lade das 2.1.1-Release von wallabag herunter:
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(md5 hash of the 2.1.1 package: ``9584a3b60a2b2a4de87f536548caac93``)
112
113Extrahiere das Archiv in deinen wallabag-Ordner und ersetze die ``app/config/parameters.yml`` mit deiner.
114
115Bitte überprüfe, dass deine ``app/config/parameters.yml`` alle notwendigen Parameter enthält. Eine Dokumentation darüber `findest du hier <http://doc.wallabag.org/de/master/user/parameters.html>`_.
116
117Falls du SQLite nutzt, musst du außerdem deinen ``data/``-Ordner in die neue Installation kopieren.
118
119Leere den ``var/cache``-Ordner.
120
121Du musst einige SQL-Abfragen durchführen, um deine Datenbank zu aktualisieren. Wir gehen in diesem Fall davon aus, dass das Tabellenpräfix ``wallabag_`` ist und eine MySQL-Datenbank verwendet wird:
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
133Upgrade von 1.x
134---------------
135
136Es gibt kein automatisiertes Skript, um wallabag 1.x auf wallabag 2.x zu aktualisieren. Du musst:
137
138- deine Daten exportieren
139- wallabag 2.x installieren (Dokumentation <http://doc.wallabag.org/en/master/user/installation.html>`_ )
140- die Daten in die neue Installation importieren (`Dokumentation <http://doc.wallabag.org/en/master/user/import.html>`_ )