Compare commits

..

124 Commits
2.2.1 ... 2.2.3

Author SHA1 Message Date
82307d88f2 Release wallabag 2.2.3 2017-05-17 17:53:42 +02:00
6830d92558 Merge pull request #3125 from wallabag/prepare-222
Prepare wallabag 2.2.3
2017-05-17 17:48:51 +02:00
c0e8e6037b Prepare wallabag 2.2.3 2017-05-17 17:21:14 +02:00
afc9875f28 Merge pull request #3117 from wallabag/fix-doc
Fixed documentation URL
2017-05-17 10:40:35 +02:00
6b94ee51b8 Fixed documentation URL 2017-05-17 09:03:04 +02:00
4e88a6a651 Merge pull request #3124 from wallabag/lock-guzzle-auth
Lock guzzle-site-authenticator to avoid errors
2017-05-17 09:02:22 +02:00
8581fcae90 Lock guzzle-site-authenticator to avoid error 2017-05-16 23:34:42 +02:00
092ed4a787 Merge pull request #3123 from X-dark/master
reorder contrib strings in about page
2017-05-16 14:50:25 +02:00
8544c7e4b6 reorder contrib strings in about page
this fixes #2891
2017-05-16 14:17:13 +02:00
91ba9a5975 Merge pull request #3095 from aaa2000/api-error-on-fail-fetch-content
Create a new entry via API even when its content can't be retrieved
2017-05-10 09:38:55 +02:00
a9357a8311 Remove the created entry to avoid side effects on other tests 2017-05-09 23:19:24 +02:00
a2ae05a61c Merge pull request #3076 from wallabag/hotfix/2979
Disable negative numbers in filters
2017-05-09 13:56:44 +02:00
1b1647175d Add some tests 2017-05-09 12:12:23 +02:00
c829b06ed8 Merge pull request #3097 from wallabag/update-license
Update graby* licenses
2017-05-09 09:47:20 +02:00
9d7d549712 Update graby* licenses 2017-05-09 09:22:50 +02:00
832fbd94c0 Merge pull request #3096 from aaa2000/fix-api-entries-pagination-with-perpage
Fix API pagination is broken if perPage is custom value
2017-05-09 09:12:15 +02:00
b60a666df2 Fix API pagination is broken if perPage is custom value
Fix #2720
2017-05-08 16:27:16 +02:00
08f29ae7b6 Create a new entry via API even when its content can't be retrieved
Fix #2988
2017-05-08 14:57:25 +02:00
f2beee5185 Merge pull request #3090 from aaa2000/translate-login-page-error
Translate error message in login page
2017-05-07 14:00:41 +02:00
f3c300e485 Translate error message in login page
Fix #2933
2017-05-06 22:21:04 +02:00
6603a9d649 Merge pull request #3082 from aaa2000/fix-form-errors-display
Fix display the form errors correctly
2017-05-05 07:01:28 +02:00
ab9eb5cdb7 Fix display the form errors correctly
Use `property_path` form option to map underscored form fields
to object properties

@see https://github.com/symfony/symfony/issues/9162#issuecomment-25431148

Fix #3067
2017-05-05 00:12:16 +02:00
1267905d28 Disable negative numbers in filters 2017-05-03 11:08:56 +02:00
a7c8f54570 Merge pull request #3072 from wallabag/hotfix/3061
Small typo in documentation fix #3061
2017-05-02 15:46:45 +02:00
0f26c285d4 Small typo in documentation fix #3061 2017-05-02 11:51:23 +02:00
9579003045 Merge pull request #3066 from wallabag/ignore-tests-exported-files
Ignore tests exported files
2017-04-29 22:51:32 +02:00
d49cdfe2ef Ignore tests exported files 2017-04-29 19:41:14 +02:00
8ee18fdabc Merge pull request #3064 from gileri/master
Correct create_application en string
2017-04-29 15:43:42 +02:00
ef88b37eb5 Correct create_application en string 2017-04-29 12:30:12 +02:00
138c352cd7 Merge pull request #3052 from shtrom/fix-relative-symlinks
Make symfony-assets-install use `relative` symlinks
2017-04-25 14:15:01 +02:00
f972af3f5b Make symfony-assets-install use relative symlinks
This facilitates packaging, when installing in a different work PREFIX
than the final install location.

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2017-04-22 21:45:30 +10:00
656395fde6 Merge pull request #3023 from mart-e/epub-notice-at-the-end
Add export notice at the end of the epub
2017-04-05 10:20:19 +02:00
1b70990b01 Add export notice at the end of the epub
The text "Produced by wallabag with PHPePub" is the first page of any epub.

On ebooks reader, it is common (e.g. kobo) to use the first page as the cover of
unread books, which makes it more difficult to differentiate the books.

Move the Notices chapter at the end of the book.
2017-04-05 09:24:48 +02:00
548e608870 Merge pull request #3017 from Kdecherf/local-image-alpha
Save alpha channel when downloading PNG images
2017-03-30 14:45:24 +02:00
7a3260ae9e Save alpha channel when downloading PNG images
Fixes #2805

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-03-29 21:58:29 +02:00
90f95027a8 Merge pull request #2985 from etiess/patch-2
Update paywall.rst (more details and clear cache)
2017-03-23 13:56:55 +01:00
7423ed4766 Merge pull request #2968 from chrido/master
remove language on html tag
2017-03-13 10:56:33 +01:00
3f5f303e7f Merge pull request #2971 from etiess/patch-3
Update paywall.rst (EN) with details + clear cache
2017-03-09 15:34:40 +01:00
cee28dc6d4 remove language on html-tag 2017-03-06 21:34:50 +01:00
8c565e3b73 Merge pull request #2954 from wallabag/update-version
Changed wallabag version
2017-03-02 14:43:04 +01:00
8ef1df8157 Changed wallabag version 2017-03-02 14:42:16 +01:00
0fe64f1fdd Merge pull request #2916 from wallabag/update-changelog
Updated CHANGELOG with latest changes
2017-03-02 14:40:22 +01:00
bae1f9dfba Updated CHANGELOG with latest changes 2017-03-02 14:22:17 +01:00
6c79aaf432 Merge pull request #2950 from wallabag/fix-symlinks
Fixed symlinks issue during release creation
2017-03-02 14:16:51 +01:00
1d13376df6 Fixed symlinks issue during release creation 2017-03-01 14:17:07 +01:00
71460a8ba5 Merge pull request #2926 from qtheuret/master
Add activation of 'rewrite' mod of Apache
2017-03-01 13:32:46 +01:00
3529ce35e4 Added german and italian translation 2017-02-28 21:10:24 +01:00
29969f854c Merge pull request #2932 from wallabag/mruminski-patch-1
Update Polish translation
2017-02-25 08:28:31 +01:00
78bce602cb Update Polish translation
add missing translation
2017-02-24 18:31:35 +01:00
85b4b6e0cd Merge pull request #2931 from wallabag/php-7.1
Use wallabag/tcpdf
2017-02-24 16:23:06 +01:00
5a73f94590 Use wallabag/tcpdf
It should restore the PHP 7.1 compatibility
2017-02-24 15:05:45 +01:00
0a82d6e23c Activate 'rewrite' mod of Apache 2017-02-23 16:10:14 +01:00
a737f4b58e Ajout du mod 'rewrite' de Apache 2017-02-23 16:09:06 +01:00
5301d664d9 Update paywall.rst (EN) with details + clear cache 2017-02-23 08:54:33 +01:00
e316d4bd34 Update paywall.rst (more details and clear cache) 2017-02-22 11:49:45 +01:00
227a009da5 Merge pull request #2917 from ngosang/feature/es_translation_2
Update Spanish translation
2017-02-20 13:55:24 +01:00
ac47889928 Update Spanish translation 2017-02-20 12:21:02 +01:00
6914fdd8d8 Merge pull request #2915 from wallabag/import-drop-msg-user-null
Import: we now skip messages when user is null
2017-02-20 09:45:12 +01:00
b45b6b6707 Import: we now skip messages when user is null 2017-02-20 09:16:02 +01:00
48be826ea9 Merge pull request #2905 from nicofrand/patch-1
Alert that 2FA must be authorized in app/config/parameters.yml
2017-02-20 08:27:26 +01:00
b17cb92e9b Merge pull request #2913 from wallabag/add-wllbgit-readme
Added wallabag.it link in README
2017-02-20 08:05:58 +01:00
38fe541997 Alert that 2FA must be authorized in app/config/parameters.yml 2017-02-20 08:04:44 +01:00
bba94d7458 Merge pull request #2832 from Kdecherf/search-domain
Search by term: extend to entries url
2017-02-19 21:52:35 +01:00
b678d0f55c Added wallabag.it link in README 2017-02-18 15:04:57 +01:00
2b8f274b8a Merge pull request #2911 from wallabag/jlnostr-patch-1
Remove word repetition from german translation
2017-02-17 22:16:48 +01:00
5d858d21de Remove word repetition from german translation
see https://github.com/wallabag/wallabag/pull/2882#discussion_r101806434
2017-02-17 21:52:16 +01:00
628f9d31de Merge pull request #2908 from wallabag/move-it-documentatin
Moved 🇮🇹 documentation into it folder
2017-02-17 13:54:48 +01:00
9d8975f6b6 Moved 🇮🇹 documentation into it folder 2017-02-17 13:12:09 +01:00
2edc539581 Merge pull request #2830 from Kdecherf/striptags-title
Fix rendering of entry title in Twig views
2017-02-17 09:28:56 +01:00
2ac8e2c5b5 Merge pull request #2882 from wallabag/add-translations-doc-mobile-apps
Doc: translated mobile apps configuration in french
2017-02-17 09:28:21 +01:00
eac09b48b0 Search by term: extend to entries url
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-16 21:47:52 +01:00
9dd68dae77 Some changes to 🇩🇪 translation 2017-02-16 21:41:19 +01:00
aedd385e10 views: cosmetic in share links href
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-16 21:36:34 +01:00
6c1c433903 Merge pull request #2892 from ngosang/feature/es_translation
Update Spanish translation
2017-02-16 09:12:40 +01:00
8b42e75f68 add 🇩🇪 doc user/configuring_mobile 2017-02-15 17:13:14 +01:00
82749439ac Update Spanish translation 2017-02-15 15:41:06 +01:00
a92718dba2 Merge pull request #2875 from kgaut/patch-3
Doc - information about Apache 2.4
2017-02-14 22:14:51 +01:00
2414eb12c6 Merge pull request #2785 from matteocoder/patch-2
first_article.rst already inside articles.rst
2017-02-14 22:05:53 +01:00
f3c7e055f2 Merge pull request #2784 from matteocoder/patch-1
Doc: share.rst already integrated inside articles.rst
2017-02-14 21:37:27 +01:00
e04d656f5a first_article.rst already inside articles.rst
The file is a duplicate of a section already present in articles.rst
2017-02-14 20:57:22 +01:00
d60c38edf9 share.rst already integrated inside articles.rst
The share.rst file is just a duplicate of a section already present in another file.
2017-02-14 20:56:27 +01:00
7d1c19c021 Doc: translated mobile apps configuration in french 2017-02-14 20:45:08 +01:00
f17b89fadc Merge pull request #2878 from matteocoder/wallabag-docs-ita
Italian documentation added
2017-02-14 18:33:43 +01:00
eef47c0ead Merge pull request #2879 from matteocoder/matteocoder-patch-1
Fixed typo in "first_steps"
2017-02-14 17:16:14 +01:00
5601b4536c Italian documentation added
There are some missing links in various articles. Please let me know how I can fix this :)
2017-02-14 16:36:40 +01:00
6d1e97f564 Merge pull request #2860 from wallabag/docs-update-3rd-party-apps
docs 3rd party tools: update java wrapper, add cmd tool to add article
2017-02-14 15:40:29 +01:00
c772c473a1 docs: add 3rd party app wallabako for Kobo readers 2017-02-14 15:39:12 +01:00
0ae5297699 Doc - informations about Apache 2.4 2017-02-14 15:29:33 +01:00
5e4b9b2321 Merge pull request #2874 from kgaut/patch-2
Add informations about Apache 2.4
2017-02-14 15:11:08 +01:00
947ccd075c Add informations about Apache 2.4 2017-02-14 09:24:56 +01:00
4a953a250c Merge pull request #2869 from wallabag/log-restricted-access
Log restricted access value
2017-02-13 14:55:55 +01:00
7bf6b555f5 Log restricted access value
It might help to figure out if we have enabled it or not
2017-02-13 14:20:03 +01:00
8148675cb7 docs 3rd party tools: update java wrapper, add cmd tool to add article 2017-02-11 00:43:04 +01:00
abba55cdd6 Merge pull request #2846 from wallabag/mruminski-patch-1
fix misspells in polish translation
2017-02-06 17:29:31 +01:00
41ed68d5b0 fix misspells in polish translation 2017-02-06 15:38:33 +01:00
99cc170b0e Merge pull request #2842 from K-Phoen/update-rulerz
Update RulerZ
2017-02-06 09:20:28 +01:00
10caff9875 Merge pull request #2841 from Kdecherf/active-menu-search
Show active list in the left menu during search
2017-02-05 21:08:39 +01:00
177c5510ff Update RulerZ 2017-02-05 18:02:09 +01:00
7d9a67de14 Show active list in the left menu during search
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-05 15:19:52 +01:00
20da238413 Merge pull request #2788 from Zettt/master
Documentation on how to configure mobile apps to work with wallabag.it
2017-02-05 12:49:43 +01:00
664621955d Added configuration documentation for mobile apps 2017-02-05 12:48:30 +01:00
15a4d52833 Merge pull request #2839 from foxmask/master
scripts/update.sh: 18: scripts/update.sh: composer.phar: not found
2017-02-05 12:34:20 +01:00
5397d820fe Merge pull request #2838 from wallabag/Quent-in-patch-1
Update Oc version
2017-02-04 21:54:43 +01:00
6837c3989a Merge pull request #2840 from wallabag/fix-frameworkbundle
Restored correct version for framework-extra-bundle
2017-02-04 21:53:26 +01:00
7db1bdf1e4 Restored correct version for framework-extra-bundle
The bundle was fixed in latest version.
2017-02-04 18:26:16 +01:00
205c6f0c66 scripts/update.sh: 18: scripts/update.sh: composer.phar: not found
when composer.phar is not globally installed, we should add "./" in front of "composer.phar" to run it from the current folder.
2017-02-04 17:02:25 +01:00
289ce94bd8 Update Oc version
I'll be ready for next train
2017-02-04 15:21:13 +01:00
5b9cf67529 Merge pull request #2818 from Kdecherf/fix-search-bar
Fix nav-panel-search height
2017-02-03 09:04:33 +01:00
1bb7bdc8b3 Fix rendering of entry title in Twig views
This commit provides some improvements on the rendering of entry title
on entries list and entry views and refactors filter calls:
- Remove escape filter from apparent title, striptags is enough
- Move raw filter to the end of apparent title as it's ignored if not
  placed as the last filter
- Replace raw filter with e('html_attr') for title used in attributes,
  fixing possible issue and/or glitch
- Add striptags to entry.title used for link sharing to respect the
  apparent title

Fixes #2802

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-02 21:54:15 +01:00
8138fd390b Added minified CSS files 2017-02-02 21:48:59 +01:00
3cc0cc0ae7 Fix nav-panel-search height
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-02 21:48:59 +01:00
8a098044bf Merge pull request #2831 from wallabag/Quent-in-patch-1
Update of CraueConfigBundle in Occitan
2017-02-02 17:11:40 +01:00
20fa5ca02a Update of CraueConfigBundle in Occitan 2017-02-02 16:29:28 +01:00
c7d05059ca Merge pull request #2824 from wallabag/simplify-strings
Renamed Developer section to API client management
2017-02-02 15:35:22 +01:00
d3ef28c092 Freezed sensio/framework-extra-bundle version 2017-02-02 14:39:17 +01:00
f217cf48d9 Merge pull request #2826 from wallabag/jlnostr-patch-1
Translate missing strings for de-DE.
2017-02-02 09:13:21 +01:00
ab5c68facc Merge pull request #2829 from wallabag/mruminski-patch-1
Update polish strings
2017-02-02 09:12:52 +01:00
51ca217d2e Update polish strings
update missing polish strings
2017-02-01 22:29:03 +01:00
f41b085c76 Translate missing strings for de-DE. 2017-02-01 22:06:04 +01:00
74ba949d7e Update german strings. 2017-02-01 21:29:59 +01:00
013f426d10 Renamed Developer section to API client management 2017-02-01 13:23:13 +01:00
d3a8322a64 Merge pull request #2816 from wallabag/add-details-update
Added details about upgrade from 2.1.x or 2.2.0
2017-01-31 14:09:51 +01:00
1a6e0725d3 Added details about upgrade from 2.1.x or 2.2.0 2017-01-31 12:53:22 +01:00
605f82d9c4 Fixed typo in "first_steps"
Changed "Pimi passi" to "Primi passi
2017-01-24 08:22:18 -05:00
102 changed files with 3855 additions and 2221 deletions

4
.gitignore vendored
View File

@ -51,3 +51,7 @@ bin
app/Resources/build/
!/src/Wallabag/CoreBundle/Resources/public
/src/Wallabag/CoreBundle/Resources/public/*
# Test-generated files
admin-export.json
specialexport.json

View File

@ -44,7 +44,6 @@ matrix:
- php: 7.0
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run ASSETS=build DB=sqlite
allow_failures:
- php: 7.1
- php: nightly
# exclude v1 branches

File diff suppressed because it is too large Load Diff

View File

@ -8,6 +8,8 @@ Click, save and read it when you can. It extracts content so that you can read i
More information on our website: [wallabag.org](https://wallabag.org).
If you do not have your own server, consider [the wallabag.it hosting solution](https://wallabag.it).
![wallabag logo](https://raw.githubusercontent.com/wallabag/logo/master/_default/typo-horizontal/png/sm/logo-typo-horizontal-black-no-bg-no-border-sm.png)
# Install wallabag

View File

@ -47,7 +47,7 @@ make release master /tmp wllbg-release prod
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new). You have to upload on this page the package.
- Delete the `release-$LAST_WALLABAG_RELEASE` branch and close the pull request (**DO NOT MERGE IT**).
- Update the URL shortener (used on `wllbg.org` to generate links like `http://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
- Update the URL shortener (used on `wllbg.org` to generate links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
- Update [the downloads page](https://github.com/wallabag/wallabag.org/blob/master/content/pages/download.md) on the website (MD5 sum, release date)
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
- Update wallabag.org website (downloads, releases and new blog post)

View File

@ -1,7 +1,7 @@
# settings_changed: Configuration updated
download_pictures: Descargar imágenes
settings_changed: Configuración actualizada
download_pictures: Descargar imágenes en el servidor
carrot: Activar compartir con Carrot
diaspora_url: Diaspora URL, si el servicio está activado
diaspora_url: URL de Diaspora, si el servicio está activado
export_epub: Activar exportación a ePub
export_mobi: Activar exportación a .mobi
export_pdf: Activar exportación a PDF
@ -9,11 +9,11 @@ export_csv: Activar exportación a CSV
export_json: Activar exportación a JSON
export_txt: Activar exportación a TXT
export_xml: Activar exportación a XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli URL, si el servicio está activado
import_with_rabbitmq: Activar RabbitMQ para importar datos de forma asíncrona
import_with_redis: Activar Redis para importar datos de forma asíncrona
shaarli_url: URL de Shaarli, si el servicio está activado
share_diaspora: Activar compartir con Diaspora
share_mail: Activar compartir con email
share_mail: Activar compartir con Email
share_shaarli: Activar compartir con Shaarli
share_twitter: Activar compartir con Twitter
share_unmark: Activar compartir con Unmark.it
@ -24,12 +24,12 @@ entry: "artículo"
export: "exportar"
import: "importar"
misc: "misc"
modify_settings: "modificar configuración"
piwik_host: Host de tu website de Piwik (sin http:// o https://)
piwik_site_id: ID de tu website de Piwik
modify_settings: "guardar"
piwik_host: Host de tu website en Piwik (sin http:// o https://)
piwik_site_id: ID de tu website en Piwik
piwik_enabled: Activar Piwik
demo_mode_enabled: "Activar modo demo (sólo usado para la demo de wallabag)"
demo_mode_enabled: "Activar modo demo (sólo usado en la demo pública de wallabag)"
demo_mode_username: "Nombre de usuario demo"
# share_public: Allow public url for entries
# download_images_enabled: Download images locally
# restricted_access: Enable authentication for websites with paywall
share_public: Permitir URL pública para los artículos
download_images_enabled: Descargar imágenes localmente
restricted_access: Activar autenticación para websites con paywall

View File

@ -1,4 +1,4 @@
# settings_changed: Configuration updated
settings_changed: Configuracion mesa a jorn
download_pictures: Telecargar los imatges sul servidor
carrot: Activar lo partatge cap a Carrot
diaspora_url: URL de Diaspora, se lo servici Diaspora es activat
@ -9,8 +9,8 @@ export_csv: Activar l'expòrt CSV
export_json: Activar l'expòrt JSON
export_txt: Activar l'expòrt TXT
export_xml: Activar l'expòrt XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
import_with_rabbitmq: Activar Enable RabbitMQ per importar de donadas de manièra asincròna
import_with_redis: Activar Redis per importar de donadas de manièra asincròna
shaarli_url: URL de Shaarli, se lo servici Shaarli es activat
share_diaspora: Activar lo partatge cap a Diaspora
share_mail: Activar lo partatge per corrièl
@ -30,6 +30,6 @@ piwik_site_id: ID de vòstre site dins Piwik
piwik_enabled: Activar Piwik
demo_mode_enabled: "Activar lo mode demostracion ? (utilizar solament per la demostracion publica de wallabag)"
demo_mode_username: "Utilizaire de la demostracion"
# share_public: Allow public url for entries
# download_images_enabled: Download images locally
# restricted_access: Enable authentication for websites with paywall
share_public: Autorizar una URL publica pels articles
download_images_enabled: Telecargar los imatges en local
restricted_access: Activar l'autenticacion pels sites amb peatge

View File

@ -1,4 +1,4 @@
# settings_changed: Configuration updated
settings_changed: Konfiguracja zaktualizowana
download_pictures: Pobierz obrazy na swój serwer
carrot: Włącz udostępnianie dla Carrot
diaspora_url: Adres URL Diaspora, jeżeli usługa jest włączona
@ -24,12 +24,12 @@ entry: "artykuł"
export: "eksport"
import: "import"
misc: "różne"
modify_settings: "zatwierdz"
modify_settings: "zatwierdź"
piwik_host: Host twojej strony Piwik (bez http:// lub https://)
piwik_site_id: ID twojej strony Piwik
piwik_enabled: Włacz Piwik
demo_mode_enabled: "Włacz tryb demo? (używany wyłącznie dla publicznej demonstracji Wallabag)"
demo_mode_username: "Użytkownik Demonstracyjny"
share_public: Zezwalaj na publiczny adres url dla wpisow
# download_images_enabled: Download images locally
# restricted_access: Enable authentication for websites with paywall
download_images_enabled: Pobierz obrazy lokalnie
restricted_access: Włącz autoryzację dla stron z paywallem

View File

@ -291,6 +291,7 @@ nav {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
min-height: 64px;
}
.nav-wrapper .button-collapse {
@ -369,7 +370,8 @@ nav {
.input-field.nav-panel-add form,
.input-field.nav-panel-search,
.input-field.nav-panel-search form {
flex-grow: 1;
display: flex;
flex: 1;
}
/* ==========================================================================

View File

@ -30,7 +30,7 @@ framework:
assets: ~
wallabag_core:
version: 2.2.1
version: 2.2.3
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
languages:
en: 'English'
@ -238,7 +238,7 @@ scheb_two_factor:
mailer: wallabag_user.auth_code_mailer
kphoen_rulerz:
executors:
targets:
doctrine: true
old_sound_rabbit_mq:

View File

@ -58,7 +58,7 @@
"jms/serializer-bundle": "~1.1",
"nelmio/api-doc-bundle": "~2.7",
"mgargano/simplehtmldom": "~1.5",
"tecnickcom/tc-lib-pdf": "dev-master",
"wallabag/tcpdf": "^6.2",
"simplepie/simplepie": "~1.3.1",
"willdurand/hateoas-bundle": "~1.0",
"htmlawed/htmlawed": "~1.1.19",
@ -71,8 +71,7 @@
"scheb/two-factor-bundle": "~2.0",
"grandt/phpepub": "~4.0",
"wallabag/php-mobi": "~1.0.0",
"kphoen/rulerz-bundle": "~0.10",
"kphoen/rulerz": "0.19.1",
"kphoen/rulerz-bundle": "~0.13",
"guzzlehttp/guzzle": "^5.3.1",
"doctrine/doctrine-migrations-bundle": "^1.0",
"paragonie/random_compat": "~1.0",
@ -85,7 +84,7 @@
"javibravo/simpleue": "^1.0",
"symfony/dom-crawler": "^3.1",
"friendsofsymfony/jsrouting-bundle": "^1.6",
"bdunogier/guzzle-site-authenticator": "dev-master"
"bdunogier/guzzle-site-authenticator": "1.0.0-beta1"
},
"require-dev": {
"doctrine/doctrine-fixtures-bundle": "~2.2",
@ -116,7 +115,7 @@
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"symfony-assets-install": "symlink",
"symfony-assets-install": "relative",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
}

1504
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -254,7 +254,7 @@ cURL Beispiel:
Andere Methoden
---------------
Wir werden nicht für jede API Methode Beispiele schreiben.
Wir werden nicht für jede API Methode Beispiele schreiben.
Wirf einen Blick in die Liste http://localhost:8000/api/doc, um alle Methode kennenzulernen.
@ -264,8 +264,9 @@ Drittanbieter Ressourcen
Einige Applikationen oder Bibliotheken nutzen unsere API. Hier ist eine nicht abschließende Aufzählung von ihnen:
- `Java wrapper for the wallabag API <https://github.com/Strubbl/jWallabag>`_ von Strubbl.
- `Java wrapper for the wallabag API <https://github.com/di72nn/wallabag-api-wrapper>`_ von Dmitriy Bogdanov.
- `.NET library for the wallabag v2 API <https://github.com/jlnostr/wallabag-api>`_ von Julian Oster.
- `Python API for wallabag <https://github.com/foxmask/wallabag_api>`_ von FoxMaSk, für sein Projekt `Trigger Happy <https://blog.trigger-happy.eu/>`_.
- `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.
- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ von Strubbl, für sein Projekt `wallabag-stats Graph <https://github.com/Strubbl/wallabag-stats>`_.
- `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>`_.
- Tool, um automatisiert wallabag Artikel auf den lokalen PC oder ebook reader zu laden `wallabako <https://gitlab.com/anarcat/wallabako>`_ von anarcat.

View File

@ -33,6 +33,7 @@ Die Dokumentation ist in anderen Sprachen verfügbar :
user/errors_during_fetching
user/filters
user/tags
user/configuring_mobile
user/android
user/parameters
user/backup

View File

@ -66,7 +66,9 @@ Zwei-Faktor-Authentifizierung (2FA)
Die Zwei-Faktor-Authentifizierung (2FA) dient dem Identitätsnachweis eines Nutzers mittels der
Kombination zweier verschiedener und insbesondere unabhängiger Komponenten (Faktoren).
https://de.wikipedia.org/wiki/Zwei-Faktor-Authentifizierung
https://de.wikipedia.org/wiki/Zwei-Faktor-Authentifizierung
**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).
Wenn du 2FA aktivierst, erhälst du jedes Mal, wenn du dich bei wallabag einloggen willst, einen Code per
Mail. Du musst den Code in das folgende Formular eingeben.

View File

@ -0,0 +1,12 @@
Konfiguration mobiler Apps für wallabag
=======================================
Schritte zum Konfigurieren der App
----------------------------------
- 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.
- 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.
- 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.
- Zuletzt musst du deinen ``Benutzernamen`` und ``Passwort`` bereitstellen. Diese Zugangsdaten sind die gleichen, die du zum Login bei wallabag nutzt.
Bitte schaue auch auf die `Android <android.html>`_ Seite und dort insbesondere den Abschnitt *Bekannte Limitierungen*.

View File

@ -111,6 +111,12 @@ Virtualhosts
Konfiguration von Apache
~~~~~~~~~~~~~~~~~~~~~~~~
Vergiss nicht, die *rewrite* mod von Apache zu aktivieren.
.. code-block:: bash
a2enmod rewrite && systemctl reload apache2
Angenommen 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:
::

View File

@ -13,6 +13,15 @@ Upgrade von 2.1.x zu 2.2.x
Upgrade auf einem dedizierten Webserver
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
**Von 2.1.x:**
::
make update
php bin/console doctrine:migrations:migrate --no-interaction -e=prod
**Von 2.2.0:**
::
make update
@ -52,7 +61,7 @@ Lade das letzte Release von wallabag herunter:
.. code-block:: bash
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
Du findest den `aktuellen MD5-Hash auf unserer Webseite <https://www.wallabag.org/pages/download-wallabag.html>`_.

View File

@ -8,7 +8,7 @@ Requirements
* wallabag freshly (or not) installed on http://localhost:8000
* ``httpie`` installed on your computer (`see project website <https://github.com/jkbrzt/httpie>`__). Note that you can also adapt the commands using curl or wget.
* all the API methods are documented here http://localhost:8000/api/doc (on your instance) and `on our example instance <http://v2.wallabag.org/api/doc>`_
* all the API methods are documented here http://localhost:8000/api/doc (on your instance) and `on our example instance <http://v2.wallabag.org/api/doc>`_
Creating a new API client
-------------------------
@ -263,8 +263,9 @@ Third party resources
Some applications or libraries use our API. Here is a non-exhaustive list of them:
- `Java wrapper for the wallabag API <https://github.com/Strubbl/jWallabag>`_ by Strubbl.
- `Java wrapper for the wallabag API <https://github.com/di72nn/wallabag-api-wrapper>`_ by Dmitriy Bogdanov.
- `.NET library for the wallabag v2 API <https://github.com/jlnostr/wallabag-api>`_ by Julian Oster.
- `Python API for wallabag <https://github.com/foxmask/wallabag_api>`_ by FoxMaSk, for his project `Trigger Happy <https://blog.trigger-happy.eu/>`_.
- `A plugin <https://github.com/joshp23/ttrss-to-wallabag-v2>`_ designed for `Tiny Tiny RSS <https://tt-rss.org/gitlab/fox/tt-rss/wikis/home>`_ that makes use of the wallabag v2 API. By Josh Panter.
- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ by Strubbl, for his project `wallabag-stats graph <https://github.com/Strubbl/wallabag-stats>`_.
- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ by Strubbl, for his projects `wallabag-stats graph <https://github.com/Strubbl/wallabag-stats>`_ and the command line tool `wallabag-add-article <https://github.com/Strubbl/wallabag-add-article>`_.
- Tool to automatically download Wallabag articles into your local computer or Kobo ebook reader `wallabako <https://gitlab.com/anarcat/wallabako>`_ by anarcat.

View File

@ -6,12 +6,16 @@ wallabag can fetch articles from websites which use a paywall system.
Enable paywall authentication
-----------------------------
In internal settings, in the **Article** section, enable authentication for websites with paywall (with the value 1).
In internal settings, as a wallabag administrator, in the **Article** section, enable authentication for websites with paywall (with the value 1).
Configure credentials in wallabag
---------------------------------
Edit your ``app/config/parameters.yml`` file to edit credentials for each website with paywall. Here is an example for some french websites:
Edit your ``app/config/parameters.yml`` file to edit credentials for each website with paywall. For example, under Ubuntu:
``sudo -u www-data nano /var/www/html/wallabag/app/config/parameters.yml``
Here is an example for some french websites (be careful: don't use the "tab" key, only spaces):
.. code:: yaml
@ -28,7 +32,7 @@ Parsing configuration files
.. note::
Read `this part of the documentation <http://doc.wallabag.org/en/master/user/errors_during_fetching.html>`_ to understand the configuration files.
Read `this part of the documentation <http://doc.wallabag.org/en/master/user/errors_during_fetching.html>`_ to understand the configuration files, which are located under ``vendor/j0k3r/graby-site-config/``. For most of the websites, this file is already configured: the following instructions are only for the websites that are not configured yet.
Each parsing configuration file needs to be improved by adding ``requires_login``, ``login_uri``,
``login_username_field``, ``login_password_field`` and ``not_logged_in_xpath``.
@ -54,3 +58,8 @@ For example:
login_password_field: password
not_logged_in_xpath: //body[@class="not-logged-in"]
Last step: clear the cache
--------------------------
It's necessary to clear the wallabag cache with the following command (here under Ubuntu): ``sudo -u www-data php /var/www/html/wallabag/bin/console cache:clear -e=prod``

View File

@ -33,6 +33,7 @@ The documentation is available in other languages:
user/errors_during_fetching
user/filters
user/tags
user/configuring_mobile
user/android
user/parameters
user/backup

View File

@ -68,7 +68,9 @@ Two factor authentication (2FA)
Two-factor authentication (also known as 2FA) is a technology patented in 1984
that provides identification of users by means of the combination of two different components.
https://en.wikipedia.org/wiki/Two-factor_authentication
https://en.wikipedia.org/wiki/Two-factor_authentication
**Warning**: enabling 2FA from the configuration interface is only possible if it has been authorized before in `app/config/parameters.yml` by setting the *twofactor_auth* property to `true` (do not forget to run `php bin/console cache:clear -e=prod` after modification).
If you enable 2FA, each time you want to login to wallabag, you'll receive
a code by email. You have to put this code on the following form.

View File

@ -0,0 +1,13 @@
Configuring mobile apps to work with wallabag
=============================================
Steps to configure the app
--------------------------
- First *create a new client* in the ``API clients management`` section. The name of your app doesn't matter as much as the ``Client ID`` and the ``Client secret``. Write these two values down.
- When you download a mobile app, it's going to ask for the server address of the hosted wallabag instance. For example, with wallabag.it that is: ``https://app.wallabag.it``.
- It's also going to ask for the aforementioned ``Client ID`` and ``secret``. Please insert those in the text fields, when asked.
- Lastly you need to provide your ``username`` and ``password``. These are the same credentials you use to login in to wallabag.
Please also have a look at `Android <android.html>`_ page. Especially the section on *known limitations*.

View File

@ -1,66 +0,0 @@
Save your first article
=======================
The main purpose of wallabag is to save web articles. You have many ways to do it.
.. note::
A quickstart will be displayed in the application until you save your first article.
By using a bookmarklet
----------------------
On the ``Howto`` page, you have a ``Bookmarklet`` tab. Drag and drop the ``bag it!``
link to your bookmarks bar of your browser.
Now, each time you're reading an article on the web and you want to save it,
click on the ``bag it!`` link in your bookmarks bar. The article is saved.
By using the classic form
-------------------------
In the top bar of your screen, you have 3 icons. With the first one, a plus sign,
you can easily save a new article.
.. image:: ../../img/user/topbar.png
:alt: Top bar
:align: center
Click on it to display a new field, paste the article URL inside and press your
``Return`` key. The article is saved.
By using a browser add-on
-------------------------
Firefox
~~~~~~~
*This addon is not yet available for wallabag v2*.
Chrome
~~~~~~
*This addon is not yet available for wallabag v2*.
By using your smarphone application
-----------------------------------
Android
~~~~~~~
*This application is not yet available for wallabag v2*.
Firefox OS
~~~~~~~~~~
*This application is not yet available for wallabag v2*.
Windows Phone
~~~~~~~~~~~~~
*This application is not yet available for wallabag v2*.
iOS
~~~
*This application is not yet available for wallabag v2*.

View File

@ -110,6 +110,12 @@ Virtual hosts
Configuration on Apache
~~~~~~~~~~~~~~~~~~~~~~~
Do not forget to active the *rewrite* mod of Apache
.. code-block:: bash
a2enmod rewrite && systemctl reload apache2
Assuming you install wallabag in the ``/var/www/wallabag`` folder and that you want to use PHP as an Apache module, here's a vhost for wallabag:
::
@ -149,6 +155,23 @@ Assuming you install wallabag in the ``/var/www/wallabag`` folder and that you w
ErrorLog /var/log/apache2/wallabag_error.log
CustomLog /var/log/apache2/wallabag_access.log combined
</VirtualHost>
.. tip:: Note for Apache 2.4, in the section `<Directory /var/www/wallabag/web>` you have to replace the directives :
::
AllowOverride None
Order Allow,Deny
Allow from All
by
::
Require All granted
After reloading or restarting Apache, you should now be able to access wallabag at http://domain.tld.

View File

@ -1,17 +0,0 @@
Share articles
==============
When you're reading an article, you can share it. Just click on the share button:
.. image:: ../../img/user/share.png
:alt: share article
:align: center
Now, you can share the article:
- with a public URL (you'll have a light view of the article)
- with a tweet
- into your Shaarli
- with a post in Diaspora*
- to Carrot
- with an email

View File

@ -15,6 +15,15 @@ Upgrading from 2.1.x to 2.2.x
Upgrade on a dedicated web server
=================================
**From 2.1.x:**
::
make update
php bin/console doctrine:migrations:migrate --no-interaction -e=prod
**From 2.2.0:**
::
make update
@ -56,7 +65,7 @@ Download the last release of wallabag:
.. code-block:: bash
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
You will find the `md5 hash of the latest package on our website <https://www.wallabag.org/pages/download-wallabag.html>`_.

View File

@ -263,8 +263,9 @@ Ressources tierces
Certaines applications ou bibliothèques utilisent notre API. En voici une liste non exhaustive :
- `Java wrapper for the wallabag API <https://github.com/Strubbl/jWallabag>`_ par Strubbl.
- `Java wrapper for the wallabag API <https://github.com/di72nn/wallabag-api-wrapper>`_ par Dmitriy Bogdanov.
- `.NET library for the wallabag v2 API <https://github.com/jlnostr/wallabag-api>`_ par Julian Oster.
- `Python API for wallabag <https://github.com/foxmask/wallabag_api>`_ par FoxMaSk, pour son projet `Trigger Happy <https://blog.trigger-happy.eu/>`_.
- `Un plugin <https://github.com/joshp23/ttrss-to-wallabag-v2>`_ conçu pour `Tiny Tiny RSS <https://tt-rss.org/gitlab/fox/tt-rss/wikis/home>`_ qui utilise l'API wallabag v2. Par Josh Panter.
- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ par Strubbl, pour son projet `wallabag-stats graphe <https://github.com/Strubbl/wallabag-stats>`_.
- `Golang wrapper for the wallabag API <https://github.com/Strubbl/wallabago>`_ par Strubbl, pour son projets `wallabag-stats graphe <https://github.com/Strubbl/wallabag-stats>`_ et l'outil de ligne de commande `wallabag-add-article <https://github.com/Strubbl/wallabag-add-article>`_.
- Tool to automatically download Wallabag articles into your local computer or Kobo ebook reader `wallabako <https://gitlab.com/anarcat/wallabako>`_ par anarcat.

View File

@ -6,12 +6,16 @@ wallabag peut récupérer le contenu des articles des sites qui utilisent un sys
Activer l'authentification pour les paywall
-------------------------------------------
Dans les paramètres internes, section **Article**, activez l'authentification pour les articles derrière un paywall (avec la valeur 1).
Dans les paramètres internes, en tant qu'administrateur de wallabag, section **Article**, activez l'authentification pour les articles derrière un paywall (avec la valeur 1).
Configurer les accès dans wallabag
----------------------------------
Éditez le fichier ``app/config/parameters.yml`` pour modifier les accès aux sites avec paywall. Voici un exemple pour certains sites :
Éditez le fichier ``app/config/parameters.yml`` pour modifier les accès aux sites avec paywall. Par exemple, sous Ubuntu :
``sudo -u www-data nano /var/www/html/wallabag/app/config/parameters.yml``
Voici un exemple pour certains sites (attention, ne pas utiliser la touche "tab", seulement des espaces) :
.. code:: yaml
@ -28,7 +32,7 @@ Fichiers de configuration pour parser les articles
.. note::
Lisez `cette documentation <http://doc.wallabag.org/fr/master/user/errors_during_fetching.html>`_ pour en savoir plus sur ces fichiers de configuration.
Lisez `cette documentation <http://doc.wallabag.org/fr/master/user/errors_during_fetching.html>`_ pour en savoir plus sur ces fichiers de configuration, qui se trouvent dans le répertoire ``vendor/j0k3r/graby-site-config/``. Pour la majorité des sites, ce fichier est déjà configuré : les instructions qui suivent concernent seulement les sites non encore configurés.
Chaque fichier de configuration doit être enrichi en ajoutant ``requires_login``, ``login_uri``,
``login_username_field``, ``login_password_field`` et ``not_logged_in_xpath``.
@ -54,3 +58,8 @@ Par exemple :
login_password_field: password
not_logged_in_xpath: //body[@class="not-logged-in"]
Dernière étape : nettoyer le cache
----------------------------------
Il est nécessaire de nettoyer le cache de wallabag avec la commande suivante (ici sous Ubuntu) : ``sudo -u www-data php /var/www/html/wallabag/bin/console cache:clear -e=prod``

View File

@ -34,6 +34,7 @@ La documentation est disponible dans d'autres langues :
user/errors_during_fetching
user/filters
user/tags
user/configuring_mobile
user/android
user/parameters
user/backup

View File

@ -69,7 +69,9 @@ Double authentification (2FA)
L'authentification à deux facteurs (également appelée 2FA) est une technologie brevetée en 1984
qui fournit l'identification des utilisateurs au moyen de la combinaison de deux composants différents .
https://fr.wikipedia.org/wiki/Authentification_forte
https://fr.wikipedia.org/wiki/Authentification_forte
**Attention**: l'activation de la 2FA depuis l'interface de configuration n'est possible que si elle a au préalable été autorisée dans `app/config/parameters.yml` en passant la propriété *twofactor_auth* à `true` (n'oubliez pas d'exécuter `php bin/console cache:clear -e=prod` après modification).
Si vous activez 2FA, à chaque tentative de connexion à wallabag, vous recevrez
un code par email. Vous devez renseigner ce code dans le formulaire suivant :

View File

@ -0,0 +1,12 @@
Configurer les applications mobile pour wallabag
================================================
Étapes pour configurer les applications
---------------------------------------
- Tout d'abord, *créez un nouveau client* dans la section ``Gestion des clients API``. Le nom de votre application importe peu. Ce qui nous intéresse, ce sont l'``ID Client`` et la ``clé secrète``. Notez bien ces deux valeurs.
- Quand vous installez une application smartphone, on va vous demander de renseigner l'adresse de votre serveur de wallabag. Par exemple, pour wallabag.it, c'est ``https://app.wallabag.it``.
- Les deux valeurs notées précédemment vous seront également demandées. Insérez-les dans les champs correspondants.
- Enfin, vous devez renseigner votre ``nom d'utilisateur`` et votre ``mot de passe``. Ce sont les mêmes valeurs que lorsque vous vous connectez à wallabag.
Vous pouvez également regarder du côté de la page `Android <android.html>`_. Particulièrement la section sur les *limitations connues*.

View File

@ -107,6 +107,12 @@ Virtual hosts
Configuration avec Apache
~~~~~~~~~~~~~~~~~~~~~~~~~
N'oubliez pas d'activer le mod *rewrite* de Apache
.. code-block:: bash
a2enmod rewrite && systemctl reload apache2
En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag`` et que vous utilisiez PHP comme un module Apache, voici un vhost pour wallabag :
::
@ -147,6 +153,24 @@ En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wall
CustomLog /var/log/apache2/wallabag_access.log combined
</VirtualHost>
.. tip:: Pour Apache 2.4, dans la section `<Directory /var/www/wallabag/web>` vous devez remplacer les directives suivantes :
::
AllowOverride None
Order Allow,Deny
Allow from All
par
::
Require All granted
Après que vous ayez rechargé/redémarré Apache, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld.
Configuration avec Nginx

View File

@ -13,6 +13,15 @@ Mettre à jour de la 2.1.x à la 2.2.x
Mise à jour sur un serveur dédié
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
**Depuis 2.1.x:**
::
make update
php bin/console doctrine:migrations:migrate --no-interaction -e=prod
**Depuis 2.2.0:**
::
make update
@ -52,7 +61,7 @@ Téléchargez la dernière version de wallabag :
.. code-block:: bash
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
Vous trouverez `le hash md5 du dernier package sur notre site <https://www.wallabag.org/pages/download-wallabag.html>`_.

55
docs/it/conf.py Normal file
View File

@ -0,0 +1,55 @@
# -*- coding: utf-8 -*-
#
# wallabag documentation build configuration file, created by
# sphinx-quickstart on Fri Oct 16 06:47:23 2015.
import sys
import os
extensions = []
templates_path = ['_templates']
source_suffix = '.rst'
master_doc = 'index'
project = u'wallabag'
copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
version = '2.1.0'
release = version
exclude_patterns = ['_build']
pygments_style = 'sphinx'
html_theme = 'default'
html_static_path = ['_static']
htmlhelp_basename = 'wallabagdoc'
latex_elements = {
}
latex_documents = [
('index', 'wallabag.tex', u'wallabag Documentation',
u'Nicolas Lœuillet', 'manual'),
]
man_pages = [
('index', 'wallabag', u'wallabag Documentation',
[u'Nicolas Lœuillet'], 1)
]
texinfo_documents = [
('index', 'wallabag', u'wallabag Documentation',
u'Nicolas Lœuillet', 'wallabag', 'wallabag is an opensource read-it-later.',
'Miscellaneous'),
]
##### Guzzle sphinx theme
import guzzle_sphinx_theme
html_translator_class = 'guzzle_sphinx_theme.HTMLTranslator'
html_theme_path = guzzle_sphinx_theme.html_theme_path()
html_theme = 'guzzle_sphinx_theme'
# Custom sidebar templates, maps document names to template names.
html_sidebars = {
'**': ['logo-text.html', 'globaltoc.html', 'searchbox.html']
}
# Register the theme as an extension to generate a sitemap.xml
extensions.append("guzzle_sphinx_theme")

269
docs/it/developer/api.rst Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,162 @@
Compiti Asincroni
=================
Per avviare compiti asincroni (utile ad esempio per grandi importazioni), Possiamo usare RabbitMQ o Redis.
Installare RabbitMQ per compiti asincroni
-----------------------------------------
Requisiti
^^^^^^^^^
Dovete avere RabbitMQ installato sul vostro server.
Installazione
^^^^^^^^^^^^^
.. code:: bash
wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
apt-key add rabbitmq-signing-key-public.asc
apt-get update
apt-get install rabbitmq-server
Configurazione ed avvio
^^^^^^^^^^^^^^^^^^^^^^^
.. code:: bash
rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
rabbitmq-server -detached
Fermare RabbitMQ
^^^^^^^^^^^^^^^^
.. code:: bash
rabbitmqctl stop
Configurare RabbitMQ in wallabag
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Modificate il vostro file ``app/config/parameters.yml`` per modificare la configurazione di RabbitMQ. Quella di default dovrebbe andare bene:
.. code:: yaml
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
rabbitmq_prefetch_count: 10 # read http://www.rabbitmq.com/consumer-prefetch.html
Abilitare RabbitMQ su wallabag
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Su Strumenti, nella sezione **Importa**, abilitate RabbitMQ (con il valore 1).
Avviare RabbitMQ consumer
^^^^^^^^^^^^^^^^^^^^^^^^^
Dipendendo da quale servizio vogliate importare, dovrete abilitare uno (o più se volete supportare molti) o più cronjob:
.. code:: bash
# per importare da Pocket
bin/console rabbitmq:consumer -e=prod import_pocket -w
# per importare da Readability
bin/console rabbitmq:consumer -e=prod import_readability -w
# per importare da Instapaper
bin/console rabbitmq:consumer -e=prod import_instapaper -w
# per importare da wallabag v1
bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
# per importare da wallabag v2
bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
# per importare da Firefox
bin/console rabbitmq:consumer -e=prod import_firefox -w
# per importare da Chrome
bin/console rabbitmq:consumer -e=prod import_chrome -w
Installare Redis per compiti asincroni
--------------------------------------
Per avviare compiti asincroni (utile ad esempio per grandi importazioni), Possiamo usare Redis.
Requisiti
^^^^^^^^^
Dovete avere Redis installato sul vostro server.
Installazione
^^^^^^^^^^^^^
.. code:: bash
apt-get install redis-server
Avvio
^^^^^
Il server dovrebbe già essere attivo dopo l'installazione, altrimenti potete avviarlo usando:
.. code:: bash
redis-server
Configurare Redis su wallabag
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Modificate il vostro file ``app/config/parameters.yml`` per modificare la configurazione di Redis. Quella di default dovrebbe andare bene:
.. code:: yaml
redis_host: localhost
redis_port: 6379
Abilitare Redis su wallabag
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Su Strumenti, nella sezione **Importa**, abilitate Redis (con il valore 1).
Avviare Redis consumer
^^^^^^^^^^^^^^^^^^^^^^
Dipendendo da quale servizio vogliate importare, dovrete abilitare uno (o più se volete supportare molti) o più cronjob:
.. code:: bash
# per importare da Pocket
bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
# per importare da Readability
bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
# per importare da Instapaper
bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
# per importare da wallabag v1
bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
# per importare da wallabag v2
bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
# per importare da Firefox
bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
# per importare da Chrome
bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log
Se volete avviare l'importazione solamente per alcuni messaggi e non tutti, potete specificare questo numero (qui 12) e il programma si fermerà dopo il dodicesimo messaggio:
.. code:: bash
bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12

View File

@ -0,0 +1,41 @@
Eseguite wallabag in docker-compose
===================================
Per eseguire la vostra propria istanza di sviluppo di wallabag, dovreste usare i file docker compose preconfigurati.
Requisiti
---------
Assicuratevi di avere `Docker
<https://docs.docker.com/installation/ubuntulinux/>` e `Docker
Compose <https://docs.docker.com/compose/install/>`__ disponibili sul vostro sistema e aggiornati.
Cambiate DBMS
-------------
Per default, wallabag inizierá con un database SQLite.
Visto che wallabag supporta Postgresql e MySQL, i container di docker sono disponibili anche per questi.
In ``docker-compose.yml``, per il DBMS scelto, togliete i commenti:
- la definizione del container (blocco a livello root ``postgres`` o ``mariadb``)
- il link del container nel container``php``
- il file env del container nel container ``php``
Per far continuare ad eseguire i comandi Symfony sul vostro host (come ``wallabag:install``), dovreste anche:
- caricare i file env appropriati sulla vostra riga di comando, in modo che possano esistere variabili come ``SYMFONY__ENV__DATABASE_HOST``.
- creare un ``127.0.0.1 rdbms`` sul vostro file di sistema ``hosts``
Eseguite wallabag
-----------------
#. Fate un fork o clonate il progetto
#. Modificate ``app/config/parameters.yml`` per rimpiazzare le proprietá di ``database_*`` con quelle commentate (con valori con prefisso ``env.``)
#. ``composer install`` per installare le dipendenze del progetto
#. ``php bin/console wallabag:install`` per creare lo schema
#. ``docker-compose up`` per eseguire i containers
#. Infine, andate su http://localhost:8080/ per trovare il vostro wallabag appena installato.
Durante i vari passi potreste incontrare problemi di permessi UNIX, percorsi sbagliati nella cache generata, etc...
Operazioni come cambiare i file della cache o cambiare i proprietari dei file potrebbero essere richiesto frequentemente, per cui non abbiate paura!

View File

@ -0,0 +1,12 @@
Contribuite a questa documentazione
===================================
Le fonti della nostra documentazione sono qui https://github.com/wallabag/wallabag/tree/master/docs
Usiamo `ReadTheDocs
<https://readthedocs.org>`__ per generarla.
Le pagine sono scritte nel formato `Restructured Text
<https://en.wikipedia.org/wiki/ReStructuredText>`__. Potete usare strumenti online come http://rst.aaroniles.net/ o http://rst.ninjs.org/ per vedere un'anteprima dei vostri articoli.
Se create una nuova pagina, non scordatevi di modificare il file `index.rst <https://raw.githubusercontent.com/wallabag/wallabag/master/docs/en/index.rst>`__ per aggiungere un link nella barra laterale.

View File

@ -0,0 +1,52 @@
Articoli dietro ad un paywall
=============================
wallabag puó acquisire articoli da siti web che usano un sistema paywall
Abilitate l'autenticazione paywall
----------------------------------
Su impostazioni interne, nella sezione **Articolo**, abilitate l'autenticazione per siti con paywall (con il valore 1).
Configurate le credenziali in wallabag
--------------------------------------
Modificate il vostro file ``app/config/parameters.yml`` per modificare le credenziali per ogni sito con paywall. Ecco un esempio di alcuni siti francesi:
.. code:: yaml
sites_credentials:
mediapart.fr: {username: "myMediapartLogin", password: "mypassword"}
arretsurimages.net: {username: "myASILogin", password: "mypassword"}
.. note::
These credentials will be shared between each user of your wallabag instance.
Fate il parsing dei file di configurazione
------------------------------------------
Leggete `questa parte della documentazione *link mancante*` per capire i file di configurazione.
Ogni file di configurazione del parsing deve essere migliorato aggiungendo ``requires_login``, ``login_uri``, ``login_username_field``, ``login_password_field`` e ``not_logged_in_xpath``.
Fate attenzione, il modulo di login deve essere nel contenuto della pagina quando wallabag lo carica. É impossibile per wallab essere autenticato su un sito dove il modulo di login é caricato dopo la pagina (da ajax per esempio).
``login_uri`` é l'URL di azione del modulo (l'attributo ``action`` del modulo).
``login_username_field`` é l'attributo ``name`` nel campo di login.
``login_password_field`` é l'attributo ``name`` nel campo password.
Per esempio:
.. code::
title://div[@id="titrage-contenu"]/h1[@class="title"]
body: //div[@class="contenu-html"]/div[@class="page-pane"]
requires_login: yes
login_uri: http://www.arretsurimages.net/forum/login.php
login_username_field: username
login_password_field: password
not_logged_in_xpath: //body[@class="not-logged-in"]

View File

@ -0,0 +1,6 @@
Testsuite
=========
Per assicurare la qualità di sviluppo di wallabag, abbiamo scritto i test con `PHPUnit <https://phpunit.de>`_.
Se contribuite al progetto (traducendo l'applicazione, risolvendo i bug o aggiungendo nuove funzioni), si prega di scrivere i propri test.
Per avviare la testsuite di wallabag dovete installare `ant <http://ant.apache.org>`_. Poi, eseguite il comando ``make test``.

View File

@ -0,0 +1,55 @@
Tradurre wallabag
=================
wallabag web app
----------------
File per la traduzione
~~~~~~~~~~~~~~~~~~~~~~
.. note::
Visto che wallabag é principalmente sviluppato da un team francese, si prega di considerare che la traduzione francese é la più aggiornata, e si prega di copiarla e di creare la vostra propria traduzione.
Potete trovare qui i file per la traduzione:
https://github.com/wallabag/wallabag/tree/master/src/Wallabag/CoreBundle/Resources/translations.
Dovrete creare ``messages.CODE.yml`` e ``validators.CODE.yml``, dove CODE é il codice ISO 639-1 della vostra lingua (`guardate wikipedia <https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes>`__).
Altri file da tradurre:
- https://github.com/wallabag/wallabag/tree/master/app/Resources/CraueConfigBundle/translations.
- https://github.com/wallabag/wallabag/tree/master/src/Wallabag/UserBundle/Resources/translations.
Dovete creare i file ``THE_TRANSLATION_FILE.CODE.yml``.
File di configurazione
~~~~~~~~~~~~~~~~~~~~~~
Dovete modificare `app/config/config.yml
<https://github.com/wallabag/wallabag/blob/master/app/config/config.yml>`__ per mostrare il vostro linguaggio nella pagina di configurazione di wallabag (per consentire agli utenti di passare a questa nuova traduzione).
Nella sezione ``wallabag_core.languages``, dovete aggiungere una nuova linea con la vostra traduzione. Per esempio:
::
wallabag_core:
...
languages:
en: 'English'
fr: 'Français'
Nella prima colonna (``en``, ``fr``, etc.), dovete aggiungere il codice ISO 639-1 della vostra lingua (vedete sopra).
Nella seconda colonna, aggiungete solamente il nome della vostra lingua.
documentazione di wallabag
--------------------------
.. note::
Contrariamente alla web app, il linguaggio principale per la documentazione é l'inglese.
I file della documentazione sono memorizzati qui: https://github.com/wallabag/wallabag/tree/master/docs
Dovete rispettare la struttura della cartella ``en`` quando create la vostra traduzione.

53
docs/it/index.rst Normal file
View File

@ -0,0 +1,53 @@
Documentazione di wallabag
--------------------------
.. image:: ../img/wallabag.png
:alt: wallabag logo
:align: center
**wallabag** è un'applicazione read-it-later: salva una pagina web lasciando solamente il contenuto. Elementi come comandi di navigazione o pubblicità sono rimossi.
La documentazione principale per quest'applicazione è organizzata in un paio di sezioni:
* :ref:`user-docs`
* :ref:`dev-docs`
La documentazione è disponibile anche in altre lingue:
* `Documentation en français <http://doc.wallabag.org/fr/master/>`_
* `Dokumentation in Deutsch <http://doc.wallabag.org/de/master/>`_
* `Documentation in English <http://doc.wallabag.org/en/master/>`_
.. _user-docs:
.. toctree::
:maxdepth: 2
:caption: User documentation
user/installation
user/upgrade
user/configuration
user/import
user/create_account
user/articles
user/errors_during_fetching
user/filters
user/tags
user/configuring_mobile
user/android
user/parameters
user/backup
user/faq
.. _dev-docs:
.. toctree::
:maxdepth: 2
:caption: Developer documentation
developer/api
developer/docker
developer/paywall
developer/documentation
developer/translate
developer/asynchronous

2
docs/it/requirements.txt Normal file
View File

@ -0,0 +1,2 @@
Sphinx>=1.3.0,<1.4.0
guzzle_sphinx_theme>=0.7.0,<0.8.0

107
docs/it/user/android.rst Normal file
View File

@ -0,0 +1,107 @@
Applicazione Android
====================
Scopo di questo documento
-------------------------
Questo documento spiega come configurare la vostra applicazione Android in modo che funzioni con la vostra istanza di wallabag. Non vi é differenza in questa procedura sia per wallabag v1 che per v2.
Passi per configurare la vostra app
-----------------------------------
Quando aprirete l'app per la prima volta, vedrete una schermata di benvenuto dove vi si consiglia per prima cosa di configurare l'app per la vostra istanza di wallabag.
.. image:: ../../img/user/android_welcome_screen.en.png
:alt: Welcome screen
:align: center
Confermate semplicemente quel messaggio e verrete reindirizzati alla schermata delle impostazioni.
.. image:: ../../img/user/android_configuration_screen.en.png
:alt: Settings screen
:align: center
Inserite i vostri dati di wallabag. Dovrete inserire il vostro indirizzo di wallabag. **É importante che questo URL non finisca con una barra**. Inserite anche le vostre credenziali nei campi user name e password.
.. image:: ../../img/user/android_configuration_filled_in.en.png
:alt: Filled in settings
:align: center
Dopo aver completato l'inserimento dei dati, premete il bottone Connection test e aspettate che il test finisca.
.. image:: ../../img/user/android_configuration_connection_test.en.png
:alt: Connection test with your wallabag data
:align: center
Il test di connessione dovrebbe finire con successo. In caso contrario, dovrete prima risolvere questo problema fino a che possiate procedere.
.. image:: ../../img/user/android_configuration_connection_test_success.en.png
:alt: Connection test successful
:align: center
Dopo che il test sará avvenuto con successo, potrete premere il bottone per ottenere le credenziali del vostro feed. L'app cercherá di connettersi alla vostra istanza di wallabag e ottenere l'id utente e il token corrispondente per i feed.
.. image:: ../../img/user/android_configuration_get_feed_credentials.en.png
:alt: Getting the feed credentials
:align: center
Quando il processo di ottenimento delle credenziali del vostro feed sará concluso con successo, vedrete un messaggio toast, il quale avviserá che l'id utente ed il token sono stati inseriti nel modulo.
.. image:: ../../img/user/android_configuration_feed_credentials_automatically_filled_in.en.png
:alt: Getting feed credentials successful
:align: center
Ora dovrete scorrere fino alla fine del menu delle impostazioni. Ovviamente potrete cambiare le impostazioni in base alle vostre preferenze.
Terminate la configurazione della vostra app premendo il bottone per il salvataggio.
.. image:: ../../img/user/android_configuration_scroll_bottom.en.png
:alt: Bottom of the settings screen
:align: center
Dopo aver premuto il bottone apparirá la seguente schermata. L'app proporrá di iniziare il processo di sincronizzazione per aggiornare i vostri feed ed articoli. É raccomandato accettare quest'azione e premere Sí.
.. image:: ../../img/user/android_configuration_saved_feed_update.en.png
:alt: Settings saved the first time
:align: center
Alla fine, dopo che la sincronizzazione sará avvenuta con successo, apparirá la lista degli articoli non letti.
.. image:: ../../img/user/android_unread_feed_synced.en.png
:alt: Filled article list cause feeds successfully synchronized
:align: center
Limiti conosciuti
-----------------
Autenticazione a due fattori (2FA)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Attualmente l'applicazione Android non supporta l'autenticazione a due fattori. Dovreste disabilitare questa opzione in modo da far funzionare l'applicazione.
Quantitá limitata di articoli con wallabag v2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nella vostra istanza web di wallabag potete configurare quanti oggetti sono parte del feed RSS. Questa opzione non esisteva in wallabag v1, dove tutti gli articoli erano parte del feed. Quindi se imposterete il numero di articoli da visualizzare maggiore del numero di oggetti che sono contenuti nel vostro feed RSS, vedrete solamente il numero di oggetti nel vostro feed RSS.
Crittografia SSL/TLS
~~~~~~~~~~~~~~~~~~~~
Se potete raggiungere la vostra istanza web di wallabag via HTTPS, dovreste usare quest'ultimo, in particolar modo se il vostro URL HTTP vi reindirizza a quello HTTPS. Attualmente l'app non puó gestire propriamente il reindirizzamento.
Riferimenti
-----------
- `Codice sorgente dell'applicazione Android <https://github.com/wallabag/android-app>`_
- `Applicazione Android su F-Droid <https://f-droid.org/repository/browse/?fdfilter=wallabag&fdid=fr.gaulupeau.apps.InThePoche>`_
- `Applicazione Android su Google Play <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_

115
docs/it/user/articles.rst Normal file
View File

@ -0,0 +1,115 @@
Articoli
========
Salvate il vostro primo articolo
--------------------------------
Il proposito principale di wallabag é di salvare articoli web, e potete farlo in molti modi. Se pensate che l'articolo sia mostrato in modo sbagliato, `potete leggere questa documentazione`_.
Usando un bookmarklet
^^^^^^^^^^^^^^^^^^^^^
Nella pagina ``Howto`` avete una sezione ``Bookmarklet``. Trascinate il link ``bag it!`` sulla barra dei preferiti del vostro browser.
Ora, ogni volta che leggiate un articolo sul web e vogliate salvarlo, cliccate sul link ``bag it!`` sulla vostra barra dei preferiti. L'articolo é salvato.
Usando la maniera classica
^^^^^^^^^^^^^^^^^^^^^^^^^^
Sulla barra in alto del vostro schermo avete 3 icone. Con la prima, un simbolo "piú", potrete salvare facilmente un articolo.
.. image:: ../../img/user/topbar.png
:alt: Top bar
:align: center
Cliccateci sopra per mostrare un nuovo campo, inserite in quest'ultimo la URL dell'articolo e premete il tasto ``Return``. L'articolo é salvato.
Usando un add-on del browser
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Firefox
"""""""
Potete scaricare `qui l'addon per Firefox <https://addons.mozilla.org/firefox/addon/wallabag-v2/>`_.
Chrome
""""""
Potete scaricare `qui l'addon per Chrome <https://chrome.google.com/webstore/detail/wallabagger/gbmgphmejlcoihgedabhgjdkcahacjlj?hl=fr>`_.
Usando la vostra applicazione per smartphone
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Android
"""""""
Potete scaricare `qui l'applicazione per Android <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_.
Windows Phone
"""""""""""""
Potete scaricare `qui l'applicazione per Windows Phone <https://www.microsoft.com/store/apps/9nblggh5x3p6>`_.
Scaricate i vostri articoli
---------------------------
Potete scaricare ogni articolo in vari formati: ePUB, MOBI, PDF, XML, JSON, CSV.
Sulla vista dell'articolo, cliccate su questa icona, nella barra laterale:
.. image:: ../../img/user/download_article.png
:alt: download article
:align: center
Potete anche scaricare una categoria completa di articoli (unread, starred, archive) in questi formati. Per esempio, nella vista **Unread**, cliccate su questa icona sulla barra superiore:
.. image:: ../../img/user/download_articles.png
:alt: download articles
:align: center
Condividete i vostri articoli
-----------------------------
Quando leggete un articolo, potete condividerlo. Cliccate semplicemente sul bottone di condivisione:
.. image:: ../../img/user/share.png
:alt: share article
:align: center
Ora potete condividere l'articolo:
- attraverso una URL pubblica (avrete una vista semplificata dell'articolo)
- attraverso un tweet
- nel vostro Shaarli
- attraverso un post su Diaspora*
- su Carrot
- attraverso un'email
Annotate i vostri articoli
--------------------------
in ogni articolo che leggiate potete scrivere delle note. É piú facile da capire con delle immagini.
Selezionate la parte dell'articolo che volete annotare e cliccate sulla matita:
.. image:: ../../img/user/annotations_1.png
:alt: Select your text
:align: center
Scrivete poi la vostra nota:
.. image:: ../../img/user/annotations_2.png
:alt: Write your annotation
:align: center
Il testo é ora sottolineato e potrete leggere la vostra nota muovendo il cursore su di esso.
.. image:: ../../img/user/annotations_3.png
:alt: Read your annotation
:align: center
Potete creare quante note vogliate.

30
docs/it/user/backup.rst Normal file
View File

@ -0,0 +1,30 @@
Eseguire il backup di wallabag
==============================
Siccome a volte potreste commettere errori con il vostro wallabag e perdere i vostri dati, oppure in caso dobbiate spostare il vostro wallabag su un altro server, dovete fare un backup dei vostri dati.
Impostazioni base
-----------------
wallabag memorizza alcuni parametri base (come il server SMTP o il backend del database) nel file `app/config/parameters.yml`.
Database
--------
Per il fatto che wallabag supporta vari tipi di database, il modo di eseguire backup dipende dal database che stiate usando, quindi dovrete fare riferimento alla documentazione del venditore.
Ecco alcuni esempi:
- MySQL: http://dev.mysql.com/doc/refman/5.7/en/backup-methods.html
- PostgreSQL: https://www.postgresql.org/docs/current/static/backup.html
SQLite
~~~~~~
Per eseguire il backup di un database SQLite, dovete semplicemente copiare la directory `data/db` dalla directory dell'applicazione wallabag.
Immagini
--------
Le immagini recuperate da wallabag sono memorizzate in `web/assets/images` (la memoria delle immagini sará implementata in wallabag 2.2).

View File

@ -0,0 +1,103 @@
Configurazione
==============
Ora che siete acceduti, é ora di configurare il vostro account come volete.
cliccate sul menu ``Configurazione``. Avrete cinque tab: ``Impostazioni``, ``RSS``, ``Informazioni utente``, ``Password`` e ``Regole di tagging``.
Impostazioni
------------
Tema
~~~~
wallabag é personalizzabile. Potete scegliere il vostro tema preferito qui. Il tema di default é ``Material``, é il tema usato nelle immagini della documentazione.
Oggetti per pagina
~~~~~~~~~~~~~~~~~~
Potete cambiare il numero di articoli mostrati su ogni pagina.
Velocitá di lettura
~~~~~~~~~~~~~~~~~~~
wallabag calcola un tempo di lettura per ogni articolo. Potete definire qui, grazie a questa lista, se siete dei lettori lenti of veloci. wallabag ricalcolerá il tempo di lettura per ogni articolo.
Lingua
~~~~~~
Potete cambiare la lingua dell'interfaccia di wallabag.
RSS
---
wallabag offre feed RSS per ogni stato dell'articolo: non letto, preferito e archiviato.
Per prima cosa dovete creare un token personale: cliccate su ``Crea il tuo token``. É possibile cambiare il proprio token cliccando su ``Rigenera il tuo token``.
Ora avrete tre link, uno per ogni stato: aggiungeteli al vostro lettore RSS preferito.
Potete anche definire quanti articoli volete nel vostro feed RSS (valore di default: 50)-
Informazioni dell'utente
------------------------
Potete cambiare il vostro nome, il vostro indirizzo email e abilitare l'``Autenticazione a due fattori``.
Autenticazione a due fattori (2FA)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L'autenticazione a due fattori (conosciuta anche come 2FA) é una tecnologia brevettata nel 1984 che offre l'identificazione degli utenti tramite una combinazione di due componenti differenti.
https://it.wikipedia.org/wiki/Autenticazione_a_due_fattori
**Attenzione**: abilitare la 2FA dall'interfaccia di configurazione è possibile solamente se ciò è stato abilitato precedentemente in app/config/parameters.yml impostando la proprietà twofactor_auth su true (non dimenticate di eseguire il comando `php bin/console cache:clear -e=prod` dopo la modifica).
Se abilitate la 2FA, ogni volta che vogliate accedere a wallabag, riceverete un codice via email. Dovrete inserire il codice nel seguente modulo.
.. image:: ../../img/user/2FA_form.png
:alt: Two factor authentication
:align: center
Se non volete ricevere il codice ogni volta che vogliate accedere, potete spuntare la casella ``I'm on a trusted computer``: wallabag vi ricorderá per 15 giorni.
Password
--------
Qui potete cambiare la password (minimo 8 caratteri)
Regole di tagging
-----------------
Se volete assegnare un tag ai nuovi articoli, questa parte della configurazione fa per voi.
Cosa significa « regole di tagging » ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sono regole usate da wallabag per etichettare i nuovi articoli. Ogni volta che un nuovo articolo viene aggiunto, verranno usate tutte le regole di tagging per aggiungere le etichette che avete configurato, risparmiandovi quindi il lavoro di classificare manualmente i vostri articoli.
Come le uso?
~~~~~~~~~~~~
Immaginiamo che vogliate taggare un contenuto come *« lettura corta »* quando il tempo di lettura è inferiore ai 3 minuti. In questo caso, dovreste mettere « readingTime <= 3 » nel campo **Regola**
e *« lettura corta »* nel campo **Tag**. Molte etichette possono essere aggiunte simultaneamente separandole con una virgola: *« lettura corta, da leggere »*.
Si possono scrivere regole complesse usando gli operatori predefiniti:
se *« readingTime >= 5 AND domainName = "github.com" »* allora etichetta come *« lettura lunga, github »*.
Quali variabili ed operatori posso usare per scrivere le regole?
I seguenti operatori e variabili possono essere usati per creare regole di tagging (attenzione, per alcuni valori, dovete aggiungere le virgolette, per esempio ``language = "en"``):
=========== ============================================== ========= ===========
Variabile Significato Operatore Significato
----------- ---------------------------------------------- --------- -----------
title Titolo dell'articolo <= Minore di…
url URL dell'articolo < Strettamente minore di…
isArchived Se l'articolo é archiviato o no => Maggiore di…
isStarred Se l'articolo é preferito o no > Strettamente maggiore di…
content Il contenuto dell'articolo = Uguale a…
language La lingua dell'aritcolo != Diverso da…
mimetype The entry's mime-type OR Una regola o l'altra
readingTime Il tempo di lettura dell'articolo stimato AND Una regola e l'altra
domainName Il nome del dominio dell'articolo matches Vede se un soggetto corrisponde alla ricerca (indipendentemente dal maiuscolo o minuscolo). Esempio: titolo corrisponde a "football"
=========== ============================================== ======== ==========

View File

@ -0,0 +1,12 @@
Configurare le app mobili in modo che funzionino con wallabag
=============================================================
Passi per configurare l'app
---------------------------
- Per prima cosa *create un nuovo client* nella sezione ``API clients management``. Il nome della vostra app non importa quanto il ``Client ID`` ed il ``Client secret``. Segnatevi questi due valori.
- Quando scaricate un'app mobile, questa chiederà l'indirizzo del server dell'istanza di wallabag ospitata. Per esempio, con wallabag.it questo è: ``https://app.wallabag.it``.
- Chiederà anche i sopracitati ``Client ID`` e ``secret``. Si prega di inserirli nei campi di testo, quando richiesto.
- Infine dovrete fornire il vostro ``username`` e la vostra ``password``. Queste sono le stesse credenziali che usate per fare il login in wallabag.
Si prega anche di guardare la pagina `Android <android.html>`_. Specialmente la sezione *Limiti conosciuti*.

View File

@ -0,0 +1,38 @@
Creazione di un account e autenticazione
========================================
Registrazione
-------------
Sulla pagina di login, cliccate sul bottone ``Register``
.. image:: ../../img/user/registration_form.png
:alt: Registration form
:align: center
Dovrete completare il modulo. Assicuratevi di inserire un indirizzo email valido, quindi vi invieremo un'email di attivazione.
.. image:: ../../img/user/sent_email.png
:alt: Email was sent to activate account
:align: center
Controllate la vostra casella, in cui avrete una nuova mail con un link che assomiglia a questo ``http://wallabag/register/confirm/Ba19wokGovN-DdBQNfg4YgRkUQWRP4-k2g0Bk-hBTX4``. Cliccateci sopra per attivare il vostro account.
Il vostro account é ora attivo
.. image:: ../../img/user/activated_account.png
:alt: Welcome on board!
:align: center
Login
-----
Il vostro account é ora abilitato, congratulazioni!
Se siete sul vostro computer personale e volete restare connessi, spuntate la casella ``Keep me logged in``: wallabag vi ricorderá per un anno.
.. image:: ../../img/user/login_form.png
:alt: Login form
:align: center

View File

@ -0,0 +1,37 @@
Errori durante l'ottenimento degli articoli
===========================================
Perché l'ottenimento di un articolo fallisce?
---------------------------------------------
Ci possono essere varie ragioni:
- problema del network
- wallabag non può ottenere il contenuto a causa della struttura del sito web
Potete provare a risolvere il problema da soli ( in modo che noi possiamo concentrarci nel migliorare wallabag internamente invece di scrivere siteconfig
:) ).
Potete provare a vedere se funziona qui: `http://f43.me/feed/test <http://f43.me/feed/test>`_ (usa quasi lo stesso sistema per ottenere contenuto).
Se funziona lì e non su wallabag, significa che c'è qualcosa all'interno di wallabag che causa il malfunzionamento del parser (difficile da aggiustare: si prega di riportare il problema).
Se non funziona, provate a estrarre un site config usando: `http://siteconfig.fivefilters.org/ <http://siteconfig.fivefilters.org/>`_ (seleziona quale parte del contenuto é effettivamente contenuto). Potete `leggere prima questa documentazione <http://help.fivefilters.org/customer/en/portal/articles/223153-site-patterns>`_.
Potete testarlo sul sito **f43.m3**: cliccate su **Want to try a custom siteconfig?** e inseritvi il file generato in and put the generated file from siteconfig.fivefilters.org.
Ripetete finché non avrete qualcosa di buono.
Potete poi inviare una pull request a `https://github.com/fivefilters/ftr-site-config <https://github.com/fivefilters/ftr-site-config>`_ il quale é il repository ufficiale per i file siteconfig.
Come posso provare a riottenere questo articolo?
------------------------------------------------
Se wallabag ha fallito a ottenere l'articolo, potete cliccare sul bottone di ricaricamento (il terzo bottone nella figura sottostante).
.. image:: ../../img/user/refetch.png
:alt: Refetch content
:align: center

53
docs/it/user/faq.rst Normal file
View File

@ -0,0 +1,53 @@
Domande frequenti
=================
Durante l'installazione ho riscontrato l'errore ``Error Output: sh: 1: @post-cmd: not found``
---------------------------------------------------------------------------------------------
Sembra che ci sia un problema con la vostra installazione di ``composer``. Provate a disinstallarlo e reinstallarlo.
`Leggete la documentazione su composer per sapere come installarlo
<https://getcomposer.org/doc/00-intro.md>`__.
Non riesco a convalidare il modulo di registrazione
---------------------------------------------------
Assicuratevi che tutti i campi siano riempiti correttamente:
* indirizzo email valido
* stessa password nei due campi
Non riesco a ricevere la mia mail di attivazione
------------------------------------------------
Siete sicuri che il vostro indirizzo email sia corretto? avete controllato la cartella di spam?
Se ancora non vedete la mail di attivazione, assicuratevi di aver installato e configurato a dovere un mail transfer agent. Assicuratevi di includere una regola del firewall per SMTP. Per esempio, se usate firewalld:
::
firewall-cmd --permanent --add-service=smtp
firewall-cmd --reload
Infine, se avete SELinux abilitato, impostate la seguente regola:
``setsebool -P httpd_can_sendmail 1``
Quando clicco il link di attivazione, mi appare questo messaggio: ``L'utente con token di conferma "DtrOPfbQeVkWf6N" non esiste``.
----------------------------------------------------------------------------------------------------------------------------------
Avete giá attivato il vostro account oppure l'URL dell'email di attivazione é sbagliato.
Ho dimenticato la mia password
------------------------------
Potete ripristinare la password cliccando il link``Hai dimenticato la password?``, nella pagina di login. Quindi, riempite il modulo con la vostra email o il vostro username e riceverete un'email per ripristinare la vostra password.
Ho riscontrato l'errore ``failed to load external entity`` cercando di installare wallabag
------------------------------------------------------------------------------------------
Come descritto `qui <https://github.com/wallabag/wallabag/issues/2529>`_, modificate il vostro file ``web/app.php`` ed aggiungete questa linea: ``libxml_disable_entity_loader(false);`` sulla linea 5.
Questo é un bug di Doctrine / PHP, non possiamo farci nulla.

45
docs/it/user/filters.rst Normal file
View File

@ -0,0 +1,45 @@
Trovate i vostri articoli grazie ai filtri
------------------------------------------
Per trovare facilmente gli articoli, potete usare i filtri.
.. image:: ../../img/user/topbar.png
:alt: Top bar
:align: center
Tutti questi filtri possono essere combinati.
.. image:: ../../img/user/filters.png
:alt: Combine all filters
:align: center
Stato
-----
Usate queste caselle per trovare articoli archiviati o preferiti.
Immagine di anteprima
---------------------
Selezionate questo filtro se volete trovare articoli con un'immagine di anteprima.
Lingua
------
wallabag (attraverso graby) puó individuare la lingua di un articolo. É facile per voi trovare articoli scritti in una lingua specifica.
Tempo di lettura
----------------
wallabag stima quanto tempo é necessario per leggere un articolo. Con questo filtro potete, per esempio, trovare articoli con un tempo di lettura compreso fra 2 e 5 minuti.
Nome di dominio
---------------
Grazie a questo filtro potete trovare articoli dallo stesso nome di dominio. Per esempio, scrivete in questo campo ``bbc.co.uk`` per trovare gli articoli di questo sito.
Data di creazione
-----------------
Quando salvate un articolo, wallabag memorizza la data corrente. ció é comodo, per esempio, per trovare articoli salvati tra il primo ed il 31 di Gennaio.

115
docs/it/user/import.rst Normal file
View File

@ -0,0 +1,115 @@
Migrare da...
=============
In wallabag 2.x, potete importare dati da:
- `Pocket <#id1>`_
- `Readability <#id2>`_
- `Instapaper <#id4>`_
- `wallabag 1.x <#id6>`_
- `wallabag 2.x <#id7>`_
Abbiamo anche sviluppato `uno script per eseguire migrazioni tramite la linea di comando <#import-via-command-line-interface-cli>`_.
Poiché le importazioni possono richiedere molto tempo, abbiamo sviluppato un sistema di compiti asincroni. *inserisci qui link una volta tradotto articolo su asynchronous*
Pocket
------
Creare una nuova applicazione su Pocket
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Per importare dati da Pocket usiamo l'API di Pocket. Dovete creare una nuova applicazione sul loro sito per sviluppatori per continuare.
* Create una nuova applicazione `sul sito per sviluppatori <https://getpocket.com/developer/apps/new>`_
* Riempite i campi richiesti: nome dell'applicazione, descrizione dell'applicazione, permessi (solo **retrieve**), piattaforma (**web**), accettate i termini di servizio ed inviate la vostra nuova applicazione
Pocket vi dará una **Consumer Key** (per esempio, `49961-985e4b92fe21fe4c78d682c1`). Dovete configurare la ``pocket_consumer_key`` dal menu ``Config``.
Ora é tutto pronto per migrare da Pocket.
Importate i vostri dati su wallabag 2.x
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Cliccate sul link `Importa` nel menu, su `Importa contenuti` nella sezione Pocket e poi su ``Connetti a Pocket ed importa i dati``
Dovete autorizzare wallabag a interagire con il vostro account Pocket.
I vostri dati saranno importati. L'importazione di dati puó essere un processo esigente per il vostro server.
Instapaper
----------
Esportate i vostri dati di Instapaper
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sulla pagina delle impostazioni (`https://www.instapaper.com/user <https://www.instapaper.com/user>`_), cliccate su "Download .CSV file" nella sezione "Export". Verrá scaricato un file CSV (like ``instapaper-export.csv``).
Importate i vostri dati in wallabag 2.x
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Cliccate sul link `Importa` sul menu, poi su `Importa contenuti` nella sezione di Instapaper, quindi selezionate il vostro file CSV e caricatelo.
I vostri dati saranno importati. L'importazione di dati puó essere un'operazione esigente per il server.
wallabag 1.x
------------
Se state usando wallabag 1.x, dovete esportare i dati prima di migrare a wallabag 2.x, poiché l'applicazione ed il suo database sono cambiati molto. Potete esportare i vostri dati dalla vostra vecchia installazione di wallabag sulla pagina Config di questa.
.. image:: ../../img/user/export_v1.png
:alt: Exporting from wallabag v1
:align: center
.. nota::
Se avete account multipli nella stessa istanza di wallabag, ogni utente dovrá esportare da v1 ed importare su v2.
.. nota::
Se riscontrate problemi durante l'importazione o l'esportazione, non esitate a `chiedere supporto <https://www.wallabag.org/pages/support.html>`__.
Quando avrete ottenuto il file json contenente i vostri articoli, potrete installare wallabag v2 seguendo, se necessario, `la procedura standard *link mancante*.
Dopo aver creato un account utente sulla vostra nuova istanza di wallabag v2, dovete andare alla sezione `Importa` e selezionare `Importa da wallabag v1`. Selezionate il vostro file json e caricatelo.
.. image:: ../../img/user/import_wallabagv1.png
:alt: Import from wallabag v1
:align: center
wallabag 2.x
------------
Dalla istanza di wallabag precedente sulla quale eravate prima, andate su `Tutti gli articoli`, poi esportate questi articoli come json.
.. image:: ../../img/user/export_v2.png
:alt: Export depuis wallabag v2
:align: center
Dalla vostra nuova istanza di wallabag, create un account utente e cliccate sul link nel menu per procedere all'importazione. Scegliete di importare da wallabag v2 e selezionate il vostro file json per caricarlo.
.. nota::
Se riscontrate problemi durante l'importazione o l'esportazione, non esitate a `chiedere supporto <https://www.wallabag.org/pages/support.html>`__.
Importate dall'interfaccia a riga di comando (CLI)
--------------------------------------------------
Se avete un accesso CLI al vostro server web, potete eseguire questo comando per importare ció che avete esportato da wallabag v1:
::
bin/console wallabag:import 1 ~/Downloads/wallabag-export-1-2016-04-05.json --env=prod
Rimpiazzate i valori:
* ``1`` é l'identificatore utente nel database (l'ID del primo utente creato su wallabag é 1)
* ``~/Downloads/wallabag-export-1-2016-04-05.json`` é il percorso del file esportato da wallabag v1
Se volete segnare tutti questi articoli come giá letti, potete aggiungere l'opzione ``--markAsRead``.
Per importare un file di wallabag v2, dovete aggiungere l'opzione ``--importer=v2``.
Come risultato avrete questo messaggio:
::
Start : 05-04-2016 11:36:07 ---
403 imported
0 already saved
End : 05-04-2016 11:36:09 ---

View File

@ -0,0 +1,339 @@
Installa wallabag
=================
Requisiti
---------
wallabag é compatibile con PHP >= 5.5, incluso PHP 7.
.. nota::
Per installare facilmente wallabag vi forniamo un Makefile, dunque avrete bisogno dello strumento make.
wallabag utilizza un gran numero di librerie PHP per funzionare. Queste librerie vanno installate tramite uno strumento chiamato Composer. Dovete installarlo se non lo avete giá fatto e assicuratevi di usare la versione 1.2 ( se giá avete Composer, esegui il comando composer selfupdate).
Installa Composer:
::
curl -s http://getcomposer.org/installer | php
`Qui <https://getcomposer.org/doc/00-intro.md>`__ puoi trovare istruzioni specifiche.
Per far funzionare wallabag avrete anche bisogno delle seguenti estensioni. Alcune di queste dovrebbero essere giá attive nella vostra versione di PHP, per cui potrebbe non essere necessario installare tutti i pacchetti corrispondenti.
- php-session
- php-ctype
- php-dom
- php-hash
- php-simplexml
- php-json
- php-gd
- php-mbstring
- php-xml
- php-tidy
- php-iconv
- php-curl
- php-gettext
- php-tokenizer
- php-bcmath
wallabag usa PDO per connettersi, per cui avrete bisogno di uno dei seguenti:
-pdo_mysql
-pdo_sqlite
-pdo_pgsql
E il corrispondente database server.
Installazione
-------------
Su un web server dedicato (raccomandato)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Per installare wallabag stesso dovete eseguire i seguenti comandi:
::
git clone https://github.com/wallabag/wallabag.git
cd wallabag && make install
Per attivare il server incorporato di PHP e verificare che linstallazione sia andata a buon fine potete eseguire:
::
make run
E accedere a wallabag allindirizzo http://ipdeltuoserver:8000
.. consiglio::
Per definire i parametri con variabili dambiente é necessario impostare queste ultime con il prefisso ``SYMFONY_``. Per esempio, ``SYMFONY__DATABASE_DRIVER``. Puoi guardare la `documentazione di Symfony <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__ per maggiori informazioni.
A proposito di hosting condiviso
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Offriamo un pacchetto con tutte le dipendenze incluse. La configurazione di default usa SQLite per il database. Se volete cambiare queste impostazioni, modificate app/config/parameters.yml.
Abbiamo giá creato un utente: il login e la password sono wallabag.
.. attenzione:
Con questo pacchetto, wallabag non controlla le estensioni obbligatorie usate nellapplicazione (questi controlli sono fatti durante ``composer install`` quando hai un server web dedicato, vedi sopra).
Eseguite questo comando per scaricare ed estrarre il pacchetto piú aggiornato:
.. code-block:: bash
wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
Troverete il `hash md5 del pacchetto piú aggiornato sul nostro sito <https://www.wallabag.org/pages/download-wallabag.html>`_.
Ora leggete la seguente documentazione per creare il vostro host virtuale poi accedete al vostro wallabag. Se avete cambiato la configurazione del database per usare MySQL o PostrgreSQL, dovrete creare un utente con il comando php bin/console wallabag:install --env=prod .
Installazione con Docker
~~~~~~~~~~~~~~~~~~~~~~~~
Offriamo unimmagine Docker per installare wallabag facilmente. Guarda la nostra repository su `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ per maggiori informazioni.
Comando per avviare il container
.. code-block:: bash
docker pull wallabag/wallabag
Host virtuali
-------------
Configurazione su Apache
~~~~~~~~~~~~~~~~~~~~~~~~
Non dimenticate di attivare la mod *rewrite* di Apache
.. code-block:: bash
a2enmod rewrite && systemctl reload apache2
Assumendo che voi abbiate installato wallabag nella cartella ``/var/www/wallabag`` e che vogliate usare PHP come un modulo Apache, ecco un vhost per lapplicazione:
::
<VirtualHost *:80>
ServerName domain.tld
ServerAlias www.domain.tld
DocumentRoot /var/www/wallabag/web
<Directory /var/www/wallabag/web>
AllowOverride None
Order Allow,Deny
Allow from All
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
</Directory>
# uncomment the following lines if you install assets as symlinks
# or run into problems when compiling LESS/Sass/CoffeScript assets
# <Directory /var/www/wallabag>
# Options FollowSymlinks
# </Directory>
# optionally disable the RewriteEngine for the asset directories
# which will allow apache to simply reply with a 404 when files are
# not found instead of passing the request into the full symfony stack
<Directory /var/www/wallabag/web/bundles>
<IfModule mod_rewrite.c>
RewriteEngine Off
</IfModule>
</Directory>
ErrorLog /var/log/apache2/wallabag_error.log
CustomLog /var/log/apache2/wallabag_access.log combined
</VirtualHost>
Dopo aver riavviato o ricaricato Apache dovreste essere in grado di accedere a wallabag tramite lindirizzo http://domain.tld.
Configurazione su Nginx
~~~~~~~~~~~~~~~~~~~~~~~
Assumendo che abbiate installato wallabag nella cartella ``/var/www/wallabag``, ecco una ricetta per lapplicazione:
::
server {
server_name domain.tld www.domain.tld;
root /var/www/wallabag/web;
location / {
# try to serve file directly, fallback to app.php
try_files $uri /app.php$is_args$args;
}
location ~ ^/app\.php(/|$) {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
# When you are using symlinks to link the document root to the
# current version of your application, you should pass the real
# application path instead of the path to the symlink to PHP
# FPM.
# Otherwise, PHP's OPcache may not properly detect changes to
# your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
# for more information).
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
# Prevents URIs that include the front controller. This will 404:
# http://domain.tld/app.php/some-path
# Remove the internal directive to allow URIs like this
internal;
}
# return 404 for all other php files not matching the front controller
# this prevents access to other php files you don't want to be accessible.
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/wallabag_error.log;
access_log /var/log/nginx/wallabag_access.log;
}
Dopo aver riavviato o ricaricato Nginx dovreste essere in grado di accedere a wallabag tramite lindirizzo http://domain.tld.
Configurazione su lighttpd
~~~~~~~~~~~~~~~~~~~~~~~~~~
Assumendo che abbiate installato wallabag nella cartella /var/www/wallabag, ecco una ricetta per lapplicazione (modificate il vostro file lighttpd.conf e incollatevi questa configurazione):
::
server.modules = (
"mod_fastcgi",
"mod_access",
"mod_alias",
"mod_compress",
"mod_redirect",
"mod_rewrite",
)
server.document-root = "/var/www/wallabag/web"
server.upload-dirs = ( "/var/cache/lighttpd/uploads" )
server.errorlog = "/var/log/lighttpd/error.log"
server.pid-file = "/var/run/lighttpd.pid"
server.username = "www-data"
server.groupname = "www-data"
server.port = 80
server.follow-symlink = "enable"
index-file.names = ( "index.php", "index.html", "index.lighttpd.html")
url.access-deny = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
compress.cache-dir = "/var/cache/lighttpd/compress/"
compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" )
include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
include_shell "/usr/share/lighttpd/create-mime.assign.pl"
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
dir-listing.activate = "disable"
url.rewrite-if-not-file = (
"^/([^?]*)(?:\?(.*))?" => "/app.php?$1&$2",
"^/([^?]*)" => "/app.php?=$1",
)
Diritti di accesso alle cartelle del progetto
---------------------------------------------
Ambiente di test
~~~~~~~~~~~~~~~~
Quando vorremo solamente testare wallabag, eseguiremo il comando ``make run`` per avviare la nostra istanza di wallabag e tutto funzionerá correttamente poiché lutente che ha iniziato il progetto puó accedere alla cartella corrente senza problemi.
Ambiente di produzione
~~~~~~~~~~~~~~~~~~~~~~
Non appena useremo Apache o Nginx per accedere alla nostra istanza di wallabag, e non avviandola con il comando ``make run``, dovremo aver cura di concedere i giusti diritti sulle giuste cartelle per far rimanere sicure tutte le cartelle del progetto.
Per fare ció, il nome della cartella, conosciuta come ``DocumentRoot`` (per Apache) o ``root`` (per Nginx), deve essere assolutamente accessibile allutente Apache/Nginx. Il suo nome è generalmente ``www-data``, ``apache`` o ``nobody`` (dipendendo dal sistema Linux utilizzato).
Quindi la cartella ``/var/www/wallabag/web`` deve essere accessibile da questultimo. Questo tuttavia potrebbe non essere sufficiente se solo ci importa di questa cartella poiché potremmo incontrare una pagina bianca o un errore 500 quando cerchiamo di accedere alla homepage del progetto.
Questo é dato dal fatto che dovremo concedere gli stessi diritti di accesso di ``/var/www/wallabag/web`` alla cartella ``/var/www/wallabag/var`` . Risolveremo quindi il problema con il seguente comando:
.. code-block:: bash
chown -R www-data:www-data /var/www/wallabag/var
Deve essere tutto uguale per le seguenti cartelle:
* /var/www/wallabag/bin/
* /var/www/wallabag/app/config/
* /var/www/wallabag/vendor/
* /var/www/wallabag/data/
inserendo
.. code-block:: bash
chown -R www-data:www-data /var/www/wallabag/bin
chown -R www-data:www-data /var/www/wallabag/app/config
chown -R www-data:www-data /var/www/wallabag/vendor
chown -R www-data:www-data /var/www/wallabag/data/
Altrimenti prima o poi incontreremo questi messaggi di errore:
.. code-block:: bash
Unable to write to the "bin" directory.
file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied
file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied
Regole aggiuntive per SELinux
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
se SELinux é abilitato sul vostro sistema, dovrete configurare contesti aggiuntivi in modo che wallabag funzioni correttamente. Per controllare se SELinux é abilitato, semplicemente inserisci ció che segue:
``getenforce``
Questo mostrerá ``Enforcing`` se SELinux é abilitato. Creare un nuovo contesto coinvolge la seguente sintassi:
``semanage fcontext -a -t <context type> <full path>``
Per esempio:
``semanage fcontext -a -t httpd_sys_content_t "/var/www/wallabag(/.*)?"``
Questo applicherá ricorsivamente il constesto httpd_sys_content_t alla cartella wallabag e a tutti i file e cartelle sottostanti. Sono necessarie le seguenti regole:
+-----------------------------------+----------------------------+
| Percorso completo | Contesto |
+===================================+============================+
| /var/www/wallabag(/.*)? | ``httpd_sys_content_t`` |
+-----------------------------------+----------------------------+
| /var/www/wallabag/data(/.*)? | ``httpd_sys_rw_content_t`` |
+-----------------------------------+----------------------------+
| /var/www/wallabag/var/logs(/.*)? | ``httpd_log_t`` |
+-----------------------------------+----------------------------+
| /var/www/wallabag/var/cache(/.*)? | ``httpd_cache_t`` |
+-----------------------------------+----------------------------+
Dopo aver creato questi contesti, inserite ció che segue per applicare le vostre regole:
``restorecon -R -v /var/www/wallabag``
Potrete controllare i contesti in una cartella scrivendo ``ls -lZ`` e potrete vedere tutte le regole correnti con ``semanage fcontext -l -C``.
Se state installando il pacchetto latest-v2-package, é necessaria un'ulteriore regola durante la configurazione iniziale:
``semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/wallabag/var"``
Dopo che siate acceduti con successo al vostro wallabag e abbiate completato la configurazione iniziale, questo contesto puó essere rimosso:
::
semanage fcontext -d -t httpd_sys_rw_content_t "/var/www/wallabag/var"
retorecon -R -v /var/www/wallabag/var

View File

@ -0,0 +1,93 @@
Qual'é il significato dei parametri?
====================================
File `parameters.yml` di default
--------------------------------
Ecco l'ultima versione del file `app/config/parameters.yml` di default. Assicuratevi che la vostra rispetti questa.
Se non sapete quale parametro dovete impostare, si prega di lasciare quello di default.
.. code-block:: yml
parameters:
database_driver: pdo_sqlite
database_host: 127.0.0.1
database_port: null
database_name: symfony
database_user: root
database_password: null
database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
database_table_prefix: wallabag_
database_socket: null
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
twofactor_auth: true
twofactor_sender: no-reply@wallabag.org
fosuser_registration: true
fosuser_confirmation: true
from_email: no-reply@wallabag.org
rss_limit: 50
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
redis_scheme: tcp
redis_host: localhost
redis_port: 6379
redis_path: null
Significato di ogni parametro
-----------------------------
.. csv-table:: Parametri del database
:header: "nome", "default", "descrizione"
"database_driver", "pdo_sqlite", "Dovrebbe essere pdo_sqlite o pdo_mysql o pdo_pgsql"
"database_host", "127.0.0.1", "Host del vostro database (generalmente localhost o 127.0.0.1)"
"database_port", "~", "Porta del vostro database (potete lasciare ``~`` per usare quella di default)"
"database_name", "symfony", "Nome del vostro database"
"database_user", "root", "L'utente che puó scrivere su questo database"
"database_password", "~", "Password di quell'utente"
"database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "Solo per SQLite, definite dove mettere il file del database. Lasciatelo vuoto se usate un altro database"
"database_table_prefix", "wallabag_", "Tutte le tavole di wallabag avranno quella stringa come prefisso. Potete includere un ``_`` per maggior chiarezza"
"database_socket", "null", "Se il vostro database usa un socket al posto di tcp, inserite il percorso del socket (altri parametri di connessione saranno ignorati)"
.. csv-table:: Configurazione per inviare email da wallabag
:header: "nome", "default", "descrizione"
"mailer_transport", "smtp", "Il metodo di trasporto esatto usato per consegnare email. Valori validi sono: smtp, gmail, mail, sendmail, null (ció disattiva il mailer)"
"mailer_host", "127.0.0.1", "L'host al quale connettersi quando si usa smtp come metodo di trasporto."
"mailer_user", "~", "Lo username quando si usa smtp come metodo di trasporto."
"mailer_password", "~", "La password quando si usa smtp come metodo di trasporto."
.. csv-table:: Altre opzioni di wallabag
:header: "nome", "default", "descrizione"
"locale", "en", "Lingua di default della vostra istanza di wallabag (come en, fr, es, etc.)"
"secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "Questa é una stringa che dovrebbe essere unica per la vostra applicazione ed é usata comunemente per aggiungere piú entropia alle operazioni di sicurezza."
"twofactor_auth", "true", "true per abilitare l'autenticazione a due fattori"
"twofactor_sender", "no-reply@wallabag.org", "Email del mittente per ricevere il codice a due fattori"
"fosuser_registration", "true", "true per abilitare la registrazione pubblica"
"fosuser_confirmation", "true", "true per inviare una mail di conferma per ogni registrazione"
"from_email", "no-reply@wallabag.org", "Indirizzo email usato nel campo Da: in ogni email"
"rss_limit", "50", "Limite per i feed RSS"
.. csv-table:: Configurazione di RabbitMQ
:header: "nome", "default", "descrizione"
"rabbitmq_host", "localhost", "Host del vostro RabbitMQ"
"rabbitmq_port", "5672", "Porta del vostro RabbitMQ"
"rabbitmq_user", "guest", "Utente che puó leggere le code"
"rabbitmq_password", "guest", "Password di quell'utente"
.. csv-table:: Configurazione di Redis
:header: "nome", "default", "descrizione"
"redis_scheme", "tcp", "Specifica il protocollo da usare per comunicare con una istanza di Redis. Valori validi sono: tcp, unix, http"
"redis_host", "localhost", "IP o hostname del server bersaglio (ignorato per lo schema unix)"
"redis_port", "6379", "Porta TCP/IP del server bersaglio (ignorato per lo schema unix)"
"redis_path", "null", "Percorso del file domain socket di UNIX usato quando ci si connette a Redis usando domain socket di UNIX"

102
docs/it/user/upgrade.rst Normal file
View File

@ -0,0 +1,102 @@
Aggiornate la vostra installazione di wallabag
==============================================
Troverete qui i differenti modi per aggiornare il vostro wallabag:
- `da 2.0.x a 2.1.1 <#upgrade-from-2-0-x-to-2-1-1>`_
- `da 2.1.x a 2.1.y <#upgrading-from-2-1-x-to-2-1-y>`_
- `da 1.x a 2.x <#from-wallabag-1-x>`_
Aggiornate da 2.0.x a 2.1.1
---------------------------
.. attenzione::
prima di questa migrazione, se avete configurato l'importazione di Pocket aggiungendo la vostra consumer key nelle Impostazioni interne, si prega di farne un backup: dovrete aggiungere questa nella pagina di configurazione dopo l'aggiornamento.
Aggiornamento su un web server dedicato
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:
rm -rf var/cache/*
git fetch origin
git fetch --tags
git checkout 2.1.1 --force
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
php bin/console doctrine:migrations:migrate --env=prod
php bin/console cache:clear --env=prod
Aggiornamento su un hosting condiviso
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Fate un backup del file ``app/config/parameters.yml``.
Scaricate la versione 2.1.1 di wallabag:
.. code-block:: bash
wget http://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz
(hash md5 del pacchetto 2.1.1: ``9584a3b60a2b2a4de87f536548caac93``)
Estraete l'archivio nella vostra cartella di wallabag e sostituite ``app/config/parameters.yml`` con il vostro.
Controllate che il vostro ``app/config/parameters.yml`` contenga tutti i parametri richiesti. Potete trovare qui la documentazione sui parametri *link mancante*.
Se usate SQLite, dovete anche copiare la vostra cartella ``data/`` dentro la nuova installazione.
Svuotate la cartella ``var/cache``.
Dovete eseguire delle query di SQL per aggiornare il vostro database. Assumiamo che il prefisso della tabella sia ``wallabag_`` e che il database sia MySQL:
.. code-block:: sql
ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';
Aggiornamento da 2.1.x a 2.1.y
------------------------------
Aggiornamento su un web server dedicato
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Per aggiornare la vostra installazione di wallabag ed ottenere l'ultima versione, eseguite il seguente comando nella vostra cartella wallabag:
::
make update
Aggiornamento su un hosting condiviso
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Fate un backup del file ``app/config/parameters.yml``.
Scaricate l'ultima versione di wallabag:
. code-block:: bash
wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package
Troverete il `hash md5 dell'ultima versione del pacchetto sul nostro sito <https://www.wallabag.org/pages/download-wallabag.html>`_.
Estraete l'archivio nella vostra cartella di wallabag e rimpiazzate ``app/config/parameters.yml`` con il vostro.
Controllate che il vostro ``app/config/parameters.yml`` contenga tutti i parametri richiesti.
Potete trovare qui la documentazione sui parametri *link mancante*.
Se usate SQLite, dovete anche copiare la vostra cartella ``data/`` dentro la nuova installazione.
Svuotate la cartella ``var/cache``.
Da wallabag 1.x
---------------
Non esiste uno script automatico per aggiornare da wallabag 1.x a wallabag 2.x. Dovete:
- esportare i vostri dati
- installare wallabag 2.x (leggete la documentazione a proposito dell'installazione *link mancante*)
- importate i dati in questa nuova installazione (leggete la documentazione a proposito dell'importazione)

View File

@ -12,6 +12,7 @@ mkdir $TMP_FOLDER/$RELEASE_FOLDER
git clone git@github.com:wallabag/wallabag.git -b $VERSION $TMP_FOLDER/$RELEASE_FOLDER/$VERSION
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && SYMFONY_ENV=$ENV composer up -n --no-dev
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console wallabag:install --env=$ENV
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console assets:install --env=$ENV --symlink --relative
cd $TMP_FOLDER/$RELEASE_FOLDER && tar czf wallabag-$VERSION.tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $VERSION
echo "MD5 checksum of the package for wallabag $VERSION"
md5 $TMP_FOLDER/$RELEASE_FOLDER/wallabag-$VERSION.tar.gz

View File

@ -5,5 +5,5 @@ if [ ! -f composer.phar ]; then
echo "composer.phar not found, we'll see if composer is installed globally."
command -v composer >/dev/null 2>&1 || { echo >&2 "wallabag requires composer but it's not installed (see http://doc.wallabag.org/en/master/user/installation.html). Aborting."; exit 1; }
else
COMPOSER_COMMAND='composer.phar'
COMPOSER_COMMAND='./composer.phar'
fi

View File

@ -98,12 +98,13 @@ class EntryRestController extends WallabagRestController
$tags = $request->query->get('tags', '');
$since = $request->query->get('since', 0);
/** @var \Pagerfanta\Pagerfanta $pager */
$pager = $this->getDoctrine()
->getRepository('WallabagCoreBundle:Entry')
->findEntries($this->getUser()->getId(), $isArchived, $isStarred, $sort, $order, $since, $tags);
$pager->setCurrentPage($page);
$pager->setMaxPerPage($perPage);
$pager->setCurrentPage($page);
$pagerfantaFactory = new PagerfantaFactory('page', 'perPage');
$paginatedCollection = $pagerfantaFactory->createRepresentation(
@ -199,10 +200,19 @@ class EntryRestController extends WallabagRestController
$entry = $this->get('wallabag_core.entry_repository')->findByUrlAndUserId($url, $this->getUser()->getId());
if (false === $entry) {
$entry = $this->get('wallabag_core.content_proxy')->updateEntry(
new Entry($this->getUser()),
$url
);
$entry = new Entry($this->getUser());
try {
$entry = $this->get('wallabag_core.content_proxy')->updateEntry(
$entry,
$url
);
} catch (\Exception $e) {
$this->get('logger')->error('Error while saving an entry', [
'exception' => $e,
'entry' => $entry,
]);
$entry->setUrl($url);
}
}
if (!is_null($title)) {

View File

@ -16,7 +16,11 @@ class ClientType extends AbstractType
{
$builder
->add('name', TextType::class, ['label' => 'developer.client.form.name_label'])
->add('redirect_uris', UrlType::class, ['required' => false, 'label' => 'developer.client.form.redirect_uris_label'])
->add('redirect_uris', UrlType::class, [
'required' => false,
'label' => 'developer.client.form.redirect_uris_label',
'property_path' => 'redirectUris',
])
->add('save', SubmitType::class, ['label' => 'developer.client.form.save_label'])
;

View File

@ -39,9 +39,11 @@ class ConfigType extends AbstractType
])
->add('items_per_page', null, [
'label' => 'config.form_settings.items_per_page_label',
'property_path' => 'itemsPerPage',
])
->add('reading_speed', ChoiceType::class, [
'label' => 'config.form_settings.reading_speed.label',
'property_path' => 'readingSpeed',
'choices' => [
'config.form_settings.reading_speed.100_word' => '0.5',
'config.form_settings.reading_speed.200_word' => '1',
@ -51,6 +53,7 @@ class ConfigType extends AbstractType
])
->add('action_mark_as_read', ChoiceType::class, [
'label' => 'config.form_settings.action_mark_as_read.label',
'property_path' => 'actionMarkAsRead',
'choices' => [
'config.form_settings.action_mark_as_read.redirect_homepage' => Config::REDIRECT_TO_HOMEPAGE,
'config.form_settings.action_mark_as_read.redirect_current_page' => Config::REDIRECT_TO_CURRENT_PAGE,
@ -61,6 +64,7 @@ class ConfigType extends AbstractType
'label' => 'config.form_settings.language_label',
])
->add('pocket_consumer_key', null, [
'property_path' => 'pocketConsumerKey',
'label' => 'config.form_settings.pocket_consumer_key_label',
])
->add('save', SubmitType::class, [

View File

@ -21,6 +21,7 @@ class EditEntryType extends AbstractType
->add('is_public', CheckboxType::class, [
'required' => false,
'label' => 'entry.edit.is_public_label',
'property_path' => 'isPublic',
])
->add('url', TextType::class, [
'disabled' => true,

View File

@ -3,6 +3,7 @@
namespace Wallabag\CoreBundle\Form\Type;
use Doctrine\ORM\EntityRepository;
use Lexik\Bundle\FormFilterBundle\Filter\FilterOperands;
use Lexik\Bundle\FormFilterBundle\Filter\Query\QueryInterface;
use Lexik\Bundle\FormFilterBundle\Filter\Form\Type\NumberRangeFilterType;
use Lexik\Bundle\FormFilterBundle\Filter\Form\Type\DateRangeFilterType;
@ -33,7 +34,7 @@ class EntryFilterType extends AbstractType
$this->user = $tokenStorage->getToken() ? $tokenStorage->getToken()->getUser() : null;
if (null === $this->user || !is_object($this->user)) {
return null;
return;
}
}
@ -41,6 +42,14 @@ class EntryFilterType extends AbstractType
{
$builder
->add('readingTime', NumberRangeFilterType::class, [
'left_number_options' => [
'condition_operator' => FilterOperands::OPERATOR_GREATER_THAN_EQUAL,
'attr' => ['min' => 0],
],
'right_number_options' => [
'condition_operator' => FilterOperands::OPERATOR_LOWER_THAN_EQUAL,
'attr' => ['min' => 0],
],
'apply_filter' => function (QueryInterface $filterQuery, $field, $values) {
$lower = $values['value']['left_number'][0];
$upper = $values['value']['right_number'][0];

View File

@ -14,6 +14,7 @@ class RssType extends AbstractType
$builder
->add('rss_limit', null, [
'label' => 'config.form_rss.rss_limit',
'property_path' => 'rssLimit',
])
->add('save', SubmitType::class, [
'label' => 'config.form.save',

View File

@ -144,6 +144,8 @@ class DownloadImages
$this->logger->debug('DownloadImages: Re-creating jpg');
break;
case 'png':
imagealphablending($im, false);
imagesavealpha($im, true);
imagepng($im, $localPath, ceil(self::REGENERATE_PICTURES_QUALITY / 100 * 9));
$this->logger->debug('DownloadImages: Re-creating png');
}

View File

@ -148,8 +148,6 @@ class EntriesExport
$book->setCoverImage('Cover.png', file_get_contents($this->logoPath), 'image/png');
}
$book->addChapter('Notices', 'Cover2.html', $content_start.$this->getExportInformation('PHPePub').$bookEnd);
$book->buildTOC();
/*
@ -170,6 +168,8 @@ class EntriesExport
$book->addChapter($entry->getTitle(), htmlspecialchars($filename).'.html', $chapter, true, EPub::EXTERNAL_REF_ADD);
}
$book->addChapter('Notices', 'Cover2.html', $content_start.$this->getExportInformation('PHPePub').$bookEnd);
return Response::create(
$book->getBook(),
200,

View File

@ -6,6 +6,7 @@ use Graby\Ring\Client\SafeCurlHandler;
use GuzzleHttp\Client;
use GuzzleHttp\Cookie\CookieJar;
use GuzzleHttp\Event\SubscriberInterface;
use Psr\Log\LoggerInterface;
/**
* Builds and configures the Guzzle HTTP client.
@ -19,6 +20,7 @@ class HttpClientFactory
private $cookieJar;
private $restrictedAccess;
private $logger;
/**
* HttpClientFactory constructor.
@ -26,12 +28,14 @@ class HttpClientFactory
* @param \GuzzleHttp\Event\SubscriberInterface $authenticatorSubscriber
* @param \GuzzleHttp\Cookie\CookieJar $cookieJar
* @param string $restrictedAccess this param is a kind of boolean. Values: 0 or 1
* @param LoggerInterface $logger
*/
public function __construct(SubscriberInterface $authenticatorSubscriber, CookieJar $cookieJar, $restrictedAccess)
public function __construct(SubscriberInterface $authenticatorSubscriber, CookieJar $cookieJar, $restrictedAccess, LoggerInterface $logger)
{
$this->authenticatorSubscriber = $authenticatorSubscriber;
$this->cookieJar = $cookieJar;
$this->restrictedAccess = $restrictedAccess;
$this->logger = $logger;
}
/**
@ -39,8 +43,10 @@ class HttpClientFactory
*/
public function buildHttpClient()
{
$this->logger->log('debug', 'Restricted access config enabled?', array('enabled' => (int) $this->restrictedAccess));
if (0 === (int) $this->restrictedAccess) {
return null;
return;
}
// we clear the cookie to avoid websites who use cookies for analytics

View File

@ -106,8 +106,9 @@ class EntryRepository extends EntityRepository
$qb->andWhere('e.isArchived = true');
}
// We lower() all parts here because PostgreSQL 'LIKE' verb is case-sensitive
$qb
->andWhere('e.content LIKE :term OR e.title LIKE :term')->setParameter('term', '%'.$term.'%')
->andWhere('lower(e.content) LIKE lower(:term) OR lower(e.title) LIKE lower(:term) OR lower(e.url) LIKE lower(:term)')->setParameter('term', '%'.$term.'%')
->leftJoin('e.tags', 't')
->groupBy('e.id');

View File

@ -74,6 +74,7 @@ services:
- "@bd_guzzle_site_authenticator.authenticator_subscriber"
- "@wallabag_core.guzzle.cookie_jar"
- '@=service(''craue_config'').get(''restricted_access'')'
- '@logger'
wallabag_core.guzzle.cookie_jar:
class: GuzzleHttp\Cookie\FileCookieJar
@ -117,12 +118,12 @@ services:
wallabag.operator.array.matches:
class: Wallabag\CoreBundle\Operator\PHP\Matches
tags:
- { name: rulerz.operator, executor: rulerz.executor.array, operator: matches }
- { name: rulerz.operator, target: native, operator: matches }
wallabag.operator.doctrine.matches:
class: Wallabag\CoreBundle\Operator\Doctrine\Matches
tags:
- { name: rulerz.operator, executor: rulerz.executor.doctrine, operator: matches, inline: true }
- { name: rulerz.operator, target: doctrine, operator: matches, inline: true }
wallabag_core.helper.redirect:
class: Wallabag\CoreBundle\Helper\Redirect

View File

@ -25,7 +25,7 @@ menu:
# internal_settings: 'Internal Settings'
# import: 'Import'
howto: 'KUow-to'
# developer: 'Developer'
# developer: 'API clients management'
logout: 'Log ud'
about: 'Om'
search: 'Søg'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
# page_title: 'Developer'
# page_title: 'API clients management'
# welcome_message: 'Welcome to the wallabag API'
# documentation: 'Documentation'
# how_to_first_app: 'How to create my first application'
@ -457,7 +457,7 @@ developer:
# warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag."
# action: 'Remove this client'
# client:
# page_title: 'Developer > New client'
# page_title: 'API clients management > New client'
# page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
# form:
# name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
# save_label: 'Create a new client'
# action_back: 'Back'
# client_parameter:
# page_title: 'Developer > Client parameters'
# page_title: 'API clients management > Client parameters'
# page_description: 'Here are your client parameters.'
# field_name: 'Client name'
# field_id: 'Client ID'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Interne Einstellungen'
import: 'Importieren'
howto: 'How-To'
developer: 'Entwickler'
developer: 'API-Client-Verwaltung'
logout: 'Abmelden'
about: 'Über'
search: 'Suche'
@ -76,11 +76,11 @@ config:
redirect_current_page: 'Zur aktuellen Seite'
pocket_consumer_key_label: Consumer-Key für Pocket, um Inhalte zu importieren
android_configuration: Konfiguriere deine Android Application
# help_theme: "wallabag is customizable. You can choose your prefered theme here."
# help_items_per_page: "You can change the number of articles displayed on each page."
# help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article."
# help_language: "You can change the language of wallabag interface."
# help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account."
help_theme: "wallabag ist anpassbar. Du kannst dein bevorzugtes Theme hier auswählen."
help_items_per_page: "Du kannst die Nummer von Artikeln pro Seite anpassen."
help_reading_speed: "wallabag berechnet eine Lesezeit pro Artikel. Hier kannst du definieren, ob du ein schneller oder langsamer Leser bist. wallabag wird die Lesezeiten danach neu berechnen."
help_language: "Du kannst die Sprache der wallabag-Oberfläche ändern."
help_pocket_consumer_key: "Nötig für den Pocket-Import. Du kannst ihn in deinem Pocket account einrichten."
form_rss:
description: 'Die RSS-Feeds von wallabag erlauben es dir, deine gespeicherten Artikel mit deinem bevorzugten RSS-Reader zu lesen. Vorher musst du jedoch einen Token erstellen.'
token_label: 'RSS-Token'
@ -98,7 +98,7 @@ config:
name_label: 'Name'
email_label: 'E-Mail-Adresse'
twoFactorAuthentication_label: 'Zwei-Faktor-Authentifizierung'
# help_twoFactorAuthentication: "If you enable 2FA, each time you want to login to wallabag, you'll receive a code by email."
help_twoFactorAuthentication: "Wenn du 2FA aktivierst, wirst du bei jedem Login einen Code per E-Mail bekommen."
delete:
title: Lösche mein Konto (a.k.a Gefahrenzone)
description: Wenn du dein Konto löschst, werden ALL deine Artikel, ALL deine Tags, ALL deine Anmerkungen und dein Konto dauerhaft gelöscht (kann NICHT RÜCKGÄNGIG gemacht werden). Du wirst anschließend ausgeloggt.
@ -112,7 +112,7 @@ config:
entries: Entferne ALLE Einträge
confirm: Bist du wirklich sicher? (DIES KANN NICHT RÜCKGÄNGIG GEMACHT WERDEN)
form_password:
# description: "You can change your password here. Your new password should by at least 8 characters long."
description: "Hier kannst du dein Kennwort ändern. Dieses sollte mindestens acht Zeichen enthalten."
old_password_label: 'Altes Kennwort'
new_password_label: 'Neues Kennwort'
repeat_new_password_label: 'Neues Kennwort wiederholen'
@ -162,7 +162,7 @@ entry:
archived: 'Archivierte Einträge'
filtered: 'Gefilterte Einträge'
filtered_tags: 'Gefiltert nach Tags:'
# filtered_search: 'Filtered by search:'
filtered_search: 'Gefiltert nach Suche:'
untagged: 'Nicht getaggte Einträge'
list:
number_on_the_page: '{0} Es gibt keine Einträge.|{1} Es gibt einen Eintrag.|]1,Inf[ Es gibt %count% Einträge.'
@ -186,7 +186,7 @@ entry:
preview_picture_label: 'Vorschaubild vorhanden'
preview_picture_help: 'Vorschaubild'
language_label: 'Sprache'
# http_status_label: 'HTTP status'
http_status_label: 'HTTP-Status'
reading_time:
label: 'Lesezeit in Minuten'
from: 'von'
@ -229,7 +229,7 @@ entry:
form_new:
url_label: URL
search:
# placeholder: 'What are you looking for?'
placeholder: 'Wonach suchst du?'
edit:
page_title: 'Eintrag bearbeiten'
title_label: 'Titel'
@ -274,8 +274,8 @@ howto:
page_title: 'How-To'
page_description: 'Es gibt mehrere Möglichkeiten, einen Artikel zu speichern:'
tab_menu:
# add_link: "Add a link"
# shortcuts: "Use shortcuts"
add_link: "Link hinzufügen"
shortcuts: "Tastenkürzel nutzen"
top_menu:
browser_addons: 'Browser-Erweiterungen'
mobile_apps: 'Apps'
@ -295,32 +295,32 @@ howto:
bookmarklet:
description: 'Ziehe diesen Link in deine Lesezeichenleiste:'
shortcuts:
# page_description: Here are the shortcuts available in wallabag.
# shortcut: Shortcut
# action: Action
# all_pages_title: Shortcuts available in all pages
# go_unread: Go to unread
# go_starred: Go to starred
# go_archive: Go to archive
# go_all: Go to all entries
# go_tags: Go to tags
# go_config: Go to config
# go_import: Go to import
# go_developers: Go to developers
# go_howto: Go to howto (this page!)
# go_logout: Logout
# list_title: Shortcuts available in listing pages
# search: Display the search form
# article_title: Shortcuts available in entry view
# open_original: Open original URL of the entry
# toggle_favorite: Toggle star status for the entry
# toggle_archive: Toggle read status for the entry
# delete: Delete the entry
# material_title: Shortcuts available with Material theme only
# add_link: Add a new link
# hide_form: Hide the current form (search or new link)
# arrows_navigation: Navigate through articles
# open_article: Display the selected entry
page_description: Dies sind die verfügbaren Tastenkürzel in wallabag.
shortcut: Tastenkürzel
action: Aktion
all_pages_title: Tastenkürzel auf allen Seiten
go_unread: Zu ungelesen gehen
go_starred: Zu Favoriten gehen
go_archive: Zu archivierten gehen
go_all: Zu allen Artikel gehen
go_tags: Zu den Tags gehen
go_config: Einstellungen öffnen
go_import: Import-Sektion öffnen
go_developers: Zur Entwickler-Seite gehen
go_howto: Zum Howto gehen (diese Seite!)
go_logout: Abmelden
list_title: Tastenkürzel verfügbar auf den Listen-Seiten
search: Suche
article_title: Tastenkürzel verfügbar auf der Artikel-Seite
open_original: Original-Artikel öffnen
toggle_favorite: Favorit-Status für den Artikel ändern
toggle_archive: Archiviert-Status für den Artikel ändern
delete: Artikel löschen
material_title: Tastenkürzel des Material-Theme
add_link: Neuen Link hinzufügen
hide_form: Aktuelles Formular verstecken (Suche oder neuer Link)
arrows_navigation: Durch Artikel navigieren
open_article: Gewählten Artikel anzeigen
quickstart:
page_title: 'Schnelleinstieg'
@ -382,8 +382,8 @@ tag:
number_on_the_page: '{0} Es gibt keine Tags.|{1} Es gibt einen Tag.|]1,Inf[ Es gibt %count% Tags.'
see_untagged_entries: 'Zeige nicht getaggte Einträge'
new:
# add: 'Add'
# placeholder: 'You can add several tags, separated by a comma.'
add: 'Hinzufügen'
placeholder: 'Du kannst verschiedene Tags, getrennt von einem Komma, hinzufügen.'
import:
page_title: 'Importieren'
@ -436,7 +436,7 @@ import:
how_to: 'Bitte wähle deinen Pinboard Export aus und klicke den nachfolgenden Button zum Importieren.'
developer:
page_title: 'Entwickler'
page_title: 'API-Client-Verwaltung'
welcome_message: 'Willkomen zur wallabag API'
documentation: 'Dokumentation'
how_to_first_app: 'Wie erstelle ich meine erste Anwendung'
@ -457,7 +457,7 @@ developer:
warn_message_2: "Wenn du ihn entfernst, hat keine der damit konfigurierten Anwendungen mehr die Möglichkeit, sich in deinen wallabag-Konto anzumelden."
action: 'Client entfernen'
client:
page_title: 'Entwickler > Neuer Client'
page_title: 'API-Client-Verwaltung > Neuer Client'
page_description: 'Du bist dabei, einen neuen Client zu erstellen. Fülle das nachfolgende Feld für die Weiterleitungs-URIs deiner Anwendung aus.'
form:
name_label: 'Name des Clients'
@ -465,7 +465,7 @@ developer:
save_label: 'Neuen Client erstellen'
action_back: 'Zurück'
client_parameter:
page_title: 'Entwickler > Client-Parameter'
page_title: 'API-Client-Verwaltung > Client-Parameter'
page_description: 'Dies sind deine Client-Parameter.'
field_name: 'Client Name'
field_id: 'Client-ID'
@ -473,7 +473,7 @@ developer:
back: 'Zurück'
read_howto: 'Lese des How-To zu "Wie erstelle ich meine erste Anwendung"'
howto:
page_title: 'Entwickler > Wie erstelle ich meine erste Anwendung'
page_title: 'API-Client-Verwaltung > Wie erstelle ich meine erste Anwendung'
description:
paragraph_1: 'Die folgenden Befehle machen Gebrauch von der <a href="https://github.com/jkbrzt/httpie">HTTPie-Bibliothek</a>. Stelle sicher, dass sie auf deinem System installiert ist, bevor du fortfährst.'
paragraph_2: 'Du benötigst einen Token, damit deine Anwendung mit der wallabag-API kommunizieren kann.'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Internal Settings'
import: 'Import'
howto: 'How to'
developer: 'Developer'
developer: 'API clients management'
logout: 'Logout'
about: 'About'
search: 'Search'
@ -359,7 +359,7 @@ quickstart:
developer:
title: 'Developers'
description: 'We also thought to the developers: Docker, API, translations, etc.'
create_application: 'Create your third application'
create_application: 'Create your third-party application'
use_docker: 'Use Docker to install wallabag'
docs:
title: 'Full documentation'
@ -436,7 +436,7 @@ import:
how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
page_title: 'Developer'
page_title: 'API clients management'
welcome_message: 'Welcome to the wallabag API'
documentation: 'Documentation'
how_to_first_app: 'How to create my first application'
@ -457,7 +457,7 @@ developer:
warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag."
action: 'Remove the client %name%'
client:
page_title: 'Developer > New client'
page_title: 'API clients management > New client'
page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
form:
name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
save_label: 'Create a new client'
action_back: 'Back'
client_parameter:
page_title: 'Developer > Client parameters'
page_title: 'API clients management > Client parameters'
page_description: 'Here are your client parameters.'
field_name: 'Client name'
field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
back: 'Back'
read_howto: 'Read the howto "Create my first application"'
howto:
page_title: 'Developer > How to create my first application'
page_title: 'API clients management > How to create my first application'
description:
paragraph_1: 'The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.'
paragraph_2: 'You need a token to communicate between your 3rd application and wallabag API.'

View File

@ -1,7 +1,7 @@
security:
login:
page_title: '¡Bienvenido a wallabag !'
keep_logged_in: 'Manténgame conectado'
page_title: '¡Bienvenido a wallabag!'
keep_logged_in: 'Permanecer conectado'
forgot_password: '¿Se ha olvidado de su contraseña?'
submit: 'Conectarse'
register: 'Registrarse'
@ -9,7 +9,7 @@ security:
password: 'Contraseña'
cancel: 'Cancelar'
resetting:
description: "Introduzca su dirección del correo electrónico y le enviaremos las instrucciones para reiniciar la contraseña"
description: "Introduzca su dirección de correo electrónico y le enviaremos las instrucciones para reiniciar la contraseña."
register:
page_title: 'Crear una cuenta'
go_to_account: 'Acceder su cuenta'
@ -19,19 +19,19 @@ menu:
unread: 'Sin leer'
starred: 'Favoritos'
archive: 'Archivo'
all_articles: 'Todos artículos'
all_articles: 'Todos los artículos'
config: 'Configuración'
tags: 'Etiquetas'
internal_settings: 'Configuración interna'
import: 'Importar'
howto: 'Ayuda'
developer: 'Promotor'
developer: 'Configuración de clientes API'
logout: 'Desconectarse'
about: 'Acerca de'
search: 'Buscar'
save_link: 'Archivar un enlace'
save_link: 'Guardar un enlace'
back_to_unread: 'Volver a los artículos sin leer'
# users_management: 'Users management'
users_management: 'Configuración de usuarios'
top:
add_new_entry: 'Añadir un nuevo artículo'
search: 'Buscar'
@ -42,11 +42,11 @@ menu:
footer:
wallabag:
elsewhere: 'Lleve wallabag consigo'
elsewhere: 'Lleva wallabag contigo'
social: 'Social'
powered_by: 'funciona por'
powered_by: 'funciona con'
about: 'Acerca de'
# stats: Since %user_creation% you read %nb_archives% articles. That is about %per_day% a day!
stats: Desde el %user_creation% has leído %nb_archives% artículos. ¡Eso hace unos %per_day% por día!
config:
page_title: 'Configuración'
@ -64,96 +64,96 @@ config:
items_per_page_label: 'Número de artículos por página'
language_label: 'Idioma'
reading_speed:
label: 'Velocidad de leer'
help_message: 'Se puede usar las técnicas para calcular su velocidad de leer:'
label: 'Velocidad de lectura'
help_message: 'Puede utilizar herramientas en línea para calcular su velocidad de lectura:'
100_word: 'Leo ~100 palabras por minuto'
200_word: 'Leo ~200 palabras por minuto'
300_word: 'Leo ~300 palabras por minuto'
400_word: 'Leo ~400 palabras por minuto'
action_mark_as_read:
# label: 'Where do you to be redirected after mark an article as read?'
# redirect_homepage: 'To the homepage'
# redirect_current_page: 'To the current page'
# pocket_consumer_key_label: Consumer key for Pocket to import contents
# android_configuration: Configure your Android application
# help_theme: "wallabag is customizable. You can choose your prefered theme here."
# help_items_per_page: "You can change the number of articles displayed on each page."
# help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article."
# help_language: "You can change the language of wallabag interface."
# help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account."
label: '¿Dónde quieres ser redirigido después de marcar un artículo como leído?'
redirect_homepage: 'A la página de inicio'
redirect_current_page: 'A la página actual'
pocket_consumer_key_label: Clave de consumidor para importar contenidos de Pocket
android_configuration: Configura tu aplicación Android
help_theme: "wallabag es personalizable. Puedes elegir tu tema preferido aquí."
help_items_per_page: "Puedes cambiar el número de artículos mostrados en cada página."
help_reading_speed: "wallabag calcula un tiempo de lectura para cada artículo. Puedes definir aquí, gracias a esta lista, si eres un lector rápido o lento. wallabag recalculará el tiempo de lectura para cada artículo."
help_language: "Puedes cambiar el idioma de la interfaz de wallabag."
help_pocket_consumer_key: "Requerido para la importación desde Pocket. Puedes crearla en tu cuenta de Pocket."
form_rss:
description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Necesita generar un token primero'
token_label: 'RSS token'
no_token: 'No token'
description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Primero necesitas generar un token.'
token_label: 'Token RSS'
no_token: 'Sin token'
token_create: 'Crear token'
token_reset: 'Reiniciar token'
rss_links: 'URL de su feed RSS'
rss_links: 'URLs de feeds RSS'
rss_link:
unread: 'sin leer'
starred: 'favoritos'
archive: 'archivo'
archive: 'archivados'
rss_limit: 'Límite de artículos en feed RSS'
form_user:
two_factor_description: "Con la autentificación de dos factores recibirá código mediante email en cada nueva conexión que no sea de confianza"
two_factor_description: "Con la autenticación en dos pasos recibirá código por e-mail en cada nueva conexión que no sea de confianza."
name_label: 'Nombre'
email_label: 'Direccion e-mail'
twoFactorAuthentication_label: 'Autentificación de dos factores'
# help_twoFactorAuthentication: "If you enable 2FA, each time you want to login to wallabag, you'll receive a code by email."
email_label: 'Dirección de e-mail'
twoFactorAuthentication_label: 'Autenticación en dos pasos'
help_twoFactorAuthentication: "Si activas la autenticación en dos pasos, cada vez que quieras iniciar sesión en wallabag recibirás un código por e-mail."
delete:
# title: Delete my account (a.k.a danger zone)
# description: If you remove your account, ALL your articles, ALL your tags, ALL your annotations and your account will be PERMANENTLY removed (it can't be UNDONE). You'll then be logged out.
# confirm: Are you really sure? (THIS CAN'T BE UNDONE)
# button: Delete my account
title: Eliminar mi cuenta (Zona peligrosa)
description: Si eliminas tu cuenta, TODOS tus artículos, TODAS tus etiquetas, TODAS tus anotaciones y tu cuenta serán eliminadas de forma PERMANENTE (no se puede deshacer). Después serás desconectado.
confirm: ¿Estás completamente seguro? (NO SE PUEDE DESHACER)
button: Eliminar mi cuenta
reset:
# title: Reset area (a.k.a danger zone)
# description: By hiting buttons below you'll have ability to remove some informations from your account. Be aware that these actions are IRREVERSIBLE.
# annotations: Remove ALL annotations
# tags: Remove ALL tags
# entries: Remove ALL entries
# confirm: Are you really really sure? (THIS CAN'T BE UNDONE)
title: Reiniciar mi cuenta (Zona peligrosa)
description: Pulsando los botones de abajo puedes eliminar información de tu cuenta. Ten en cuenta que estas acciones son IRREVERSIBLES.
annotations: Eliminar TODAS las anotaciones
tags: Eliminar TODAS las etiquetas
entries: Eliminar TODOS los artículos
confirm: ¿Estás completamente seguro? (NO SE PUEDE DESHACER)
form_password:
# description: "You can change your password here. Your new password should by at least 8 characters long."
description: "Puedes cambiar la contraseña aquí. Tu nueva contraseña debe tener al menos 8 caracteres."
old_password_label: 'Contraseña actual'
new_password_label: 'Nueva contraseña'
repeat_new_password_label: 'Confirmar la nueva contraseña'
repeat_new_password_label: 'Confirmar nueva contraseña'
form_rules:
if_label: 'si'
then_tag_as_label: 'Etiquete como'
delete_rule_label: 'Borre'
# edit_rule_label: 'edit'
then_tag_as_label: 'etiquetar como'
delete_rule_label: 'borrar'
edit_rule_label: 'editar'
rule_label: 'Regla'
tags_label: 'Etiquetas'
faq:
title: 'FAQ'
tagging_rules_definition_title: '¿Qué significa reglas de etiquetado autómaticas?'
tagging_rules_definition_description: 'Son las reglas usadas por Wallabag para etiquetar automáticamente los nuevos artículos.<br />Cada vez que un nuevo artículo sea añadido, todas las reglas de etiquetado automáticas serán usadas para etiquetarlo, ayudándole a clasificar automáticamente los artículos.'
title: 'Preguntas frecuentes'
tagging_rules_definition_title: '¿Qué significa « reglas de etiquetado automático »?'
tagging_rules_definition_description: 'Son las reglas usadas por wallabag para etiquetar automáticamente los nuevos artículos.<br />Cada vez que un artículo sea añadido, todas las reglas de etiquetado automático serán usadas para etiquetarlo, ayudándote a clasificar automáticamente tus artículos.'
how_to_use_them_title: '¿Cómo se utilizan?'
how_to_use_them_description: 'Supongamos que quiere etiquetar nuevos artículos como « <i>lectura corta</i> » cuando el tiempo de leer sea menos de 3 minutos. <br /> En ese caso, debe poner « tiempo de leer &lt;= 3 » en el <i>Regla</i> campo y « <i>lectura corta</i> » en el <i>Etiquetas</i> campo.<br />Algunas etiquetas se pueden ser añadidas al mismo tiempo por separarlas con una coma: « <i>lectura corta, debe leer</i> »<br />Reglas complejas se pueden ser escritas por usar operadores predefinidos: si « <i>tiempo de leer &gt;= 5 Y nombre del dominio = "github.com"</i> » entonces etiquete como « <i>lectura larga, github </i> »'
how_to_use_them_description: 'Supongamos que quiere etiquetar los artículos nuevos como « <i>lectura corta</i> » cuando el tiempo de lectura sea menos de 3 minutos.<br /> En ese caso, debe poner « readingTime &lt;= 3 » en el campo <i>Regla</i> y « <i>lectura corta</i> » en el campo <i>Etiquetas</i>.<br />Se pueden añadir varias etiquetas al mismo tiempo separadas por comas: « <i>lectura corta, lectura obligada</i> »<br />Se pueden escribir reglas complejas utilizando los operadores predefinidos: si « <i>readingTime &gt;= 5 AND domainName = "github.com"</i> » entonces etiqueta como « <i>lectura larga, github </i> »'
variables_available_title: '¿Qué variables y operadores se pueden utilizar para escribir las reglas?'
variables_available_description: 'Las siguientes variables y operadores se pueden utilizar para crear las reglas de etiquetado automáticas:'
variables_available_description: 'Las siguientes variables y operadores se pueden utilizar para crear reglas de etiquetado automático:'
meaning: 'Significado'
variable_description:
label: 'Variable'
title: 'Titúlo del artículo'
title: 'Título del artículo'
url: 'URL del artículo'
isArchived: 'El artículo está guardado o no'
isStarred: 'Si el artículo es un favorito o no'
isArchived: 'Si artículo está archivado o no'
isStarred: 'Si el artículo está en favoritos o no'
content: "El contenido del artículo"
language: "El idioma del artículo"
mimetype: "Tipo MIME del artículo"
mimetype: "El tipo MIME del artículo"
readingTime: "El tiempo estimado de lectura del artículo, en minutos"
domainName: 'El dominio del artículo'
domainName: 'El nombre de dominio del artículo'
operator_description:
label: 'Operador'
less_than: 'Menos que…'
strictly_less_than: 'Estrictámente menos que…'
greater_than: 'Más que…'
strictly_greater_than: 'Estrictámente mas que…'
equal_to: 'Egual a…'
less_than: 'Menor que…'
strictly_less_than: 'Estrictamente menor que…'
greater_than: 'Mayor que…'
strictly_greater_than: 'Estrictamente mayor que…'
equal_to: 'Igual a…'
not_equal_to: 'Diferente de…'
or: 'Una regla U otra'
and: 'Una regla Y la otra'
matches: 'Pruebe si un <i>sujeto</i> corresponde a una <i>búsqueda</i> (insensible a mayusculas).<br />Ejemplo : <code>título coincide "football"</code>'
matches: 'Prueba si un <i>sujeto</i> corresponde a una <i>búsqueda</i> (insensible a mayusculas).<br />Ejemplo : <code>title matches "fútbol"</code>'
entry:
page_titles:
@ -161,32 +161,32 @@ entry:
starred: 'Artículos favoritos'
archived: 'Artículos archivados'
filtered: 'Artículos filtrados'
# filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries'
filtered_tags: 'Filtrado por etiquetas:'
filtered_search: 'Filtrado por búsqueda:'
untagged: 'Artículos sin etiquetas'
list:
number_on_the_page: '{0} No hay artículos.|{1} Hay un artículo.|]1,Inf[ Hay %count% artículos.'
reading_time: 'tiempo estimado de lectura'
reading_time_minutes: 'tiempo estimado de lectura: %readingTime% min'
reading_time_less_one_minute: 'tiempo estimado de lectura: &lt; 1 min'
# number_of_tags: '{1}and one other tag|]1,Inf[and %count% other tags'
number_of_tags: '{1}y una etiqueta más|]1,Inf[y %count% etiquetas más'
reading_time_minutes_short: '%readingTime% min'
reading_time_less_one_minute_short: '&lt; 1 min'
original_article: 'original'
toogle_as_read: 'Marcar como leído/ no leído'
toogle_as_star: 'Marcar como favorito/ no favorito'
delete: 'Suprimir'
toogle_as_read: 'Marcar como leído / no leído'
toogle_as_star: 'Marcar como favorito / no favorito'
delete: 'Eliminar'
export_title: 'Exportar'
filters:
title: 'Filtros'
status_label: 'Estatus'
status_label: 'Estado'
archived_label: 'Archivado'
starred_label: 'Favorito'
unread_label: 'Sin leer'
preview_picture_label: 'Hay una foto'
preview_picture_help: 'Foto de preview'
preview_picture_label: 'Tiene imagen de previsualización'
preview_picture_help: 'Imagen de previsualización'
language_label: 'Idioma'
# http_status_label: 'HTTP status'
http_status_label: 'Código de estado HTTP'
reading_time:
label: 'Duración de lectura en minutos'
from: 'de'
@ -208,12 +208,12 @@ entry:
set_as_starred: 'Marcar como favorito'
view_original_article: 'Artículo original'
re_fetch_content: 'Redescargar el contenido'
delete: 'Suprimir'
delete: 'Eliminar'
add_a_tag: 'Añadir una etiqueta'
share_content: 'Compartir'
share_email_label: 'Dirección e-mail'
# public_link: 'public link'
# delete_public_link: 'delete public link'
share_email_label: 'e-mail'
public_link: 'enlace público'
delete_public_link: 'eliminar enlace público'
download: 'Descargar'
print: 'Imprimir'
problem:
@ -225,32 +225,32 @@ entry:
created_at: 'Fecha de creación'
new:
page_title: 'Guardar un nuevo artículo'
placeholder: 'http://website.com'
placeholder: 'http://sitioweb.com'
form_new:
url_label: Url
url_label: URL
search:
# placeholder: 'What are you looking for?'
placeholder: '¿Qué estás buscando?'
edit:
page_title: 'Editar un artículo'
title_label: 'Título'
url_label: 'Url'
is_public_label: 'Es Público'
url_label: 'URL'
is_public_label: 'Es público'
save_label: 'Guardar'
public:
# shared_by_wallabag: "This article has been shared by <a href='%wallabag_instance%'>wallabag</a>"
shared_by_wallabag: "Este artículo se ha compartido con <a href='%wallabag_instance%'>wallabag</a>"
about:
page_title: 'Acerca de'
top_menu:
who_behind_wallabag: 'Equipo del desarrollo de wallabag'
who_behind_wallabag: 'Quién está detrás de wallabag'
getting_help: 'Pedir ayuda'
helping: 'Ayudar a wallabag'
contributors: 'Colaboradores'
third_party: 'Librerías de terceros'
third_party: 'Bibliotecas de terceros'
who_behind_wallabag:
developped_by: 'Desarrollado por'
website: 'Sitio web'
many_contributors: 'Y muchos otros colaboradores ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">en Github</a>'
many_contributors: 'Y otros muchos colaboradores ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">en Github</a>'
project_website: 'Sitio web del proyecto'
license: 'Licencia'
version: 'Versión'
@ -259,306 +259,306 @@ about:
bug_reports: 'Reporte de errores'
support: '<a href="https://github.com/wallabag/wallabag/issues">en GitHub</a>'
helping:
description: 'wallabag es libre y gratuito. Usted puede ayudarnos :'
description: 'wallabag es software libre y gratuito. Usted puede ayudarnos :'
by_contributing: 'contribuyendo al proyecto :'
by_contributing_2: 'nuestras necesidades están en un ticket'
by_paypal: 'via Paypal'
by_paypal: 'vía Paypal'
contributors:
description: 'Gracias a los colaboradores de la aplicación web de wallabag'
third_party:
description: 'Aquí está la lista de las dependencias utilizadas por wallabag (con sus licencias) :'
description: 'Aquí está la lista de bibliotecas de terceros utilizadas por wallabag (con sus licencias) :'
package: 'Paquete'
license: 'Licencia'
howto:
page_title: 'Ayuda'
page_description: 'Hay muchas maneras para guardar un artículo:'
tab_menu:
# add_link: "Add a link"
# shortcuts: "Use shortcuts"
add_link: "Añadir un artículo"
shortcuts: "Utilizar atajos de teclado"
page_description: 'Hay muchas maneras de guardar un artículo:'
top_menu:
browser_addons: 'Extensiones de navigador'
browser_addons: 'Extensiones de navegador'
mobile_apps: 'Aplicaciones para smartphone'
bookmarklet: 'Bookmarklet'
form:
description: 'Gracias a este formulario'
browser_addons:
firefox: 'Extensión Firefox'
chrome: 'Extensión Chrome'
opera: 'Extensión Opera'
firefox: 'Extensión para Firefox'
chrome: 'Extensión para Chrome'
opera: 'Extensión para Opera'
mobile_apps:
android:
via_f_droid: 'via F-Droid'
via_google_play: 'via Google Play'
ios: 'por la tienda de iTunes'
windows: 'por la tienda de Microsoft'
via_f_droid: 'en F-Droid'
via_google_play: 'en Google Play'
ios: 'en la tienda de iTunes'
windows: 'en la tienda de Microsoft'
bookmarklet:
description: 'Desplazar y soltar este link en la barra de marcadores :'
description: 'Arrastra y suelta este enlace en la barra de marcadores:'
shortcuts:
# page_description: Here are the shortcuts available in wallabag.
# shortcut: Shortcut
# action: Action
# all_pages_title: Shortcuts available in all pages
# go_unread: Go to unread
# go_starred: Go to starred
# go_archive: Go to archive
# go_all: Go to all entries
# go_tags: Go to tags
# go_config: Go to config
# go_import: Go to import
# go_developers: Go to developers
# go_howto: Go to howto (this page!)
# go_logout: Logout
# list_title: Shortcuts available in listing pages
# search: Display the search form
# article_title: Shortcuts available in entry view
# open_original: Open original URL of the entry
# toggle_favorite: Toggle star status for the entry
# toggle_archive: Toggle read status for the entry
# delete: Delete the entry
# material_title: Shortcuts available with Material theme only
# add_link: Add a new link
# hide_form: Hide the current form (search or new link)
# arrows_navigation: Navigate through articles
# open_article: Display the selected entry
page_description: Estos son los atajos de teclado disponibles en wallabag.
shortcut: Atajo de teclado
action: Acción
all_pages_title: Atajos de teclado disponibles en todas las páginas
go_unread: Ir a sin leer
go_starred: Ir a favoritos
go_archive: Ir a archivados
go_all: Ir a todos los artículos
go_tags: Ir a etiquetas
go_config: Ir a configuración
go_import: Ir a importar
go_developers: Ir a desarrolladores
go_howto: Ir a ayuda (esta página)
go_logout: Desconectar
list_title: Atajos de teclado disponibles en las páginas de listados
search: Mostrar el formulario de búsqueda
article_title: Atajos de teclado disponibles en el artículo
open_original: Abrir la URL original de un artículo
toggle_favorite: Marcar como favorito / no favorito el artículo
toggle_archive: marcar como leído / no leído el artículo
delete: Borrar el artículo
material_title: Atajos de teclado disponibles solo en el tema Material
add_link: Añadir un nuevo artículo
hide_form: Ocultar el formulario actual (búsqueda o nuevo artículo)
arrows_navigation: Navegar por los artículos
open_article: Mostrar el artículo seleccionado
quickstart:
page_title: 'Comienzo rápido'
# more: 'More…'
page_title: 'Inicio rápido'
more: 'Más…'
intro:
title: 'Bienvenido a wallabag !'
paragraph_1: "Le acompañaremos a su visita de wallabag y le mostraremos algunas características que le pueden interesar."
paragraph_2: '¡Síganos!'
title: '¡Bienvenido a wallabag!'
paragraph_1: "Le acompañaremos en su visita a wallabag y le mostraremos algunas características que le pueden interesar."
paragraph_2: '¡Síguenos!'
configure:
title: 'Configure la aplicación'
# description: 'In order to have an application which suits you, have a look into the configuration of wallabag.'
language: 'Cambie el idioma y el diseño de la aplicación'
description: 'Para que la aplicación se ajuste a tus necesidades, echa un vistazo a la configuración de wallabag.'
language: 'Cambie el idioma y el diseño'
rss: 'Activar los feeds RSS'
tagging_rules: 'Escribir reglas para etiquetear automaticamente sus artículos'
tagging_rules: 'Escribe reglas para etiquetar automáticamente tus artículos'
admin:
title: 'Administración'
description: 'Como administrador, tiene privilegios por wallabag. Se puede:'
description: 'Como administrador, tiene algunos privilegios en wallabag. Puedes:'
new_user: 'Crear un nuevo usuario'
analytics: 'Configure analíticas'
sharing: 'Active unos parámetros de compartir artículos'
export: 'Configure exportación'
import: 'Configure importación'
analytics: 'Configurar analíticas'
sharing: 'Activar algunos parámetros de compartir artículos'
export: 'Configurar exportación'
import: 'Configurar importación'
first_steps:
title: 'Primeros pasos'
# description: "Now wallabag is well configured, it's time to archive the web. You can click on the top right sign + to add a link."
new_article: 'Guarde su primer artículo'
unread_articles: '¡Y clasifíquelo!'
description: "Ahora que wallabag está bien configurado, es el momento de archivar la web. Puedes hacer clic en el signo + de la parte superior derecha para añadir un artículo."
new_article: 'Guarda tu primer artículo'
unread_articles: '¡Y clasifícalo!'
migrate:
title: 'Migrar de un servicio existente'
description: "¿Está usando otro servicio? Le ayudaremos a migrar sus datos a wallabag."
description: "¿Estás usando otro servicio? Le ayudaremos a migrar sus datos a wallabag."
pocket: 'Migrar desde Pocket'
wallabag_v1: 'Migrar desde wallabag v1'
wallabag_v2: 'Migrar desde wallabag v2'
readability: 'Migrar desde Readability'
instapaper: 'Migrar desde Instapaper'
developer:
title: 'Promotores'
# description: 'We also thought to the developers: Docker, API, translations, etc.'
create_application: 'Cree su tercera aplicación'
# use_docker: 'Use Docker to install wallabag'
title: 'Desarrolladores'
description: 'Nosotros también pensamos en los desarrolladores: Docker, API, traducciones, etc.'
create_application: 'Cree su aplicación de terceros'
use_docker: 'Utilice Docker para instalar wallabag'
docs:
title: 'Documentación completa'
# description: "There are so much features in wallabag. Don't hesitate to read the manual to know them and to learn how to use them."
annotate: 'Anote su artículo'
export: 'Convierta sus artículos a ePub o a PDF'
search_filters: 'Aprenda a utilizar el buscador y los filtros para encontrar el artículo que le interese'
fetching_errors: '¿Qué puedo hacer si un artículo encuentra errores por la búsqueda?'
description: "Hay muchas funcionalidades en wallabag. No dudes en leer el manual para conocerlas y aprender a utilizarlas."
annotate: 'Anotar en un artículo'
export: 'Convertir tus artículos a ePUB o PDF'
search_filters: 'Aprender a utilizar el buscador y los filtros para encontrar artículos'
fetching_errors: '¿Qué puedo hacer si se encuentran errores mientras se descarga un artículo?'
all_docs: '¡Y muchos más artículos!'
support:
title: 'Apoyo'
description: 'Si necesita ayuda, estamos disponibles para usted.'
description: 'Si necesitas ayuda, estamos a tu disposición.'
github: 'En GitHub'
email: 'Por email'
email: 'Por e-mail'
gitter: 'En Gitter'
tag:
page_title: 'Etiquetas'
list:
number_on_the_page: '{0} No hay ninguna etiqueta.|{1} Hay una etiqueta.|]1,Inf[ Hay %count% etiquetas.'
# see_untagged_entries: 'See untagged entries'
see_untagged_entries: 'Ver artículos sin etiquetas'
new:
# add: 'Add'
# placeholder: 'You can add several tags, separated by a comma.'
add: 'Añadir'
placeholder: 'Puedes añadir varias etiquetas, separadas por una coma.'
import:
page_title: 'Importar'
page_description: 'Bienvenido al útil de migración de wallabag. Seleccione el servicio previo del que usted quiera migrar.'
page_description: 'Bienvenido a la herramienta de importación de wallabag. Seleccione el servicio desde el que desea migrar.'
action:
import_contents: 'Importar los contenidos'
form:
mark_as_read_title: '¿Marcar todos como leídos?'
mark_as_read_label: 'Marcar todos artículos importados como leídos'
file_label: 'Fichero'
save_label: 'Importar el fichero'
file_label: 'Archivo'
save_label: 'Subir el archivo'
pocket:
page_title: 'Importar > Pocket'
description: "Va a importar sus datos de Pocket. Pocket no nos permite descargar el contenido de su servicio, así que el contenido de cada artículo será redescargado por wallabag."
description: "Importa todos tus datos de Pocket. Pocket no nos permite descargar el contenido desde su servicio, de manera que el contenido de cada artículo será redescargado por wallabag."
config_missing:
description: "La importación de Pocket no está configurada."
admin_message: 'Debe definir %keyurls%una clava del API Pocket%keyurle%.'
user_message: 'El administrador de su servidor debe definir una clave API Pocket.'
authorize_message: 'Puede importar sus datos desde su cuenta de Pocket. Sólo tiene que oprimir el botón para autorizar que wallabag se conecte a getpocket.com.'
connect_to_pocket: 'Conéctese a Pocket para importar los datos'
admin_message: 'Debe definir %keyurls%una clave del API Pocket%keyurle%.'
user_message: 'El administrador de su servidor debe definir una clave del API Pocket.'
authorize_message: 'Puede importar sus datos desde su cuenta de Pocket. Sólo tiene que hacer clic el botón para autorizar que wallabag se conecte a getpocket.com.'
connect_to_pocket: 'Conectar a Pocket e importar los datos'
wallabag_v1:
page_title: 'Importar > Wallabag v1'
description: 'Va a importar sus artículos de wallabag v1. En su configuración de wallabag v1, oprima "Exportar JSON" dentro de la sección "Exportar sus datos de wallabag". Usted tendrá un fichero "wallabag-export-1-xxxx-xx-xx.json".'
how_to: 'Seleccione el fichero de su exportación de wallabag v1 y oprima el botón para subirlo y importarlo.'
description: 'Importa todos tus artículos de wallabag v1. En la configuración de wallabag v1, haga clic en "Exportar JSON" dentro de la sección "Exportar datos de wallabag". Obtendrás un archivo llamado "wallabag-export-1-xxxx-xx-xx.json".'
how_to: 'Seleccione el archivo exportado de wallabag v1 y haga clic en el botón para subirlo e importarlo.'
wallabag_v2:
page_title: 'Importar > Wallabag v2'
description: 'Va a importar sus artículos de otra instancia de wallabag v2. Vaya a Todos los artículos, entonces, en la barra lateral, oprima en "JSON". Usted tendrá un fichero "All articles.json"'
description: 'Importa todos tus artículos de wallabag v2. En la sección Todos los artículos, en la barra lateral, haga clic en "JSON". Obtendrás un archivo llamado "All articles.json".'
readability:
page_title: 'Importar > Readability'
# description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
# how_to: 'Please select your Readability export and click on the below button to upload and import it.'
description: 'Importa todos tus artículos de Readability. En la página de herramientas (https://www.readability.com/tools/), haga clic en "Exportar tus datos" en la sección "Exportar datos". Recibirás un e-mail para descargar un JSON (que no tiene extensión .json).'
how_to: 'Seleccione el archivo exportado de Readability y haga clic en el botón para subirlo e importarlo.'
worker:
# enabled: "Import is made asynchronously. Once the import task is started, an external worker will handle jobs one at a time. The current service is:"
# download_images_warning: "You enabled downloading images for your articles. Combined with classic import it can take ages to proceed (or maybe failed). We <strong>strongly recommend</strong> to enable asynchronous import to avoid errors."
enabled: "La importación se realiza de forma asíncrona. Una vez que la tarea de importación ha comenzado, un trabajador externo se encargará de los artículos uno a uno. El servicio actual es:"
download_images_warning: "Tienes activado descargar imágenes de los artículos. Esto justo con la importación clásica de artículos puede tardar mucho tiempo en ser procesado (o incluso fallar). <strong>Recomendamos encarecidamente</strong> habilitar la importación asíncrona para evitar errores."
firefox:
page_title: 'Importar > Firefox'
# description: "This importer will import all your Firefox bookmarks. Just go to your bookmarks (Ctrl+Maj+O), then into \"Import and backup\", choose \"Backup...\". You will obtain a .json file."
# how_to: "Please choose the bookmark backup file and click on the button below to import it. Note that the process may take a long time since all articles have to be fetched."
description: "Importa todos tus marcadores de Firefox. En la ventana de marcadores (Ctrl+Mayus+O), en \"Importar y respaldar\", elige \"Copiar...\". Obtendrás un archivo .json."
how_to: "Seleccione el archivo exportado de Firefox y haga clic en el botón para subirlo e importarlo. Tenga en cuenta que este proceso puede tardar ya que se tienen que descargar todos los artículos."
chrome:
page_title: 'Importar > Chrome'
# description: "This importer will import all your Chrome bookmarks. The location of the file depends on your operating system : <ul><li>On Linux, go into the <code>~/.config/chromium/Default/</code> directory</li><li>On Windows, it should be at <code>%LOCALAPPDATA%\\Google\\Chrome\\User Data\\Default</code></li><li>On OS X, it should be at <code>~/Library/Application Support/Google/Chrome/Default/Bookmarks</code></li></ul>Once you got there, copy the Bookmarks file someplace you'll find.<em><br>Note that if you have Chromium instead of Chrome, you'll have to correct paths accordingly.</em></p>"
# how_to: "Please choose the bookmark backup file and click on the button below to import it. Note that the process may take a long time since all articles have to be fetched."
description: "Importa todos tus marcadores de Chrome. La ubicación del archivo depende de tu sistema operativo : <ul><li>En Linux, <code>~/.config/chromium/Default/</code></li><li>En Windows, <code>%LOCALAPPDATA%\\Google\\Chrome\\User Data\\Default</code></li><li>En OS X, <code>~/Library/Application Support/Google/Chrome/Default/Bookmarks</code></li></ul>Una vez estés en ese directorio, copia el archivo de favoritos (bookmarks) en algún sitio fácil de encontrar.<em><br>Ten en cuenta que si utilizas Chromium en vez de Chrome, la ubicación del archivo cambia.</em></p>"
how_to: "Seleccione el archivo exportado de Chrome y haga clic en el botón para subirlo e importarlo. Tenga en cuenta que este proceso puede tardar ya que se tienen que descargar todos los artículos."
instapaper:
page_title: 'Importar > Instapaper'
# description: 'This importer will import all your Instapaper articles. On the settings (https://www.instapaper.com/user) page, click on "Download .CSV file" in the "Export" section. A CSV file will be downloaded (like "instapaper-export.csv").'
# how_to: 'Please select your Instapaper export and click on the below button to upload and import it.'
description: 'Importa todos tus artículos de Instapaper. En la página de preferencias (https://www.instapaper.com/user), haz clic en "Descargar archivo .CSV" en la sección "Exportar". Obtendrás un archivo CSV llamado "instapaper-export.csv".'
how_to: 'Seleccione el archivo exportado de Instapaper y haga clic en el botón para subirlo e importarlo.'
pinboard:
page_title: "Importar > Pinboard"
# description: 'This importer will import all your Instapaper articles. On the backup (https://pinboard.in/settings/backup) page, click on "JSON" in the "Bookmarks" section. A JSON file will be downloaded (like "pinboard_export").'
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
description: 'Importa todos tus artículos de Pinboard. En la página de backup (https://pinboard.in/settings/backup), haz clic en "JSON" en la sección "Marcadores". Obtendrás un archivo JSON llamado "pinboard_export".'
how_to: 'Seleccione el archivo exportado de Pinboard y haga clic en el botón para subirlo e importarlo.'
developer:
page_title: 'Promotor'
welcome_message: 'Bienvenido a wallabag API'
page_title: 'Gestión de clientes API'
welcome_message: 'Bienvenido al API de wallabag'
documentation: 'Documentación'
how_to_first_app: 'Cómo crear mi primera aplicación'
full_documentation: 'Ver documentación de API entera'
list_methods: 'Hacer una lista de métodos API'
full_documentation: 'Ver documentación completa del API'
list_methods: 'Lista con los métodos del API'
clients:
title: 'Clientes'
create_new: 'Crear un nuevo cliente'
existing_clients:
title: 'Clientes actuales'
field_id: 'identificación del cliente'
field_secret: 'Cliente secreto'
field_uris: 'Redirigir los URI'
field_grant_types: 'Conceder manera permitida'
no_client: 'No cliente todavía.'
title: 'Clientes existentes'
field_id: 'Identificador del cliente'
field_secret: 'Secreto del cliente'
field_uris: 'URIs de redirección'
field_grant_types: 'Permisos concedidos'
no_client: 'Todavía no hay clientes.'
remove:
warn_message_1: 'Se puede quitar este cliente. ¡Está acción no se puede ser irreversible !'
warn_message_2: "Si lo elimine, cada aplicación configurada con ese cliente no se puede ser autorizada por su wallbag."
action: 'Quite este cliente'
warn_message_1: 'Tienes permiso para eliminar el cliente %name%. ¡Está acción es IRREVERSIBLE!'
warn_message_2: "Si lo eliminas, cada aplicación configurada con ese cliente no podrá autenticarse en wallabag."
action: 'Eliminar el cliente %name%'
client:
page_title: 'Promotor > Nuevo cliente'
page_description: 'Va a crear un nuevo cliente. Por favor, llene el campo abajo para URI redirigido de su aplicación.'
page_title: 'Gestión de clientes API > Nuevo cliente'
page_description: 'Está a punto de crear un nuevo cliente. Por favor, rellene el campo de abajo con la URI de redirección de su aplicación.'
form:
# name_label: 'Name of the client'
redirect_uris_label: 'los URI redirigidos'
name_label: 'Nombre del cliente'
redirect_uris_label: 'URIs de redirección'
save_label: 'Crear un nuevo cliente'
action_back: 'Atrás'
action_back: 'Volver'
client_parameter:
page_title: 'Promotor > Parámetros del cliente'
page_description: 'Aquí hay sus parámetros del cliente.'
# field_name: 'Client name'
field_id: 'Identificación del cliente'
field_secret: 'Cliente secreto'
back: 'Atrás'
read_howto: 'Leer el howto "Crear mi primera aplicación"'
page_title: 'Gestión de clientes API > Parámetros del cliente'
page_description: 'Aquí están los parámetros del cliente.'
field_name: 'Nombre del cliente'
field_id: 'Identificador del cliente'
field_secret: 'Secreto del cliente'
back: 'Volver'
read_howto: 'Lea la guía "Crear mi primera aplicación"'
howto:
page_title: 'Promotor > Cómo crear mi primera aplicación'
page_title: 'Gestión de clientes API > Cómo crear mi primera aplicación'
description:
paragraph_1: 'Los siguientes comandos se usan el <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Esté seguro de que se instalen en sus sistema antes de usarlos.'
paragraph_2: 'Necesita un token para comunicar entre su tercera aplicación y wallabag API.'
paragraph_3: 'Para crear este token, necesita <a href="%link%">to create a new client</a>.'
paragraph_4: 'Ahora, cree su token (reemplace cliente_id, cliente_secreto, usuario y contraseñ con las buenas entradas):'
paragraph_5: 'Este API devolverá una respuestas así:'
paragraph_6: 'El acceso_token es útil para hacer una llamada al final API. Por ejempolo:'
paragraph_7: 'Esta llamada devolverá todos los artículos para su usuario.'
paragraph_8: 'Si quiere ver todos los fines de API, se puede ver <a href="%link%">a nuestra documentación API</a>.'
back: 'Atrás'
paragraph_1: 'Los siguientes comandos hacen uso de la <a href="https://github.com/jkbrzt/httpie">biblioteca HTTPie</a>. Compruebe que está instalada en su sistema antes de usarla.'
paragraph_2: 'Necesitas un token para establecer la comunicación entre una aplicación de terceros y la API de wallabag.'
paragraph_3: 'Para crear este token, necesitas <a href="%link%">crear un nuevo cliente</a>.'
paragraph_4: 'Ahora crea tu token (reemplace client_id, client_secret, username y password con los valores generados):'
paragraph_5: 'Este API devolverá una respuesta como esta:'
paragraph_6: 'El access_token es útil para llamar a los métodos del API. Por ejemplo:'
paragraph_7: 'Esta llamada devolverá todos los artículos de tu usuario.'
paragraph_8: 'Si quiere ver todos los métodos del API, puede verlos en <a href="%link%">nuestra documentación del API</a>.'
back: 'Volver'
user:
# page_title: Users management
# new_user: Create a new user
# edit_user: Edit an existing user
# description: "Here you can manage all users (create, edit and delete)"
# list:
# actions: Actions
# edit_action: Edit
# yes: Yes
# no: No
# create_new_one: Create a new user
page_title: Gestión de usuarios
new_user: Crear un usuario
edit_user: Editar un usuario existente
description: "Aquí puedes gestionar todos los usuarios (crear, editar y eliminar)"
list:
actions: Acciones
edit_action: Editar
yes:
no: No
create_new_one: Crear un usuario
form:
username_label: 'Nombre de usuario'
# name_label: 'Name'
name_label: 'Nombre'
password_label: 'Contraseña'
repeat_new_password_label: 'Confirmar la nueva contraseña'
repeat_new_password_label: 'Confirmar la contraseña'
plain_password_label: '????'
email_label: 'Email'
# enabled_label: 'Enabled'
# last_login_label: 'Last login'
# twofactor_label: Two factor authentication
# save: Save
# delete: Delete
# delete_confirm: Are you sure?
# back_to_list: Back to list
email_label: 'E-mail'
enabled_label: 'Activado'
last_login_label: 'Último inicio de sesión'
twofactor_label: Autenticación en dos pasos
save: Guardar
delete: Eliminar
delete_confirm: ¿Estás seguro?
back_to_list: Volver a la lista
error:
# page_title: An error occurred
page_title: Ha ocurrido un error
flashes:
config:
notice:
config_saved: 'Configuración guardada.'
password_updated: 'Contraseña actualizada'
password_not_updated_demo: "En modo demo, no puede cambiar la contraseña del usuario."
user_updated: 'Su información personal ha sido actualizada'
rss_updated: 'La configuración de los feeds RSS ha sido actualizada'
tagging_rules_updated: 'Regla de etiquetado borrada'
tagging_rules_deleted: 'Regla de etiquetado actualizada'
rss_token_updated: 'RSS token actualizado'
# annotations_reset: Annotations reset
# tags_reset: Tags reset
# entries_reset: Entries reset
password_not_updated_demo: "En el modo demo, no puede cambiar la contraseña del usuario."
user_updated: 'Información actualizada'
rss_updated: 'Configuración RSS actualizada'
tagging_rules_updated: 'Regla de etiquetado actualizada'
tagging_rules_deleted: 'Regla de etiquetado eliminada'
rss_token_updated: 'Token RSS actualizado'
annotations_reset: Anotaciones reiniciadas
tags_reset: Etiquetas reiniciadas
entries_reset: Artículos reiniciados
entry:
notice:
entry_already_saved: 'Entrada ya guardada por %fecha%'
entry_saved: 'Entrada guardada'
# entry_saved_failed: 'Entry saved but fetching content failed'
entry_updated: 'Entrada actualizada'
entry_reloaded: 'Entrada recargada'
# entry_reloaded_failed: 'Entry reloaded but fetching content failed'
entry_already_saved: 'Artículo ya guardado el %fecha%'
entry_saved: 'Artículo guardado'
entry_saved_failed: 'Artículo guardado pero falló la descarga del contenido'
entry_updated: 'Artículo actualizado'
entry_reloaded: 'Artículo redescargado'
entry_reloaded_failed: 'Artículo redescargado pero falló la descarga del contenido'
entry_archived: 'Artículo archivado'
entry_unarchived: 'Artículo desarchivado'
entry_starred: 'Artículo guardado en los favoritos'
entry_unstarred: 'Artículo retirado de los favoritos'
entry_deleted: 'Artículo suprimido'
entry_starred: 'Artículo marcado como favorito'
entry_unstarred: 'Artículo desmarcado como favorito'
entry_deleted: 'Artículo eliminado'
tag:
notice:
tag_added: 'Etiqueta añadida'
import:
notice:
failed: 'Importación reprobada, por favor inténtelo de nuevo.'
failed_on_file: 'Se ocurre un error por procesar importación. Por favor verifique su archivo importado.'
summary: 'Resúmen importado: %importado% importado, %saltados% ya guardado.'
# summary_with_queue: 'Import summary: %queued% queued.'
failed: 'Importación fallida, por favor, inténtelo de nuevo.'
failed_on_file: 'Ocurr un error al procesar la importación. Por favor, verifique el archivo importado.'
summary: 'Resúmen de la importación: %imported% importados, %skipped% ya guardados.'
summary_with_queue: 'Resúmen de la importación: %queued% encolados.'
error:
# redis_enabled_not_installed: Redis is enabled for handle asynchronous import but it looks like <u>we can't connect to it</u>. Please check Redis configuration.
# rabbit_enabled_not_installed: RabbitMQ is enabled for handle asynchronous import but it looks like <u>we can't connect to it</u>. Please check RabbitMQ configuration.
redis_enabled_not_installed: Redis está activado para gestionar la importación asíncrona pero parece que <u>no se puede conectar</u>. Por favor, comprueba la configuración de Redis.
rabbit_enabled_not_installed: RabbitMQ está activado para gestionar la importación asíncrona pero parece que <u>no se puede conectar</u>. Por favor, comprueba la configuración de RabbitMQ.
developer:
notice:
client_created: 'Nuevo cliente creado.'
client_deleted: 'Cliente suprimido'
client_created: 'Creado el cliente %name%.'
client_deleted: 'Eliminado el cliente %name%'
user:
notice:
# added: 'User "%username%" added'
# updated: 'User "%username%" updated'
# deleted: 'User "%username%" deleted'
added: 'Añadido el usuario "%username%"'
updated: 'Actualizado el usuario "%username%"'
deleted: 'Eliminado el usuario "%username%"'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'تنظیمات درونی'
import: 'درون‌ریزی'
howto: 'خودآموز'
developer: 'سازندگان'
# developer: 'API clients management'
logout: 'خروج'
about: 'درباره'
search: 'جستجو'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
# page_title: 'Developer'
# page_title: 'API clients management'
# welcome_message: 'Welcome to the wallabag API'
# documentation: 'Documentation'
# how_to_first_app: 'How to create my first application'
@ -457,7 +457,7 @@ developer:
# warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag."
# action: 'Remove this client'
# client:
# page_title: 'Developer > New client'
# page_title: 'API clients management > New client'
# page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
# form:
# name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
# save_label: 'Create a new client'
# action_back: 'بازگشت'
# client_parameter:
# page_title: 'Developer > Client parameters'
# page_title: 'API clients management > Client parameters'
# page_description: 'Here are your client parameters.'
# field_name: 'Client name'
# field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
# back: 'بازگشت'
# read_howto: 'Read the howto "Create my first application"'
# howto:
# page_title: 'Developer > How to create my first application'
# page_title: 'API clients management > How to create my first application'
# description:
# paragraph_1: 'The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.'
# paragraph_2: 'You need a token to communicate between your 3rd application and wallabag API.'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: "Configuration interne"
import: "Importer"
howto: "Aide"
developer: "Développeur"
developer: "Gestion des clients API"
logout: "Déconnexion"
about: "À propos"
search: "Recherche"
@ -338,9 +338,9 @@ quickstart:
admin:
title: "Administration"
description: "En tant quadministrateur sur wallabag, vous avez des privilèges qui vous permettent de :"
new_user: "Créer un nouvel utilisateur"
analytics: "Configurer les statistiques"
sharing: "Activer des paramètres de partages"
new_user: "Créez un nouvel utilisateur"
analytics: "Configurez les statistiques"
sharing: "Activez des paramètres de partage"
export: "Configurer les formats dexport"
import: "Configurer limport"
first_steps:
@ -349,22 +349,22 @@ quickstart:
new_article: "Ajoutez votre premier article"
unread_articles: "Et rangez-le !"
migrate:
title: "Migrer depuis un service existant"
title: "Migrez depuis un service existant"
description: "Vous êtes un ancien utilisateur dun service existant ? Nous allons vous aider à récupérer vos données sur wallabag."
pocket: "Migrer depuis Pocket"
wallabag_v1: "Migrer depuis wallabag v1"
wallabag_v2: "Migrer depuis wallabag v2"
readability: "Migrer depuis Readability"
instapaper: "Migrer depuis Instapaper"
pocket: "Migrez depuis Pocket"
wallabag_v1: "Migrez depuis wallabag v1"
wallabag_v2: "Migrez depuis wallabag v2"
readability: "Migrez depuis Readability"
instapaper: "Migrez depuis Instapaper"
developer:
title: "Pour les développeurs"
description: "Nous avons aussi pensé aux développeurs : Docker, API, traductions, etc."
create_application: "Créer votre application tierce"
use_docker: "Utiliser Docker pour installer wallabag"
create_application: "Créez votre application tierce"
use_docker: "Utilisez Docker pour installer wallabag"
docs:
title: "Documentation complète"
description: "Il y a tellement de fonctionnalités dans wallabag. Nhésitez pas à lire le manuel pour les connaitre et apprendre comment les utiliser."
annotate: "Annoter votre article"
annotate: "Annotez votre article"
export: "Convertissez vos articles en ePub ou en PDF"
search_filters: "Apprenez à utiliser le moteur de recherche et les filtres pour retrouver larticle qui vous intéresse"
fetching_errors: "Que faire si mon article nest pas correctement récupéré ?"
@ -436,7 +436,7 @@ import:
how_to: "Choisissez le fichier de votre export Pinboard et cliquez sur le bouton ci-dessous pour limporter."
developer:
page_title: "Développeur"
page_title: "Gestion des clients API"
welcome_message: "Bienvenue sur lAPI de wallabag"
documentation: "Documentation"
how_to_first_app: "Comment créer votre première application"
@ -457,7 +457,7 @@ developer:
warn_message_2: "Si vous supprimez le client %name%, toutes les applications qui lutilisaient ne fonctionneront plus avec votre compte wallabag."
action: "Supprimer le client %name%"
client:
page_title: "Développeur > Nouveau client"
page_title: "Gestion des clients API > Nouveau client"
page_description: "Vous allez créer un nouveau client. Merci de remplir ladresse de redirection vers votre application."
form:
name_label: "Nom du client"
@ -465,7 +465,7 @@ developer:
save_label: "Créer un nouveau client"
action_back: "Retour"
client_parameter:
page_title: "Développeur > Les paramètres de votre client"
page_title: "Gestion des clients API > Les paramètres de votre client"
page_description: "Voilà les paramètres de votre client"
field_name: "Nom du client"
field_id: "ID client"
@ -473,7 +473,7 @@ developer:
back: "Retour"
read_howto: "Lire « comment créer ma première application »"
howto:
page_title: "Développeur > Comment créer votre première application"
page_title: "Gestion des clients API > Comment créer votre première application"
description:
paragraph_1: "Les commandes suivantes utilisent la <a href=\"https://github.com/jkbrzt/httpie\">librarie HTTPie</a>. Assurez-vous quelle soit installée avant de lutiliser."
paragraph_2: "Vous avez besoin dun token pour échanger entre votre application et lAPI de wallabag."

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Strumenti'
import: 'Importa'
howto: 'How to'
developer: 'Sviluppatori'
# developer: 'API clients management'
logout: 'Logout'
about: 'About'
search: 'Cerca'
@ -344,7 +344,7 @@ quickstart:
export: "Configura l'esportazione"
import: "Configura l'importazione"
first_steps:
title: 'Pimi passi'
title: 'Primi passi'
# description: "Now wallabag is well configured, it's time to archive the web. You can click on the top right sign + to add a link."
new_article: 'Salva il tuo primo contenuto'
unread_articles: 'E classificalo!'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
page_title: 'Sviluppatori'
# page_title: 'API clients management'
welcome_message: 'Benvenuto nelle API di wallabag'
documentation: 'Documentazione'
how_to_first_app: 'Come creare la mia prima applicazione'
@ -457,7 +457,7 @@ developer:
warn_message_2: "Se lo rimuovi, ogni app configurata con questo client non sarà più in grado di autenticarsi."
action: 'Rimuovi questo client'
client:
page_title: 'Sviluppatori > Nuovo client'
# page_title: 'API clients management > Nuovo client'
page_description: 'Stai per creare un nuovo client. Compila i campi sottostanti per il redirect URI della tua applicazione.'
form:
# name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
save_label: 'Crea un nuovo client'
action_back: 'Indietro'
client_parameter:
page_title: 'Sviluppatori > parametri Client'
# page_title: 'API clients management > parametri Client'
page_description: 'Questi sono i tuoi parametri del client.'
# field_name: 'Client name'
field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
back: 'Indietro'
read_howto: 'Leggi howto "Come creare la mia prima applicazione"'
howto:
page_title: 'Sviluppatori > Come creare la mia prima applicazione'
# page_title: 'API clients management > Come creare la mia prima applicazione'
description:
paragraph_1: 'I seguenti comandi fanno uso della <a href="https://github.com/jkbrzt/httpie">libreria HTTPie</a>. Verifica che sia installata sul tuo sistema prima di utilizzarli.'
paragraph_2: 'Hai bisogno di un token per far comunicare la tua applicazione di terze parti e le API di wallabag.'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Configuracion interna'
import: 'Importar'
howto: 'Ajuda'
developer: 'Desvolopaire'
developer: 'Gestion dels clients API'
logout: 'Desconnexion'
about: 'A prepaus'
search: 'Cercar'
@ -71,16 +71,16 @@ config:
300_word: "Legissi a l'entorn de 300 mots per minuta"
400_word: "Legissi a l'entorn de 400 mots per minuta"
action_mark_as_read:
# label: 'Where do you to be redirected after mark an article as read?'
# redirect_homepage: 'To the homepage'
# redirect_current_page: 'To the current page'
label: 'Ont volètz èsser menat aprèp aver marcat un article coma legit ?'
redirect_homepage: "A la pagina d'acuèlh"
redirect_current_page: 'A la pagina actuala'
pocket_consumer_key_label: Clau d'autentificacion Pocket per importar las donadas
android_configuration: Configuratz vòstra aplicacion Android
# help_theme: "wallabag is customizable. You can choose your prefered theme here."
# help_items_per_page: "You can change the number of articles displayed on each page."
# help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article."
# help_language: "You can change the language of wallabag interface."
# help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account."
help_theme: "wallabag es personalizable. Podètz causir vòstre tèma preferit aquí."
help_items_per_page: "Podètz cambiar lo nombre d'articles afichats per pagina."
help_reading_speed: "wallabag calcula lo temps de lectura per cada article. Podètz lo definir aquí, gràcias a aquesta lista, se sètz un legeire rapid o lent. wallabag tornarà calcular lo temps de lectura per cada article."
help_language: "Podètz cambiar la lenga de l'interfàcia de wallabag."
help_pocket_consumer_key: "Requesida per l'importacion de Pocket. Podètz la crear dins vòstre compte Pocket."
form_rss:
description: "Los fluxes RSS fornits per wallabag vos permeton de legir vòstres articles salvagardats dins vòstre lector de fluxes preferit. Per los poder emplegar, vos cal, d'en primièr crear un geton."
token_label: 'Geton RSS'
@ -98,7 +98,7 @@ config:
name_label: 'Nom'
email_label: 'Adreça de corrièl'
twoFactorAuthentication_label: 'Dobla autentificacion'
# help_twoFactorAuthentication: "If you enable 2FA, each time you want to login to wallabag, you'll receive a code by email."
help_twoFactorAuthentication: "S'avètz activat 2FA, cada còp que volètz vos connectar a wallabag, recebretz un còdi per corrièl."
delete:
title: Suprimir mon compte (Mèfi zòna perilhosa)
description: Se confirmatz la supression de vòstre compte, TOTES vòstres articles, TOTAS vòstras etiquetas, TOTAS vòstras anotacions e vòstre compte seràn suprimits per totjorn. E aquò es IRREVERSIBLE. Puèi seretz desconnectat.
@ -112,7 +112,7 @@ config:
entries: Levar TOTES los articles
confirm: Sètz vertadièrament segur ? (ES IRREVERSIBLE)
form_password:
# description: "You can change your password here. Your new password should by at least 8 characters long."
description: "Podètz cambiar vòstre senhal aquí. Vòstre senhal deu èsser long d'almens 8 caractèrs."
old_password_label: 'Senhal actual'
new_password_label: 'Senhal novèl'
repeat_new_password_label: 'Confirmatz vòstre novèl senhal'
@ -161,8 +161,8 @@ entry:
starred: 'Articles favorits'
archived: 'Articles legits'
filtered: 'Articles filtrats'
filtered_tags: 'Filtats per etiquetas:'
# filtered_search: 'Filtered by search:'
filtered_tags: 'Articles filtrats per etiquetas :'
filtered_search: 'Articles filtrats per recèrca :'
untagged: 'Articles sens etiqueta'
list:
number_on_the_page: "{0} I a pas cap d'article.|{1} I a un article.|]1,Inf[ I a %count% articles."
@ -186,7 +186,7 @@ entry:
preview_picture_label: 'A una fotò'
preview_picture_help: 'Fotò'
language_label: 'Lenga'
# http_status_label: 'HTTP status'
http_status_label: 'Estatut HTTP'
reading_time:
label: 'Durada de lectura en minutas'
from: 'de'
@ -229,7 +229,7 @@ entry:
form_new:
url_label: Url
search:
# placeholder: 'What are you looking for?'
placeholder: 'Qué cercatz ?'
edit:
page_title: 'Modificar un article'
title_label: 'Títol'
@ -274,8 +274,8 @@ howto:
page_title: 'Ajuda'
page_description: "I a mai d'un biais d'enregistrar un article :"
tab_menu:
# add_link: "Add a link"
# shortcuts: "Use shortcuts"
add_link: "Ajustar un ligam"
shortcuts: "Utilizar d'acorchis"
top_menu:
browser_addons: 'Extensions de navigator'
mobile_apps: 'Aplicacions mobil'
@ -295,32 +295,32 @@ howto:
bookmarklet:
description: 'Lisatz-depausatz aqueste ligam dins vòstra barra de favorits :'
shortcuts:
# page_description: Here are the shortcuts available in wallabag.
# shortcut: Shortcut
# action: Action
# all_pages_title: Shortcuts available in all pages
# go_unread: Go to unread
# go_starred: Go to starred
# go_archive: Go to archive
# go_all: Go to all entries
# go_tags: Go to tags
# go_config: Go to config
# go_import: Go to import
# go_developers: Go to developers
# go_howto: Go to howto (this page!)
# go_logout: Logout
# list_title: Shortcuts available in listing pages
# search: Display the search form
# article_title: Shortcuts available in entry view
# open_original: Open original URL of the entry
# toggle_favorite: Toggle star status for the entry
# toggle_archive: Toggle read status for the entry
# delete: Delete the entry
# material_title: Shortcuts available with Material theme only
# add_link: Add a new link
# hide_form: Hide the current form (search or new link)
# arrows_navigation: Navigate through articles
# open_article: Display the selected entry
page_description: Aquí son los acorchis disponibles dins wallabag.
shortcut: Acorchis
action: Accion
all_pages_title: Acorchis disponibles sus totas las paginas
go_unread: Anar als pas legits
go_starred: Anar als favorits
go_archive: Anar als archius
go_all: Anar a totes los articles
go_tags: Anar a las etiquetas
go_config: Anar a la config
go_import: Anar per importar
go_developers: Anar al canton desvolopaires
go_howto: Anar a l'ajuda (aquesta quita pagina !)
go_logout: Desconnexion
list_title: Acorchis disponibles dins las paginas de lista
search: Afichar lo formulari de recèrca
article_title: Acorchis disponibles dins la vista article
open_original: Dobrir l'URL originala de l'article
toggle_favorite: Cambiar l'estatut Favorit per l'article
toggle_archive: Cambiar l'estatut Legit per l'article
delete: Suprimir l'article
material_title: Acorchis solament disponibles amb lo tèma Material
add_link: Apondre un acorchi
hide_form: Rescondre lo formulari actual (recèrca o nòu ligam)
arrows_navigation: Navigar dins los articles
open_article: Afichar l'article seleccionat
quickstart:
page_title: 'Per ben començar'
@ -328,7 +328,7 @@ quickstart:
intro:
title: 'Benvenguda sus wallabag !'
paragraph_1: "Anem vos guidar per far lo torn de la proprietat e vos presentar unas fonccionalitats que vos poirián interessar per vos apropriar aquesta aisina."
paragraph_2: 'Seguètz-nos '
paragraph_2: 'Seguètz-nos !'
configure:
title: "Configuratz l'aplicacion"
description: "Per fin d'aver una aplicacion que vos va ben, anatz veire la configuracion de wallabag."
@ -382,8 +382,8 @@ tag:
number_on_the_page: "{0} I a pas cap d'etiquetas.|{1} I a una etiqueta.|]1,Inf[ I a %count% etiquetas."
see_untagged_entries: "Afichar las entradas sens pas cap d'etiquetas"
new:
# add: 'Add'
# placeholder: 'You can add several tags, separated by a comma.'
add: 'Ajustar'
placeholder: "Podètz ajustar mai qu'una etiqueta, separadas per de virgula."
import:
page_title: 'Importar'
@ -410,13 +410,13 @@ import:
how_to: "Causissètz lo fichièr de vòstra exportacion wallabag v1 e clicatz sul boton çai-jos per l'importar."
wallabag_v2:
page_title: 'Importar > Wallabag v2'
description: "Aquesta aisina importarà totas vòstras donadas d'una instància mai de wallabag v2. Anatz dins totes vòstres articles, puèi, sus la barra laterala, clicatz sus \"JSON\". Traparatz un fichièr \"All articles.json\""
description: "Aquesta aisina importarà totas vòstras donadas d'una instància mai de wallabag v2. Anatz dins totes vòstres articles, puèi, sus la barra laterala, clicatz sus \"JSON\". Traparatz un fichièr \"All articles.json\"."
readability:
page_title: 'Importar > Readability'
description: "Aquesta aisina importarà totas vòstres articles de Readability. Sus la pagina de l'aisina (https://www.readability.com/tools/), clicatz sus \"Export your data\" dins la seccion \"Data Export\". Recebretz un corrièl per telecargar un json (qu'acaba pas amb un .json de fach)."
how_to: "Mercés de seleccionar vòstre Readability fichièr e de clicar sul boton dejós per lo telecargar e l'importar."
worker:
enabled: "L'importacion se fa de manièra asincròna. Un còp l'importacion lançada, una aisina externa s'ocuparà dels messatges un per un. Lo servici actual es : "
enabled: "L'importacion se fa de manièra asincròna. Un còp l'importacion lançada, una aisina extèrna s'ocuparà dels messatges un per un. Lo servici actual es : "
download_images_warning: "Avètz activat lo telecargament de los imatges de vòstres articles. Combinat amb l'importacion classica, aquò pòt tardar un long moment (o benlèu fracassar). <strong>Recomandem fòrtament</strong> l'activacion de l'importacion asincròna per evitar las errors."
firefox:
page_title: 'Importar > Firefox'
@ -429,14 +429,14 @@ import:
instapaper:
page_title: 'Importar > Instapaper'
description: "Aquesta aisina importarà totas vòstres articles d'Instapaper. Sus la pagina de paramètres (https://www.instapaper.com/user), clicatz sus \"Download .CSV file\" dins la seccion \"Export\". Un fichièr CSV serà telecargat (aital \"instapaper-export.csv\")."
how_to: "Mercés de causir vòstre fichièr Instapaper e de clicar sul boton dejós per lo telecargar e l'importar"
how_to: "Mercés de causir vòstre fichièr Instapaper e de clicar sul boton dejós per lo telecargar e l'importar."
pinboard:
# page_title: "Import > Pinboard"
# description: 'This importer will import all your Instapaper articles. On the backup (https://pinboard.in/settings/backup) page, click on "JSON" in the "Bookmarks" section. A JSON file will be downloaded (like "pinboard_export").'
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
page_title: "Importar > Pinboard"
description: 'Aquesta aisina importarà totas vòstres articles de Pinboard. Sus la pagina de salvagarda (https://pinboard.in/settings/backup) , clicatz sus "JSON" dins la seccion "Bookmarks". Se poirà telecargar un fichièr JSON (coma "pinboard_export").'
how_to: "Mercés de causir vòstre fichièr Pinboard e de clicar sul boton dejós per lo telecargar e l'importar."
developer:
page_title: 'Desvolopaire'
page_title: 'Gestion dels clients API'
welcome_message: "Benvenguda sus l'API de wallabag"
documentation: 'Documentacion'
how_to_first_app: 'Cossí crear vòstra primièra aplicacion'
@ -451,13 +451,13 @@ developer:
field_secret: 'Clé secreta'
field_uris: 'URLs de redireccion'
field_grant_types: 'Tipe de privilègi acordat'
no_client: 'Pas cap de client pel moment'
no_client: 'Pas cap de client pel moment.'
remove:
warn_message_1: 'Avètz la possibilitat de supriimr un client. Aquesta accion es IRREVERSIBLA !'
warn_message_2: "Se suprimissètz un client, totas las aplicacions que l'emplegan foncionaràn pas mai amb vòstre compte wallabag."
action: 'Suprimir aqueste client'
client:
page_title: 'Desvolopaire > Novèl client'
page_title: 'Gestion dels clients API > Novèl client'
page_description: "Anatz crear un novèl client. Mercés de cumplir l'url de redireccion cap a vòstra aplicacion."
form:
name_label: "Nom del client"
@ -465,15 +465,15 @@ developer:
save_label: 'Crear un novèl client'
action_back: 'Retorn'
client_parameter:
page_title: 'Desvolopaire > Los paramètres de vòstre client'
page_description: 'Vaquí los paramètres de vòstre client'
page_title: 'Gestion dels clients API > Los paramètres de vòstre client'
page_description: 'Vaquí los paramètres de vòstre client.'
field_name: 'Nom del client'
field_id: 'ID Client'
field_secret: 'Clau secreta'
back: 'Retour'
read_howto: 'Legir "cossí crear ma primièra aplicacion"'
howto:
page_title: 'Desvolopaire > Cossí crear ma primièra aplicacion'
page_title: 'Gestion dels clients API > Cossí crear ma primièra aplicacion'
description:
paragraph_1: "Las comandas seguentas utilizan la <a href=\"https://github.com/jkbrzt/httpie\">bibliotèca HTTPie</a>. Asseguratz-vos que siasqueòu installadas abans de l'utilizar."
paragraph_2: "Vos cal un geton per escambiar entre vòstra aplicacion e l'API de wallabar."
@ -546,7 +546,7 @@ flashes:
tag_added: 'Etiqueta ajustada'
import:
notice:
failed: "L'importacion a fracassat, mercés de tornar ensajar"
failed: "L'importacion a fracassat, mercés de tornar ensajar."
failed_on_file: "Errorr pendent du tractament de l'import. Mercés de verificar vòstre fichièr."
summary: "Rapòrt d'import: %imported% importats, %skipped% ja presents."
summary_with_queue: "Rapòrt d'import : %queued% en espèra de tractament."
@ -555,7 +555,7 @@ flashes:
rabbit_enabled_not_installed: "RabbitMQ es capable d'importar de manièra asincròna mai sembla que <u>podèm pas nos conectar amb el</u>. Mercés de verificar la configuracion de RabbitMQ."
developer:
notice:
client_created: 'Novèl client creat'
client_created: 'Novèl client creat.'
client_deleted: 'Client suprimit'
user:
notice:

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Wewnętrzne ustawienia'
import: 'Importuj'
howto: 'Howto'
developer: 'Deweloper'
developer: 'Zarządzanie klientami API'
logout: 'Wyloguj'
about: 'O nas'
search: 'Szukaj'
@ -82,7 +82,7 @@ config:
help_language: "Możesz zmienić język interfejsu wallabag."
help_pocket_consumer_key: "Wymagane dla importu z Pocket. Możesz go stworzyć na swoim koncie Pocket."
form_rss:
description: 'Kanały RSS prowadzone przez wallabag pozwalają Ci na czytanie twoich zapisanych artykułów w twoium ulubionym czytniku RSS. Musisz najpierw wynegenerować tokena.'
description: 'Kanały RSS prowadzone przez wallabag pozwalają Ci na czytanie twoich zapisanych artykułów w twoim ulubionym czytniku RSS. Musisz najpierw wynegenerować tokena.'
token_label: 'Token RSS'
no_token: 'Brak tokena'
token_create: 'Stwórz tokena'
@ -94,7 +94,7 @@ config:
archive: 'archiwum'
rss_limit: 'Link do RSS'
form_user:
two_factor_description: "Włączenie autoryzacji dwuetapowej oznacza, że będziesz otrzymywał maile z kodem przy każdym nowym, niezaufanyum połączeniu"
two_factor_description: "Włączenie autoryzacji dwuetapowej oznacza, że będziesz otrzymywał maile z kodem przy każdym nowym, niezaufanym połączeniu"
name_label: 'Nazwa'
email_label: 'Adres email'
twoFactorAuthentication_label: 'Autoryzacja dwuetapowa'
@ -126,9 +126,9 @@ config:
faq:
title: 'FAQ'
tagging_rules_definition_title: 'Co oznaczają « reguły tagowania » ?'
tagging_rules_definition_description: 'Istnieją reguły używane przez wallabag służące do automatycznego tagowania nowych wpisów.<br />Za każdym razem kiedy dodasz nowi wpis, zostaną użyte wszystkie skonfigurowane przez ciebie regułu. Dzięki temu unikniesz konieczności ręcznego ich klasyfikowania.'
tagging_rules_definition_description: 'Istnieją reguły używane przez wallabag służące do automatycznego tagowania nowych wpisów.<br />Za każdym razem kiedy dodasz nowy wpis, zostaną użyte wszystkie skonfigurowane przez ciebie reguły. Dzięki temu unikniesz konieczności ręcznego ich klasyfikowania.'
how_to_use_them_title: 'Jak ich użyć?'
how_to_use_them_description: 'Załóżmy, że chcesz otagować nowe wpisy jako « <i>do szybkiego przeczytania</i> » jeżeli czas czytania wynosi mniej niż 3 minuty.<br />W tym przypadku ponienieneś umieścić « czasCzytania &lt;= 3 » w polu <i>Reguła</i> i « <i><do szybkiego przeczytania/i> » w polu <i>Tagi</i>.<br />Wiele tagów może zostać dodanych jednocześnie rozdzielając je przecinkami: « <i>do szybkiego przeczytania, koniecznie przeczytać</i> »<br />Kompleksowe reguły mogą być napisane przy użyciu operatorów: jeżeli « <i>czasCzytania &gt;= 5 I nazwaDomeny = "github.com"</i> » wtedy otagój jako « <i>dłuższy tekst, github </i> »'
how_to_use_them_description: 'Załóżmy, że chcesz otagować nowe wpisy jako « <i>do szybkiego przeczytania</i> » jeżeli czas czytania wynosi mniej niż 3 minuty.<br />W tym przypadku ponienieneś umieścić « czasCzytania &lt;= 3 » w polu <i>Reguła</i> i « <i><do szybkiego przeczytania/i> » w polu <i>Tagi</i>.<br />Wiele tagów może zostać dodanych jednocześnie rozdzielając je przecinkami: « <i>do szybkiego przeczytania, koniecznie przeczytać</i> »<br />Kompleksowe reguły mogą być napisane przy użyciu operatorów: jeżeli « <i>czasCzytania &gt;= 5 I nazwaDomeny = "github.com"</i> » wtedy otaguj jako « <i>dłuższy tekst, github </i> »'
variables_available_title: 'Jakich zmiennych i operatorów mogę użyć przy pisaniu reguł?'
variables_available_description: 'Następujące zmienne i operatory mogą być użyte przy tworzeniu reguł tagowania:'
meaning: 'Znaczenie'
@ -387,7 +387,7 @@ tag:
import:
page_title: 'Import'
page_description: 'Witaj w importerze Wallabag. Wybierz swoją poprzednią usługę, z której chcech migrować.'
page_description: 'Witaj w importerze Wallabag. Wybierz swoją poprzednią usługę, z której chcesz migrować.'
action:
import_contents: 'Import zawartości'
form:
@ -397,7 +397,7 @@ import:
save_label: 'Właduj plik'
pocket:
page_title: 'Import > Pocket'
description: "Ten importer, zaimportuje dane z usługi Pocket. Pocket nie pozwala na nam na pobranie zawartości ze swojej usługi, więc kontent każdego arthykuł\u zostanie ponownie pobrany przez wallabag."
description: "Ten importer, zaimportuje dane z usługi Pocket. Pocket nie pozwala na nam na pobranie zawartości ze swojej usługi, więc kontent każdego artykułu zostanie ponownie pobrany przez wallabag."
config_missing:
description: "Import z Pocket nie jest skonfigurowany."
admin_message: 'Musisz zdefiniować %keyurls%a pocket_consumer_key%keyurle%.'
@ -436,7 +436,7 @@ import:
how_to: 'Wybierz swój plik eksportu z Pinboard i kliknij poniższy przycisk, aby go załadować.'
developer:
page_title: 'Deweloper'
page_title: 'Zarządzanie klientami API'
welcome_message: 'Witaj w API wallabag'
documentation: 'Dokumentacja'
how_to_first_app: 'Jak stworzyć moją pierwszą aplikację'
@ -457,7 +457,7 @@ developer:
warn_message_2: "Jeżeli go usuniesz, aplikacje skonfigurowane z tym klientem nię będa w stanie autoryzować twojego wallabag."
action: 'Usuń tego klienta'
client:
page_title: 'Deweloper > Nowy klient'
page_title: 'Zarządzanie klientami API > Nowy klient'
page_description: 'Tworzysz nowego klienta. Wypełnij poniższe pole w celu przekierowania URI twojej aplikacji.'
form:
name_label: 'Nazwa klienta'
@ -465,7 +465,7 @@ developer:
save_label: 'Stwórz nowego klienta'
action_back: 'Cofnij'
client_parameter:
page_title: 'Deweloper > Parametry klienta'
page_title: 'Zarządzanie klientami API > Parametry klienta'
page_description: 'Tutaj znajdują się parametry klienta.'
field_name: 'Nazwa klienta'
field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
back: 'Cofnij'
read_howto: 'Przeczytaj jak "Stworzyć moją pierwszą aplikację"'
howto:
page_title: 'Deweloper > Jak stworzyć moją pierwszą aplikację'
page_title: 'Zarządzanie klientami API > Jak stworzyć moją pierwszą aplikację'
description:
paragraph_1: 'Następujące komendy korzystają <a href="https://github.com/jkbrzt/httpie">Biblioteka HTTPie</a>. Upewnij się, czy zainstalowałeś ją w swoim systemie zanim z niej skorzystasz'
paragraph_2: 'Potrzebujesz tokena w celu nawiązania komunikacji między swoją aplikacją a API wallabag.'

View File

@ -25,7 +25,7 @@ menu:
internal_settings: 'Configurações Internas'
import: 'Importar'
howto: 'How to'
developer: 'Desenvolvedor'
# developer: 'API clients management'
logout: 'Sair'
about: 'Sobre'
search: 'Pesquisa'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
page_title: 'Desenvolvedor'
# page_title: 'API clients management'
welcome_message: 'Bem-vindo a API do wallabag'
documentation: 'Documentação'
how_to_first_app: 'Como criar minha primeira aplicação'
@ -457,7 +457,7 @@ developer:
warn_message_2: 'Se você remover isso, todo o aplicativo configurado com este cliente não poderá se autenticar no seu wallabag.'
action: 'Remover este cliente'
client:
page_title: 'Desenvolvedor > Novo cliente'
# page_title: 'API clients management > Novo cliente'
page_description: 'Você está prestes a criar um novo cliente. Por favor preencha o campo abaixo para a URI de redirecionamento de sua aplicação.'
form:
name_label: 'Nome do cliente'
@ -465,7 +465,7 @@ developer:
save_label: 'Criar um novo cliente'
action_back: 'Voltar'
client_parameter:
page_title: 'Desenvolvedor > Parâmetros de clientes'
# page_title: 'API clients management > Parâmetros de clientes'
page_description: 'Aqui estão os parâmetros de seus clientes.'
field_name: 'Nome do cliente'
field_id: 'ID do cliente'
@ -473,7 +473,7 @@ developer:
back: 'Voltar'
read_howto: 'Leia o how-to "Criar minha primeira aplicação"'
howto:
page_title: 'Desenvolvedor > Criar minha primeira aplicação'
# page_title: 'API clients management > Criar minha primeira aplicação'
description:
paragraph_1: 'Os seguintes comandos fazem uso da <a href="https://github.com/jkbrzt/httpie">biblioteca HTTPie</a>. Tenha certeza que ela está instalada em seu servidor antes de usá-la.'
paragraph_2: 'Você precisa de um token para a comunicação entre sua aplicação terceira e a API do wallabag.'

View File

@ -25,7 +25,7 @@ menu:
# internal_settings: 'Internal Settings'
# import: 'Import'
howto: 'Cum să'
# developer: 'Developer'
# developer: 'API clients management'
logout: 'cum să'
about: 'Despre'
search: 'Căutare'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
# page_title: 'Developer'
# page_title: 'API clients management'
# welcome_message: 'Welcome to the wallabag API'
# documentation: 'Documentation'
# how_to_first_app: 'How to create my first application'
@ -457,7 +457,7 @@ developer:
# warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag."
# action: 'Remove this client'
# client:
# page_title: 'Developer > New client'
# page_title: 'API clients management > New client'
# page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
# form:
# name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
# save_label: 'Create a new client'
# action_back: 'Back'
# client_parameter:
# page_title: 'Developer > Client parameters'
# page_title: 'API clients management > Client parameters'
# page_description: 'Here are your client parameters.'
# field_name: 'Client name'
# field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
# back: 'Back'
# read_howto: 'Read the howto "Create my first application"'
# howto:
# page_title: 'Developer > How to create my first application'
# page_title: 'API clients management > How to create my first application'
# description:
# paragraph_1: 'The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.'
# paragraph_2: 'You need a token to communicate between your 3rd application and wallabag API.'

View File

@ -25,7 +25,7 @@ menu:
# internal_settings: 'Internal Settings'
import: 'İçe Aktar'
howto: 'Yardım'
# developer: 'Developer'
# developer: 'API clients management'
logout: ıkış Yap'
about: 'Hakkımızda'
search: 'Ara'
@ -436,7 +436,7 @@ import:
# how_to: 'Please select your Pinboard export and click on the below button to upload and import it.'
developer:
# page_title: 'Developer'
# page_title: 'API clients management'
# welcome_message: 'Welcome to the wallabag API'
# documentation: 'Documentation'
# how_to_first_app: 'How to create my first application'
@ -457,7 +457,7 @@ developer:
# warn_message_2: "If you remove it, every app configured with that client won't be able to auth on your wallabag."
# action: 'Remove this client'
# client:
# page_title: 'Developer > New client'
# page_title: 'API clients management > New client'
# page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
# form:
# name_label: 'Name of the client'
@ -465,7 +465,7 @@ developer:
# save_label: 'Create a new client'
# action_back: 'Back'
# client_parameter:
# page_title: 'Developer > Client parameters'
# page_title: 'API clients management > Client parameters'
# page_description: 'Here are your client parameters.'
# field_name: 'Client name'
# field_id: 'Client ID'
@ -473,7 +473,7 @@ developer:
# back: 'Back'
# read_howto: 'Read the howto "Create my first application"'
# howto:
# page_title: 'Developer > How to create my first application'
# page_title: 'API clients management > How to create my first application'
# description:
# paragraph_1: 'The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.'
# paragraph_2: 'You need a token to communicate between your 3rd application and wallabag API.'

View File

@ -3,7 +3,7 @@
<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
<html lang="fr">
<html>
<head>
{% block head %}
<meta name="viewport" content="initial-scale=1.0">

View File

@ -14,7 +14,7 @@
<ul>
<li><a href="{{ path('developer_howto_firstapp') }}">{{ 'developer.how_to_first_app'|trans }}</a></li>
<li><a href="http://doc.wallabag.org/en/master/developer/api.html">{{ 'developer.full_documentation'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/en/developer/api/readme.html">{{ 'developer.full_documentation'|trans }}</a></li>
<li><a href="{{ path('nelmio_api_doc_index') }}">{{ 'developer.list_methods'|trans }}</a></li>
</ul>

View File

@ -34,9 +34,10 @@
<div id="set2" class="col s12">
<dl>
<dt>{{ 'about.getting_help.documentation'|trans }}</dt>
<dd><a href="http://doc.wallabag.org/en/master/">english</a></dd>
<dd><a href="http://doc.wallabag.org/fr/master/">français</a></dd>
<dd><a href="http://doc.wallabag.org/de/master/">deutsch</a></dd>
<dd><a href="https://doc.wallabag.org/en/">english</a></dd>
<dd><a href="https://doc.wallabag.org/fr/">français</a></dd>
<dd><a href="https://doc.wallabag.org/de/">deutsch</a></dd>
<dd><a href="https://doc.wallabag.org/it/">italiano</a></dd>
<dt>{{ 'about.getting_help.bug_reports'|trans }}</dt>
<dd>{{ 'about.getting_help.support'|trans|raw }}</dd>
@ -46,7 +47,7 @@
<div id="set3" class="col s12">
<dl>
<dt>{{ 'about.helping.description'|trans }}</dt>
<dd>{{ 'about.helping.by_contributing_2'|trans }} <a href="https://github.com/wallabag/wallabag/issues/1254">{{ 'about.helping.by_contributing'|trans }}</a></dd>
<dd>{{ 'about.helping.by_contributing'|trans }} <a href="https://github.com/wallabag/wallabag/issues/1254">{{ 'about.helping.by_contributing_2'|trans }}</a></dd>
<dd><a href="{{ paypal_url }}">{{ 'about.helping.by_paypal'|trans }}</a></dd>
</dl>
</div>
@ -106,8 +107,8 @@
<tr><td>hoa/zformat</td><td>BSD-3-Clause</td></tr>
<tr><td>htmlawed/htmlawed</td><td>GPL-2.0+ or LGPL-3.0</td></tr>
<tr><td>incenteev/composer-parameter-handler</td><td>MIT</td></tr>
<tr><td>j0k3r/graby</td><td>AGPL-3.0</td></tr>
<tr><td>j0k3r/graby-site-config</td><td>AGPL-3.0</td></tr>
<tr><td>j0k3r/graby</td><td>MIT</td></tr>
<tr><td>j0k3r/graby-site-config</td><td>Public domain</td></tr>
<tr><td>j0k3r/php-readability</td><td>Apache-2.0</td></tr>
<tr><td>j0k3r/safecurl</td><td>MIT</td></tr>
<tr><td>jdorn/sql-formatter</td><td>MIT</td></tr>

View File

@ -69,8 +69,8 @@
<div class="card-action">
<ul>
<li><a href="{{ path('developer') }}">{{ 'quickstart.developer.create_application'|trans }}</a></li>
<li><a href="http://doc.wallabag.org/en/master/developer/docker.html">{{ 'quickstart.developer.use_docker'|trans }}</a></li>
<li><a href="http://doc.wallabag.org/en/master/index.html#dev-docs">{{ 'quickstart.more'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/en/developer/docker.html">{{ 'quickstart.developer.use_docker'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/">{{ 'quickstart.more'|trans }}</a></li>
</ul>
</div>
</div>
@ -84,9 +84,9 @@
</div>
<div class="card-action">
<ul>
<li><a href="http://doc.wallabag.org/en/master/user/annotations.html">{{ 'quickstart.docs.annotate'|trans }}</a></li>
<li><a href="http://doc.wallabag.org/en/master/user/download_articles.html">{{ 'quickstart.docs.export'|trans }}</a></li>
<li><a href="http://doc.wallabag.org/">{{ 'quickstart.docs.all_docs'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/en/user/articles/annotations.html">{{ 'quickstart.docs.annotate'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/en/user/articles/download.html">{{ 'quickstart.docs.export'|trans }}</a></li>
<li><a href="https://doc.wallabag.org/">{{ 'quickstart.docs.all_docs'|trans }}</a></li>
</ul>
</div>
</div>

View File

@ -11,8 +11,8 @@
<div class="card-content">
<span class="card-title dot-ellipsis dot-resize-update">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title| e | raw | striptags }}">
{{ entry.title | e | raw | striptags | truncate(80, true, '…') }}
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title| striptags | e('html_attr') }}">
{{ entry.title | striptags | truncate(80, true, '…') | raw }}
</a>
</span>

View File

@ -2,7 +2,7 @@
<div class="card-stacked">
<div class="card-content">
<span class="card-title dot-ellipsis dot-resize-update">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | raw | striptags }}">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | striptags | e('html_attr') }}">
{{ entry.title| striptags | truncate(120, true, '…') | raw }}
</a>
</span>

View File

@ -2,8 +2,8 @@
<div class="card-body">
<div class="card-content">
<span class="card-title dot-ellipsis dot-resize-update">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | e | raw | striptags }}">
{{ entry.title | e | raw | striptags | truncate(80, true, '…') }}
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | striptags | e('html_attr') }}">
{{ entry.title | striptags | truncate(80, true, '…') | raw }}
</a>
</span>

View File

@ -13,8 +13,8 @@
<i class="grey-text text-darken-4 activator material-icons right">more_vert</i>
<span class="card-title dot-ellipsis dot-resize-update">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | e | raw | striptags }}">
{{ entry.title | e | striptags | truncate(80, true, '…') | raw }}
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | striptags | e('html_attr') }}">
{{ entry.title | striptags | truncate(80, true, '…') | raw }}
</a>
</span>
@ -29,8 +29,8 @@
<div class="card-reveal">
<i class="card-title activator grey-text text-darken-4 material-icons right">clear</i>
<span class="card-title">
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | e | raw | striptags }}">
{{ entry.title | e | raw | striptags | truncate(80, true, '…') }}
<a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title | striptags | e('html_attr') }}">
{{ entry.title | striptags | truncate(80, true, '…') | raw }}
</a>
</span>

View File

@ -1,6 +1,6 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ entry.title|e|raw }} ({{ entry.domainName|removeWww }}){% endblock %}
{% block title %}{{ entry.title|striptags|raw }} ({{ entry.domainName|removeWww }}){% endblock %}
{% block body_class %}entry{% endblock %}
@ -118,14 +118,14 @@
{% endif %}
{% if craue_setting('share_twitter') %}
<li>
<a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool icon-twitter" title="twitter">
<a href="https://twitter.com/home?status={{entry.title|striptags|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool icon-twitter" title="twitter">
<span>twitter</span>
</a>
</li>
{% endif %}
{% if craue_setting('share_shaarli') %}
<li>
<a href="{{ craue_setting('shaarli_url') }}/index.php?post={{ entry.url|url_encode }}&amp;title={{ entry.title|url_encode }}&amp;tags={{ entry.tags|join(',')|url_encode }}" target="_blank">
<a href="{{ craue_setting('shaarli_url') }}/index.php?post={{ entry.url|url_encode }}&amp;title={{ entry.title|striptags|url_encode }}&amp;tags={{ entry.tags|join(',')|striptags|url_encode }}" target="_blank">
<i class="tool icon-image icon-image--shaarli" title="shaarli"></i>
<span>shaarli</span>
</a>
@ -133,7 +133,7 @@
{% endif %}
{% if craue_setting('share_diaspora') %}
<li>
<a href="{{ craue_setting('diaspora_url') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}&notes=&v=1&noui=1&jump=doclose" target="_blank">
<a href="{{ craue_setting('diaspora_url') }}/bookmarklet?url={{ entry.url|url_encode }}&amp;title={{ entry.title|striptags|url_encode }}&amp;notes=&amp;v=1&amp;noui=1&amp;jump=doclose" target="_blank">
<i class="tool icon-image icon-image--diaspora" title="diaspora"></i>
<span>diaspora*</span>
</a>
@ -141,7 +141,7 @@
{% endif %}
{% if craue_setting('share_unmark') %}
<li>
<a href="{{ craue_setting('unmark_url') }}/mark/add?url={{ entry.url|url_encode }}&amp;title={{entry.title|url_encode}}&amp;v=6" target="_blank">
<a href="{{ craue_setting('unmark_url') }}/mark/add?url={{ entry.url|url_encode }}&amp;title={{entry.title|striptags|url_encode}}&amp;v=6" target="_blank">
<i class="tool icon-image icon-image--unmark" title="unmark"></i>
<span>unmark.it</span>
</a>
@ -149,7 +149,7 @@
{% endif %}
{% if craue_setting('carrot') %}
<li>
<a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" target="_blank" title="carrot">
<a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&amp;title={{ entry.title|striptags|url_encode }}" target="_blank" title="carrot">
<i class="tool icon-image icon-image--carrot"></i>
<span>Carrot</span>
</a>
@ -157,7 +157,7 @@
{% endif %}
{% if craue_setting('share_mail') %}
<li>
<a href="mailto:?subject={{ entry.title|url_encode }}&amp;body={{ entry.url|url_encode }}%20via%20@wallabagapp" title="{{ 'entry.view.left_menu.share_email_label'|trans }}" class="tool email icon icon-mail">
<a href="mailto:?subject={{ entry.title|striptags|url_encode }}&amp;body={{ entry.url|url_encode }}%20via%20@wallabagapp" title="{{ 'entry.view.left_menu.share_email_label'|trans }}" class="tool email icon icon-mail">
<span>{{ 'entry.view.left_menu.share_email_label'|trans }}</span>
</a>
</li>
@ -209,7 +209,7 @@
{% block content %}
<div id="article">
<header class="mbm">
<h1>{{ entry.title|e|raw }} <a href="{{ path('edit', { 'id': entry.id }) }}" title="{{ 'entry.view.edit_title'|trans }}">✎</a></h1>
<h1>{{ entry.title|striptags|raw }} <a href="{{ path('edit', { 'id': entry.id }) }}" title="{{ 'entry.view.edit_title'|trans }}">✎</a></h1>
</header>
<aside>
<ul class="tools">
@ -222,7 +222,7 @@
</li>
<li>
<i class="material-icons link">link</i>
<a href="{{ entry.url|e }}" target="_blank" title="{{ 'entry.view.original_article'|trans }} : {{ entry.title|e }}" class="tool">
<a href="{{ entry.url|e }}" target="_blank" title="{{ 'entry.view.original_article'|trans }} : {{ entry.title|striptags }}" class="tool">
{{ entry.domainName|removeWww }}
</a>
</li>
@ -244,7 +244,7 @@
</div>
{% if entry.previewPicture is not null %}
<div><img class="preview" src="{{ entry.previewPicture }}" alt="{{ entry.title|raw }}" /></div>
<div><img class="preview" src="{{ entry.previewPicture }}" alt="{{ entry.title|striptags|e('html_attr') }}" /></div>
{% endif %}
</aside>

View File

@ -33,17 +33,29 @@
{% endblock %}
{% set currentRoute = app.request.attributes.get('_route') %}
{% set currentRouteFromQueryParams = app.request.query.get('currentRoute') %}
<li class="bold {% if currentRoute == 'unread' or currentRoute == 'homepage' %}active{% endif %}">
{% set activeRoute = null %}
{% if currentRoute == 'all' or currentRouteFromQueryParams == 'all' %}
{% set activeRoute = 'all' %}
{% elseif currentRoute == 'archive' or currentRouteFromQueryParams == 'archive' %}
{% set activeRoute = 'archive' %}
{% elseif currentRoute == 'starred' or currentRouteFromQueryParams == 'starred' %}
{% set activeRoute = 'starred' %}
{% elseif currentRoute == 'unread' or currentRoute == 'homepage' or currentRouteFromQueryParams == 'unread' %}
{% set activeRoute = 'unread' %}
{% endif %}
<li class="bold {% if activeRoute == 'unread' %}active{% endif %}">
<a class="waves-effect" href="{{ path('unread') }}">{{ 'menu.left.unread'|trans }} <span class="numberItems grey-text">{{ count_entries('unread') }}</span></a>
</li>
<li class="bold {% if currentRoute == 'starred' %}active{% endif %}">
<li class="bold {% if activeRoute == 'starred' %}active{% endif %}">
<a class="waves-effect" href="{{ path('starred') }}">{{ 'menu.left.starred'|trans }} <span class="numberItems grey-text">{{ count_entries('starred') }}</span></a>
</li>
<li class="bold {% if currentRoute == 'archive' %}active{% endif %}">
<li class="bold {% if activeRoute == 'archive' %}active{% endif %}">
<a class="waves-effect" href="{{ path('archive') }}">{{ 'menu.left.archive'|trans }} <span class="numberItems grey-text">{{ count_entries('archive') }}</span></a>
</li>
<li class="bold {% if currentRoute == 'all' %}active{% endif %}">
<li class="bold {% if activeRoute == 'all' %}active{% endif %}">
<a class="waves-effect" href="{{ path('all') }}">{{ 'menu.left.all_articles'|trans }} <span class="numberItems grey-text">{{ count_entries('all') }}</span></a>
</li>
<li class="bold border-bottom {% if currentRoute == 'tags' %}active{% endif %}">

View File

@ -46,7 +46,8 @@ abstract class AbstractConsumer
if (null === $user) {
$this->logger->warning('Unable to retrieve user', ['entry' => $storedEntry]);
return false;
// return true to skip message
return true;
}
$this->import->setUser($user);

View File

@ -0,0 +1,11 @@
# Two factor mail
auth_code:
on: 'on'
mailer:
subject: 'código de autenticación de wallabag'
body:
hello: "Hola %user%,"
first_para: "Debido a que tienes activada la autenticación en dos pasos y acabas de iniciar sesión en un nuevo dispositivo (ordenador, teléfono, etc.), hemos enviado un código para validar tu conexión."
second_para: "Este es el código:"
support: "Por favor, no dudes en contactarnos si tienes algún problema:"
signature: "El equipo de wallabag"

View File

@ -5,7 +5,7 @@
<div class="card-content">
{% if error %}
<script>Materialize.toast('{{ error.message }}', 4000)</script>
<script>Materialize.toast('{{ error.messageKey|trans(error.messageData, 'security') }}', 4000)</script>
{% endif %}
{% for flashMessage in app.session.flashbag.get('notice') %}

View File

@ -4,6 +4,7 @@ namespace Tests\Wallabag\ApiBundle\Controller;
use Tests\Wallabag\ApiBundle\WallabagApiTestCase;
use Wallabag\CoreBundle\Entity\Tag;
use Wallabag\CoreBundle\Helper\ContentProxy;
class EntryRestControllerTest extends WallabagApiTestCase
{
@ -156,6 +157,22 @@ class EntryRestControllerTest extends WallabagApiTestCase
$this->assertEquals('application/json', $this->client->getResponse()->headers->get('Content-Type'));
}
public function testGetEntriesOnPageTwo()
{
$this->client->request('GET', '/api/entries', [
'page' => 2,
'perPage' => 2,
]);
$this->assertEquals(200, $this->client->getResponse()->getStatusCode());
$content = json_decode($this->client->getResponse()->getContent(), true);
$this->assertGreaterThanOrEqual(0, $content['total']);
$this->assertEquals(2, $content['page']);
$this->assertEquals(2, $content['limit']);
}
public function testGetStarredEntries()
{
$this->client->request('GET', '/api/entries', ['starred' => 1, 'sort' => 'updated']);
@ -359,6 +376,39 @@ class EntryRestControllerTest extends WallabagApiTestCase
$this->assertCount(2, $content['tags']);
}
public function testPostEntryWhenFetchContentFails()
{
/** @var \Symfony\Component\DependencyInjection\Container $container */
$container = $this->client->getContainer();
$contentProxy = $this->getMockBuilder(ContentProxy::class)
->disableOriginalConstructor()
->setMethods(['updateEntry'])
->getMock();
$contentProxy->expects($this->any())
->method('updateEntry')
->willThrowException(new \Exception('Test Fetch content fails'));
$container->set('wallabag_core.content_proxy', $contentProxy);
try {
$this->client->request('POST', '/api/entries.json', [
'url' => 'http://www.example.com/',
]);
$this->assertEquals(200, $this->client->getResponse()->getStatusCode());
$content = json_decode($this->client->getResponse()->getContent(), true);
$this->assertGreaterThan(0, $content['id']);
$this->assertEquals('http://www.example.com/', $content['url']);
} finally {
// Remove the created entry to avoid side effects on other tests
if (isset($content['id'])) {
$em = $this->client->getContainer()->get('doctrine.orm.entity_manager');
$entry = $em->getReference('WallabagCoreBundle:Entry', $content['id']);
$em->remove($entry);
$em->flush();
}
}
}
public function testPostArchivedAndStarredEntry()
{
$this->client->request('POST', '/api/entries.json', [

View File

@ -591,6 +591,26 @@ class EntryControllerTest extends WallabagCoreTestCase
$this->assertCount(1, $crawler->filter('div[class=entry]'));
}
public function testFilterOnReadingTimeWithNegativeValue()
{
$this->logInAs('admin');
$client = $this->getClient();
$crawler = $client->request('GET', '/unread/list');
$form = $crawler->filter('button[id=submit-filter]')->form();
$data = [
'entry_filter[readingTime][right_number]' => -22,
'entry_filter[readingTime][left_number]' => -22,
];
$crawler = $client->submit($form, $data);
// forcing negative value results in no entry displayed
$this->assertCount(0, $crawler->filter('div[class=entry]'));
}
public function testFilterOnReadingTimeOnlyUpper()
{
$this->logInAs('admin');
@ -1093,5 +1113,29 @@ class EntryControllerTest extends WallabagCoreTestCase
$crawler = $client->submit($form, $data);
$this->assertCount(0, $crawler->filter('div[class=entry]'));
// test url search on list of all articles
$crawler = $client->request('GET', '/all/list');
$form = $crawler->filter('form[name=search]')->form();
$data = [
'search_entry[term]' => 'domain', // the search will match an entry with 'domain' in its url
];
$crawler = $client->submit($form, $data);
$this->assertCount(1, $crawler->filter('div[class=entry]'));
// same as previous test but for case-sensitivity
$crawler = $client->request('GET', '/all/list');
$form = $crawler->filter('form[name=search]')->form();
$data = [
'search_entry[term]' => 'doMain', // the search will match an entry with 'domain' in its url
];
$crawler = $client->submit($form, $data);
$this->assertCount(1, $crawler->filter('div[class=entry]'));
}
}

View File

@ -183,7 +183,9 @@ JSON;
$message = new AMQPMessage($body);
$consumer->execute($message);
$res = $consumer->execute($message);
$this->assertTrue($res);
}
public function testMessageWithEntryProcessed()

View File

@ -182,7 +182,7 @@ JSON;
$res = $consumer->manage($body);
$this->assertFalse($res);
$this->assertTrue($res);
}
public function testMessageWithEntryProcessed()

View File

@ -633,12 +633,6 @@ class SymfonyRequirements extends RequirementCollection
'Install and enable the <strong>mbstring</strong> extension.'
);
$this->addRecommendation(
function_exists('iconv'),
'iconv() should be available',
'Install and enable the <strong>iconv</strong> extension.'
);
$this->addRecommendation(
function_exists('utf8_decode'),
'utf8_decode() should be available',

Some files were not shown because too many files have changed in this diff Show More