]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Merge pull request #2020 from wallabag/fix-number-entries-per-tag
authorJeremy Benoist <j0k3r@users.noreply.github.com>
Sat, 7 May 2016 09:09:37 +0000 (11:09 +0200)
committerJeremy Benoist <j0k3r@users.noreply.github.com>
Sat, 7 May 2016 09:09:37 +0000 (11:09 +0200)
Fix number of entries in tag/list

19 files changed:
README.md
docs/en/index.rst
docs/en/user/android.rst [new file with mode: 0644]
docs/img/user/android_configuration_connection_test.de.png [new file with mode: 0644]
docs/img/user/android_configuration_connection_test_success.de.png [new file with mode: 0644]
docs/img/user/android_configuration_feed_credentials_automatically_filled_in.de.png [new file with mode: 0644]
docs/img/user/android_configuration_filled_in.de.png [new file with mode: 0644]
docs/img/user/android_configuration_get_feed_credentials.de.png [new file with mode: 0644]
docs/img/user/android_configuration_saved_feed_update.de.png [new file with mode: 0644]
docs/img/user/android_configuration_screen.de.png [new file with mode: 0644]
docs/img/user/android_configuration_scroll_bottom.de.png [new file with mode: 0644]
docs/img/user/android_unread_feed_synced.de.png [new file with mode: 0644]
docs/img/user/android_welcome_screen.de.png [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/public/themes/material/css/main.css
src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig
src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/pager.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig
src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/pager.html.twig [new file with mode: 0644]

index 244fc3f9fe497d3aa762c6f61eaf86fd12fcb732..cad6ddf3dc4f5b892ebf6ed136213d8deb7568f8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-[![Build Status](https://travis-ci.org/wallabag/wallabag.svg?branch=v2)](https://travis-ci.org/wallabag/wallabag)
-[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/wallabag/wallabag/badges/quality-score.png?b=v2)](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=v2)
+[![Build Status](https://api.travis-ci.org/wallabag/wallabag.svg?branch=master)](https://travis-ci.org/wallabag/wallabag)
+[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/wallabag/wallabag/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=v2)
 [![Gitter](https://badges.gitter.im/gitterHQ/gitter.svg)](https://gitter.im/wallabag/wallabag)
 
 # What is wallabag?
index 590c234a45a3a5a421c779696f63e7ba7bac7d0c..f4b8628af20ab5934274e649b1872741659d0f89 100644 (file)
@@ -37,6 +37,7 @@ The main documentation for this application is organized into a couple sections:
    user/download_articles
    user/filters
    user/tags
+   user/android
 
 .. _dev-docs:
 
diff --git a/docs/en/user/android.rst b/docs/en/user/android.rst
new file mode 100644 (file)
index 0000000..c13cf03
--- /dev/null
@@ -0,0 +1,107 @@
+Android App
+===========
+
+
+Purpose of this document
+------------------------
+
+This document describes how you can setup your Android application to work with your wallabag instance. There is no difference in this procedure for wallabag v1 or v2.
+
+
+Steps to configure your app
+---------------------------
+
+When you first start the app, you see the welcome screen, where you are adviced to configure the app for your wallabag instance at first.
+
+.. image:: ../../img/user/android_welcome_screen.de.png
+    :alt: Welcome screen
+    :align: center
+
+Just confirm that message and you get redirected to the settings screen.
+
+.. image:: ../../img/user/android_configuration_screen.de.png
+    :alt: Settings screen
+    :align: center
+
+Fill in your wallabag data. You need to enter your wallabag address. It is important that this URL does not end with a slash. Also add your wallabag credentials to the user name and password field.
+
+.. image:: ../../img/user/android_configuration_filled_in.de.png
+    :alt: Filled in settings
+    :align: center
+
+After you have filled in your data, push the button Connection test and wait for the test to finish. 
+
+.. image:: ../../img/user/android_configuration_connection_test.de.png
+    :alt: Connection test with your wallabag data
+    :align: center
+
+The connection test shall finish with success. If not, you need to fix this first until you proceed. 
+
+.. image:: ../../img/user/android_configuration_connection_test_success.de.png
+    :alt: Connection test successful
+    :align: center
+
+After the connection test was successful, you can push the button to get your feed credentials. The app now tries to login to your wallabag instance and get the user id and the corresponding token for the feeds.
+
+.. image:: ../../img/user/android_configuration_get_feed_credentials.de.png
+    :alt: Getting the feed credentials
+    :align: center
+
+When the process of getting your feed credentials finishes with success you see a toast message that the user id and the token were automatically filled in to the form.
+
+.. image:: ../../img/user/android_configuration_feed_credentials_automatically_filled_in.de.png
+    :alt: Getting feed credentials successful
+    :align: center
+
+Now you need to scroll to the bottom of the settings menu. Of course you can adjust the given settings to your needs. Finish the configuration of your app with pushing the save button.
+
+.. image:: ../../img/user/android_configuration_scroll_bottom.de.png
+    :alt: Bottom of the settings screen
+    :align: center
+
+After hitting the save button, you get the following screen. The app proposes to initiate a syncronisation process to update your feeds of articles. It is recommended to acknowledge this action and press Yes.
+
+.. image:: ../../img/user/android_configuration_saved_feed_update.de.png
+    :alt: Settings saved the first time
+    :align: center
+
+Finally after the syncronisation finished successfully, you are presented the list of unread articles. 
+
+.. image:: ../../img/user/android_unread_feed_synced.de.png
+    :alt: Filled article list cause feeds successfully syncronized
+    :align: center
+
+
+
+Known limitations
+----
+
+2FA
+~~~
+
+Currently the does not support two-factor authentication. You should disable that to get the app working.
+
+
+Limited amount of articles with wallabag v2
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In your wallabag web instance you can configure how many items are part of the RSS feed. This option did not exist in wallabag v1, where all articles were part of the feed. So if you set the amount of articles being displayed greater than the number of items being content of your RSS feed, you will only see the number of items in your RSS feed. 
+
+
+SSL/TLS encryption
+~~~~~~~~~~~~~~~~~~
+
+If you can reach your wallabag web instance via HTTPS, you should use that. Especially if your HTTP URL redirects you to the HTTPS one. Currently, the app cannot handle that redirect properly.
+
+
+References
+----------
+
+`Source code of the Android application <https://github.com/wallabag/android-app>`_
+
+`Android Application on F-Droid <https://f-droid.org/repository/browse/?fdfilter=wallabag&fdid=fr.gaulupeau.apps.InThePoche>`_
+
+`Android Application on Google Play <https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche>`_
+
+`Support chat <https://gitter.im/wallabag/wallabag>`_
+
diff --git a/docs/img/user/android_configuration_connection_test.de.png b/docs/img/user/android_configuration_connection_test.de.png
new file mode 100644 (file)
index 0000000..63394f8
Binary files /dev/null and b/docs/img/user/android_configuration_connection_test.de.png differ
diff --git a/docs/img/user/android_configuration_connection_test_success.de.png b/docs/img/user/android_configuration_connection_test_success.de.png
new file mode 100644 (file)
index 0000000..f5c1971
Binary files /dev/null and b/docs/img/user/android_configuration_connection_test_success.de.png differ
diff --git a/docs/img/user/android_configuration_feed_credentials_automatically_filled_in.de.png b/docs/img/user/android_configuration_feed_credentials_automatically_filled_in.de.png
new file mode 100644 (file)
index 0000000..a191a6e
Binary files /dev/null and b/docs/img/user/android_configuration_feed_credentials_automatically_filled_in.de.png differ
diff --git a/docs/img/user/android_configuration_filled_in.de.png b/docs/img/user/android_configuration_filled_in.de.png
new file mode 100644 (file)
index 0000000..4cd8d70
Binary files /dev/null and b/docs/img/user/android_configuration_filled_in.de.png differ
diff --git a/docs/img/user/android_configuration_get_feed_credentials.de.png b/docs/img/user/android_configuration_get_feed_credentials.de.png
new file mode 100644 (file)
index 0000000..1c401cb
Binary files /dev/null and b/docs/img/user/android_configuration_get_feed_credentials.de.png differ
diff --git a/docs/img/user/android_configuration_saved_feed_update.de.png b/docs/img/user/android_configuration_saved_feed_update.de.png
new file mode 100644 (file)
index 0000000..2af4102
Binary files /dev/null and b/docs/img/user/android_configuration_saved_feed_update.de.png differ
diff --git a/docs/img/user/android_configuration_screen.de.png b/docs/img/user/android_configuration_screen.de.png
new file mode 100644 (file)
index 0000000..7bf7218
Binary files /dev/null and b/docs/img/user/android_configuration_screen.de.png differ
diff --git a/docs/img/user/android_configuration_scroll_bottom.de.png b/docs/img/user/android_configuration_scroll_bottom.de.png
new file mode 100644 (file)
index 0000000..8210832
Binary files /dev/null and b/docs/img/user/android_configuration_scroll_bottom.de.png differ
diff --git a/docs/img/user/android_unread_feed_synced.de.png b/docs/img/user/android_unread_feed_synced.de.png
new file mode 100644 (file)
index 0000000..a3b6ed0
Binary files /dev/null and b/docs/img/user/android_unread_feed_synced.de.png differ
diff --git a/docs/img/user/android_welcome_screen.de.png b/docs/img/user/android_welcome_screen.de.png
new file mode 100644 (file)
index 0000000..4d3543d
Binary files /dev/null and b/docs/img/user/android_welcome_screen.de.png differ
index a3915b1d90dc2490f024bae14d56783082a69bba..b106d91a3b807e6a2e325271623fa0924f6911d7 100755 (executable)
@@ -437,6 +437,9 @@ main ul.row {
     .indicator {
         display: none;
     }
+    .pagination li.prev, .pagination li.next {
+        width: auto;
+    }
   }
 
 @media only screen and (min-width : 400px) {
index f96a6122c986a6fde6fcbb8f8b859cf54fe539ad..ae30fce118cb3505960a537effc3fbcfdc478c14 100644 (file)
@@ -30,11 +30,11 @@ menu:
         about: 'About'
         search: 'Cerca'
         save_link: 'Salva collegamento'
-        back_to_unread: 'Torna agli articoli non letti'
+        back_to_unread: 'Torna ai contenuti non letti'
     top:
-        add_new_entry: 'Aggiungi un nuovo articolo'
+        add_new_entry: 'Aggiungi un nuovo contenuto'
         search: 'Cerca'
-        filter_entries: 'Filtra articoli'
+        filter_entries: 'Filtra contenuti'
         export: 'Esporta'
     search_form:
         input_label: 'Inserisci qui la tua ricerca'
@@ -69,7 +69,7 @@ config:
             300_word: 'Leggo ~300 parole al minuto'
             400_word: 'Leggo ~400 parole al minuto'
     form_rss:
-        description: 'I feed RSS generati da wallabag ti permettono di leggere i tuoi articoli salvati con il tuo lettore di RSS preferito. Prima, devi generare un token.'
+        description: 'I feed RSS generati da wallabag ti permettono di leggere i tuoi contenuti salvati con il tuo lettore di RSS preferito. Prima, devi generare un token.'
         token_label: 'RSS token'
         no_token: 'Nessun token'
         token_create: 'Crea il tuo token'
@@ -90,42 +90,42 @@ config:
         new_password_label: 'Nuova password'
         repeat_new_password_label: 'Ripeti la nuova password'
     form_rules:
-        if_label: 'if'
-        then_tag_as_label: 'then tag as'
-        delete_rule_label: 'delete'
-        rule_label: 'Rule'
-        tags_label: 'Tags'
+        if_label: 'se'
+        then_tag_as_label: 'allora tagga come'
+        delete_rule_label: 'elimina'
+        rule_label: 'Regola'
+        tags_label: 'Tag'
         faq:
             title: 'FAQ'
-            tagging_rules_definition_title: 'What does « tagging rules » mean?'
-            tagging_rules_definition_description: 'They are rules used by Wallabag to automatically tag new entries.<br />Each time a new entry is added, all the tagging rules will be used to add the tags you configured, thus saving you the trouble to manually classify your entries.'
-            how_to_use_them_title: 'How do I use them?'
-            how_to_use_them_description: 'Let assume you want to tag new entries as « <i>short reading</i> » when the reading time is inferior to 3 minutes.<br />In that case, you should put « readingTime &lt;= 3 » in the <i>Rule</i> field and « <i>short reading</i> » in the <i>Tags</i> field.<br />Several tags can added simultaneously by separating them by a comma: « <i>short reading, must read</i> »<br />Complex rules can be written by using predefined operators: if « <i>readingTime &gt;= 5 AND domainName = "github.com"</i> » then tag as « <i>long reading, github </i> »'
-            variables_available_title: 'Which variables and operators can I use to write rules?'
-            variables_available_description: 'The following variables and operators can be used to create tagging rules:'
-            meaning: 'Meaning'
+            tagging_rules_definition_title: 'Cosa significa « regole di tagging » ?'
+            tagging_rules_definition_description: 'Sono regole utilizzate da wallabag per taggare automaticamente i contenuti.<br />Ogni volta che viene aggiunto un contenuto, tutte le regole di tagging rules vengono utilizzate per aggiungere i tag configurati, risparmiandoti il lavoro di classificare i contenuti manualmente.'
+            how_to_use_them_title: 'Come si usano?'
+            how_to_use_them_description: 'Diciamo che vuoi taggare un contenuto come « <i>lettura veloce</i> » quando il tempo di lettura è inferiore ai 3 minuti.<br />In questo case, devi mettere « readingTime &lt;= 3 » nel campo <i>Regola</i> e « <i>lettura veloce</i> » nel campo <i>Tag</i>.<br />Molti tag si possono aggiungere contemporanemente separandoli con una virgola: « <i>lettura veloce, da leggere</i> »<br />Regole complesse possono essere scritte utilizzando gli operatori predefiniti: se « <i>readingTime &gt;= 5 AND domainName = "github.com"</i> » allora tagga « <i>lettura lunga, github </i> »'
+            variables_available_title: 'Quali operatori e variabili posso utilizzare per scrivere delle regole?'
+            variables_available_description: 'I seguenti operatori e variabili posso essere utilizzati per scrivere regole di tagging:'
+            meaning: 'Significato'
             variable_description:
-                label: 'Variable'
-                title: 'Title of the entry'
-                url: 'URL of the entry'
-                isArchived: 'Whether the entry is archived or not'
-                isStarred: 'Whether the entry is starred or not'
-                content: "The entry's content"
-                language: "The entry's language"
-                mimetype: "The entry's mime-type"
-                readingTime: "The estimated entry's reading time, in minutes"
-                domainName: 'The domain name of the entry'
+                label: 'Variabile'
+                title: "Titolo del contenuto"
+                url: "URL del contenuto"
+                isArchived: "Specifica se il contenuto è archiviato o no"
+                isStarred: "Specifica se il contenuto è preferito o no"
+                content: "La pagina del contenuto"
+                language: "La lingua del contenuto"
+                mimetype: "Mime-type del contenuto"
+                readingTime: "Il tempo di lettura stimato del contenuto, in minuti"
+                domainName: "Il nome di dominio del contenuto"
             operator_description:
-                label: 'Operator'
-                less_than: 'Less than...'
-                strictly_less_than: 'Strictly less than...'
-                greater_than: 'Greater than...'
-                strictly_greater_than: 'Strictly greater than...'
-                equal_to: 'Equal to...'
-                not_equal_to: 'Not equal to...'
-                or: 'One rule OR another'
-                and: 'One rule AND another'
-                matches: 'Tests that a <i>subject</i> is matches a <i>search</i> (case-insensitive).<br />Example: <code>title matches "football"</code>'
+                label: 'Operatore'
+                less_than: 'Minore/uguale di...'
+                strictly_less_than: 'Minore di...'
+                greater_than: 'Maggiore/uguale di...'
+                strictly_greater_than: 'Maggiore di...'
+                equal_to: 'Uguale a...'
+                not_equal_to: 'Non uguale a...'
+                or: "Una regola O un'altra"
+                and: "Una regola E un'altra"
+                matches: 'Verifica che un <i>oggetto</i> risulti in una <i>ricerca</i> (case-insensitive).<br />Esempio: <code>titolo contiene "football"</code>'
     form_new_user:
         username_label: 'Username'
         password_label: 'Password'
@@ -135,12 +135,12 @@ config:
 
 entry:
     page_titles:
-        unread: 'Articoli non letti'
-        starred: 'Articoli preferiti'
-        archived: 'Articoli archiviati'
-        filtered: 'Articoli filtrati'
+        unread: 'Contenuti non letti'
+        starred: 'Contenuti preferiti'
+        archived: 'Contenuti archiviati'
+        filtered: 'Contenuti filtrati'
     list:
-        number_on_the_page: '{0} Non ci sono articoli.|{1} Un articolo.|]1,Inf[ Ci sono %count% articolo.'
+        number_on_the_page: "{0} Non ci sono contenuti.|{1} C'è un contenuto.|]1,Inf[ Ci sono %count% contenuti."
         reading_time: 'tempo di lettura stimato'
         reading_time_minutes: 'tempo di lettura stimato: %readingTime% min'
         reading_time_less_one_minute: 'tempo di lettura stimato: <small class="inferieur">&lt;</small> 1 min'
@@ -176,8 +176,8 @@ entry:
             set_as_read: 'Segna come già letto'
             set_as_unread: 'Segna come da leggere'
             set_as_favorite: 'Segna come preferito'
-            view_original_article: 'Articolo originale'
-            re_fetch_content: 'Ri-ottieni contenuto'
+            view_original_article: 'Contenuto originale'
+            re_fetch_content: 'Ri-ottieni pagina'
             delete: 'Elimina'
             add_a_tag: 'Aggiungi un tag'
             share_content: 'Condividi'
@@ -186,12 +186,12 @@ entry:
             print: 'Stampa'
             problem:
                 label: 'Problemi?'
-                description: 'Questo articolo viene visualizzato male?'
+                description: 'Questo contenuto viene visualizzato male?'
         edit_title: 'Modifica titolo'
         original_article: 'originale'
         annotations_on_the_entry: '{0} Nessuna annotazione|{1} Una annotazione|]1,Inf[ %nbAnnotations% annotazioni'
     new:
-        page_title: 'Salva nuovo articolo'
+        page_title: 'Salva un nuovo contenuto'
         placeholder: 'http://website.com'
         form_new:
             url_label: Url
@@ -205,221 +205,221 @@ entry:
 about:
     page_title: 'About'
     top_menu:
-        who_behind_wallabag: 'Who is behind wallabag'
-        getting_help: 'Getting help'
-        helping: 'Helping wallabag'
-        contributors: 'Contributors'
-        third_party: 'Third-party libraries'
+        who_behind_wallabag: "Chi c'è dietro a wallabag"
+        getting_help: 'Ottieni aiuto'
+        helping: 'Aiuta wallabag'
+        contributors: 'Collaboratori'
+        third_party: 'Librerie di terze parti'
     who_behind_wallabag:
-        developped_by: 'Developed by'
-        website: 'website'
-        many_contributors: 'And many others contributors ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">on Github</a>'
-        project_website: 'Project website'
-        license: 'License'
-        version: 'Version'
+        developped_by: 'Sviluppato da'
+        website: 'sito web'
+        many_contributors: 'E molti altri collaboratori ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">su Github</a>'
+        project_website: 'Sito web del progetto'
+        license: 'Licenza'
+        version: 'Versione'
     getting_help:
-        documentation: 'Documentation'
+        documentation: 'Documentazione'
         bug_reports: 'Bug reports'
-        support: '<a href="https://support.wallabag.org">On our support website</a> or <a href="https://github.com/wallabag/wallabag/issues">on GitHub</a>'
+        support: '<a href="https://support.wallabag.org">Sul nostro sito di supporto</a> o <a href="https://github.com/wallabag/wallabag/issues">su GitHub</a>'
     helping:
-        description: 'wallabag is free and opensource. You can help us:'
-        by_contributing: 'by contributing to the project:'
-        by_contributing_2: 'an issue lists all our needs'
+        description: 'wallabag è gratuito opensource. Puoi aiutarci:'
+        by_contributing: 'per contribuire al progetto:'
+        by_contributing_2: 'un elenco delle attività richieste'
         by_paypal: 'via Paypal'
     contributors:
-        description: 'Thank you to contributors on wallabag web application'
+        description: 'Un grazie ai collaboratori di wallabag web application'
     third_party:
-        description: 'Here are the list of third-party libraries used in wallabag (with their licenses):'
+        description: 'Ecco un elenco delle librerie di terze parti utilizzate in wallabag (con le rispettive licenze):'
         package: 'Package'
-        license: 'License'
+        license: 'Licenza'
 
 howto:
     page_title: 'How to'
-    page_description: 'There are several ways to save an article:'
+    page_description: 'Ci sono diversi modi per salvare un contenuto:'
     top_menu:
-        browser_addons: 'Browser addons'
-        mobile_apps: 'Mobile apps'
-        bookmarklet: 'Bookmarklet'
+        browser_addons: 'tramite addons del Browser'
+        mobile_apps: 'tramite app Mobile'
+        bookmarklet: 'tramite Bookmarklet'
     form:
-        description: 'Thanks to this form'
+        description: 'Tramite questo modulo'
     browser_addons:
-        firefox: 'Standard Firefox Add-On'
-        chrome: 'Chrome Extension'
+        firefox: 'Add-On di Firefox'
+        chrome: 'Estensione di Chrome'
     mobile_apps:
         android:
             via_f_droid: 'via F-Droid'
             via_google_play: 'via Google Play'
-        ios: 'on the iTunes Store'
-        windows: 'on the Microsoft Store'
+        ios: 'sullo store di iTunes'
+        windows: 'sullo store di Microsoft'
     bookmarklet:
-        description: 'Drag & drop this link to your bookmarks bar:'
+        description: 'Trascinando e rilasciando questo link sulla barra dei bookmark del tuo browser:'
 
 quickstart:
-    page_title: 'Quickstart'
+    page_title: 'Introduzione'
     intro:
-        title: 'Welcome to wallabag!'
-        paragraph_1: "We'll accompany you to visit wallabag and show you some features which can interest you."
-        paragraph_2: 'Follow us!'
+        title: 'Benvenuto su wallabag!'
+        paragraph_1: "Un tour in cui ti guideremo per scoprire e che ti mostrerà delle funzionalità che potrebbero interessarti."
+        paragraph_2: 'Seguici!'
     configure:
-        title: 'Configure the application'
-        language: 'Change language and design'
-        rss: 'Enable RSS feeds'
-        tagging_rules: 'Write rules to automatically tag your articles'
+        title: "Configura l'applicazione"
+        language: 'Cambia lingua e design'
+        rss: 'Abilita i feed RSS'
+        tagging_rules: 'Scrivi delle regole per taggare automaticamente i contenuti'
     admin:
-        title: 'Administration'
-        description: 'As an administrator, you have privileges on wallabag. You can:'
-        new_user: 'Create a new user'
-        analytics: 'Configure analytics'
-        sharing: 'Enable some parameters about article sharing'
-        export: 'Configure export'
-        import: 'Configure import'
+        title: 'Amministrazione'
+        description: 'Come amministratore, hai la possibilità di svolgere le seguenti operazioni in wallabag:'
+        new_user: 'Crea un nuovo account'
+        analytics: 'Configura analytics'
+        sharing: 'Abilita alcuni parametri riguardo il salvataggio dei contenuti'
+        export: "Configura l'esportazione"
+        import: "Configura l'importazione"
     first_steps:
-        title: 'First steps'
-        new_article: 'Save your first article'
-        unread_articles: 'And classify it!'
+        title: 'Pimi passi'
+        new_article: 'Salva il tuo primo contenuto'
+        unread_articles: 'E classificalo!'
     migrate:
-        title: 'Migrate from an existing service'
-        description: "Are you using another service? We'll help you to retrieve your data on wallabag."
-        pocket: 'Migrate from Pocket'
-        wallabag_v1: 'Migrate from wallabag v1'
-        wallabag_v2: 'Migrate from wallabag v2'
+        title: 'Trasferimento da un servizio esistente'
+        description: "Stai utilizzando un altro servizio? Ti aiutiamo a traferire i tuoi dati su wallabag."
+        pocket: 'Trasferisci da Pocket'
+        wallabag_v1: 'Trasferisci da wallabag v1'
+        wallabag_v2: 'Trasferisci da wallabag v2'
     developer:
-        title: 'Developers'
-        create_application: 'Create your third application'
+        title: 'Sviluppatori'
+        create_application: 'Crea la tua applicazione'
     docs:
-        title: 'Full documentation'
-        annotate: 'Annotate your article'
-        export: 'Convert your articles into ePUB or PDF'
-        search_filters: 'See how you can look for an article by using search engine and filters'
-        fetching_errors: 'What can I do if an article encounters errors during fetching?'
-        all_docs: 'And so many other articles!'
+        title: 'Documentazione completa'
+        annotate: 'Annota il tuo contenuto'
+        export: 'Converti i tuoi contenuti in EPUB o PDF'
+        search_filters: 'Impara come puoi recuperare un contenuto tramite la ricerca e i filtri'
+        fetching_errors: 'Cosa posso fare se riscontro problemi nel recupero di un contenuto?'
+        all_docs: 'E molta altra documentazione!'
     support:
-        title: 'Support'
-        description: 'If you need some help, we are here for you.'
-        github: 'On GitHub'
-        email: 'By email'
-        gitter: 'On Gitter'
+        title: 'Supporto'
+        description: 'Se hai bisogno di aiuto, siamo qui per te.'
+        github: 'Su GitHub'
+        email: 'Per email'
+        gitter: 'Su Gitter'
 
 tag:
     page_title: 'Tags'
     list:
-        number_on_the_page: '{0} There is no tag.|{1} There is one tag.|]1,Inf[ There are %count% tags.'
+        number_on_the_page: "{0} Non ci sono tag.|{1} C'è un tag.|]1,Inf[ ci sono %count% tag."
 
 import:
-    page_title: 'Import'
-    page_description: 'Welcome to wallabag importer. Please select your previous service that you want to migrate.'
+    page_title: 'Importa'
+    page_description: "Benvenuto nell'importatore di wallabag. Seleziona il servizio da cui vuoi trasferire i contenuti."
     action:
-        import_contents: 'Import contents'
+        import_contents: 'Importa contenuti'
     form:
-        mark_as_read_title: 'Mark all as read?'
-        mark_as_read_label: 'Mark all imported entries as read'
+        mark_as_read_title: 'Segna tutto come già letto?'
+        mark_as_read_label: 'Segna tutti i contenuti importati come letti'
         file_label: 'File'
-        save_label: 'Upload file'
+        save_label: 'Carica file'
     pocket:
-        page_title: 'Import > Pocket'
-        description: "This importer will import all your Pocket data. Pocket doesn't allow us to retrieve content from their service, so the readable content of each article will be re-fetched by wallabag."
+        page_title: 'Importa da > Pocket'
+        description: "Questo importatore copierà tutti i tuoi dati da Pocket. Pocket non ci consente di ottenere contenuti dal loro servzio, così il contenuto leggibile di ogni articolo verrà ri-ottenuto da wallabag."
         config_missing:
-            description: "Pocket import isn't configured."
-            admin_message: 'You need to define %keyurls%a pocket_consumer_key%keyurle%.'
-            user_message: 'Your server admin needs to define an API Key for Pocket.'
-        authorize_message: 'You can import your data from your Pocket account. You just have to click on the below button and authorize the application to connect to getpocket.com.'
-        connect_to_pocket: 'Connect to Pocket and import data'
+            description: "Importazione da Pocket non configurata."
+            admin_message: 'Devi definire %keyurls% una pocket_consumer_key %keyurle%.'
+            user_message: 'Il tuo amministratore di server deve define una API Key per Pocket.'
+        authorize_message: 'Puoi importare dati dal tuo account Pocket. Devi solo cliccare sul pulsante sottostante e autorizzare la connessione a getpocket.com.'
+        connect_to_pocket: 'Connetti a Pocket and importa i dati'
     wallabag_v1:
-        page_title: 'Import > Wallabag v1'
-        description: 'This importer will import all your wallabag v1 articles. On your config page, click on "JSON export" in the "Export your wallabag data" section. You will have a "wallabag-export-1-xxxx-xx-xx.json" file.'
-        how_to: 'Please select your wallabag export and click on the below button to upload and import it.'
+        page_title: 'Importa da > Wallabag v1'
+        description: 'Questo importatore copierà tutti i tuoi dati da un wallabag v1. Nella tua pagina di configurazione, clicca su "JSON export" nella sezione "Esport i tuoi dati di wallabag". Otterrai un file "wallabag-export-1-xxxx-xx-xx.json".'
+        how_to: 'Seleziona la tua esportazione di wallabag e clicca sul pulsante sottostante caricare il file e importare i dati.'
     wallabag_v2:
-        page_title: 'Import > Wallabag v2'
-        description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.'
+        page_title: 'Importa da > Wallabag v2'
+        description: 'Questo importatore copierà tutti i tuoi dati da un wallabag v2. Vai in "Tutti i contenuti", e, nella sidebar di esportazione, clicca su "JSON". Otterrai un file "Tutti i contenuti.json".'
 
 developer:
     page_title: 'Sviluppatori'
-    welcome_message: 'Welcome to the wallabag API'
-    documentation: 'Documentation'
-    how_to_first_app: 'How to create my first application'
-    full_documentation: 'View full API documentation'
-    list_methods: 'List API methods'
+    welcome_message: 'Benvenuto nelle API di wallabag'
+    documentation: 'Documentazione'
+    how_to_first_app: 'Come creare la mia prima applicazione'
+    full_documentation: 'Consulta la documentazione API completa'
+    list_methods: 'Elenco dei metodi API'
     clients:
-        title: 'Clients'
-        create_new: 'Create a new client'
+        title: 'Client'
+        create_new: 'Crea un nuovo client'
     existing_clients:
-        title: 'Existing clients'
+        title: 'Client esistenti'
         field_id: 'Client ID'
         field_secret: 'Client secret'
-        field_uris: 'Redirect URIs'
-        field_grant_types: 'Grant type allowed'
-        no_client: 'No client yet.'
+        field_uris: 'Redirect URI'
+        field_grant_types: 'Tipi di grant permessi'
+        no_client: 'Ancora nessun client.'
     remove:
-        warn_message_1: 'You have the ability to remove this client. This action is IRREVERSIBLE !'
-        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'
+        warn_message_1: "Hai la possibilitò di rimuovere questo client.L'operazione è IRREVERSIBILE!"
+        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: 'Developer > New client'
-        page_description: 'You are about to create a new client. Please fill the field below for the redirect URI of your application.'
+        page_title: 'Sviluppatori > Nuovo client'
+        page_description: 'Stai per creare un nuovo client. Compila i campi sottostanti per il redirect URI della tua applicazione.'
         form:
-            redirect_uris_label: 'Redirect URIs'
-            save_label: 'Create a new client'
-        action_back: 'Back'
+            redirect_uris_label: 'Redirect URI'
+            save_label: 'Crea un nuovo client'
+        action_back: 'Indietro'
     client_parameter:
-        page_title: 'Developer > Client parameters'
-        page_description: 'Here are your client parameters.'
+        page_title: 'Sviluppatori > parametri Client'
+        page_description: 'Questi sono i tuoi parametri del client.'
         field_id: 'Client ID'
         field_secret: 'Client secret'
-        back: 'Back'
-        read_howto: 'Read the howto "Create my first application"'
+        back: 'Indietro'
+        read_howto: 'Leggi howto "Come creare la mia prima applicazione"'
     howto:
-        page_title: 'Developer > How to create my first application'
+        page_title: 'Sviluppatori > Come creare la mia prima applicazione'
         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.'
-            paragraph_3: 'To create this token, you need <a href="%link%">to create a new client</a>.'
-            paragraph_4: 'Now, create your token (replace client_id, client_secret, username and password with the good values):'
-            paragraph_5: 'The API will return a response like this:'
-            paragraph_6: 'The access_token is useful to do a call to the API endpoint. For example:'
-            paragraph_7: 'This call will return all the entries for your user.'
-            paragraph_8: 'If you want to see all the API endpoints, you can have a look <a href="%link%">to our API documentation</a>.'
-        back: 'Back'
+            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.'
+            paragraph_3: 'Per creare questo token, hai bisogno di <a href="%link%">creare un nuovo client</a>.'
+            paragraph_4: 'Ora, crea il tuo token (sostituisci client_id, client_secret, username e password con valori reali):'
+            paragraph_5: 'Le API ritorneranno una risposta di questo tipo:'
+            paragraph_6: "L'access_token è utile per chiamare un API endpoint. Per esempio:"
+            paragraph_7: 'Questa chiamata ritornerà tutti i contenuti per il tuo utente.'
+            paragraph_8: 'Se vuoi visualizzare tutti gli API endpoints, dai una occhiata alla <a href="%link%">documentazione delle API</a>.'
+        back: 'Indietro'
 
 validator:
-    password_must_match: 'The password fields must match.'
-    password_too_short: 'Password should by at least 8 chars long'
-    password_wrong_value: 'Wrong value for your current password'
-    item_per_page_too_high: 'This will certainly kill the app'
-    rss_limit_too_hight: 'This will certainly kill the app'
+    password_must_match: 'Le password devono corrispondere.'
+    password_too_short: 'La password deve essere lunga almeno 8 caratteri'
+    password_wrong_value: 'Valore inserito per la password corrente errato'
+    item_per_page_too_high: 'Questo valore è troppo alto'
+    rss_limit_too_hight: 'Questo valore è troppo alto'
 
 flashes:
     config:
         notice:
-            config_saved: 'Config saved. Some parameters will be considered after disconnection.'
-            password_updated: 'Password updated'
-            password_not_updated_demo: "In demonstration mode, you can't change password for this user."
-            user_updated: 'Information updated'
-            rss_updated: 'RSS information updated'
-            tagging_rules_updated: 'Tagging rules updated'
-            tagging_rules_deleted: 'Tagging rule deleted'
-            user_added: 'User "%username%" added'
-            rss_token_updated: 'RSS token updated'
+            config_saved: 'Configurazione salvata. Alcuni parametri verranno utilizzati dopo il logout/login.'
+            password_updated: 'Password aggiornata'
+            password_not_updated_demo: "In modalità demo, non puoi cambiare la password dell'utente."
+            user_updated: 'Informazioni aggiornate'
+            rss_updated: 'Informazioni RSS aggiornate'
+            tagging_rules_updated: 'Regole di tagging aggiornate'
+            tagging_rules_deleted: 'Regola di tagging aggiornate'
+            user_added: 'Utente "%username%" aggiunto'
+            rss_token_updated: 'RSS token aggiornato'
     entry:
         notice:
-            entry_already_saved: 'Entry already saved on %date%'
-            entry_saved: 'Entry saved'
-            entry_updated: 'Entry updated'
-            entry_reloaded: 'Entry reloaded'
-            entry_reload_failed: 'Failed to reload entry'
-            entry_archived: 'Entry archived'
-            entry_unarchived: 'Entry unarchived'
-            entry_starred: 'Entry starred'
-            entry_unstarred: 'Entry unstarred'
-            entry_deleted: 'Entry deleted'
+            entry_already_saved: 'Contenuto già salvato in data %date%'
+            entry_saved: 'Contenuto salvato'
+            entry_updated: 'Contenuto aggiornato'
+            entry_reloaded: 'Contenuto ricaricato'
+            entry_reload_failed: 'Errore nel ricaricamento del contenuto'
+            entry_archived: 'Contenuto archiviato'
+            entry_unarchived: 'Contenuto dis-archiviato'
+            entry_starred: 'Contenuto segnato come preferito'
+            entry_unstarred: 'Contenuto rimosso dai preferiti'
+            entry_deleted: 'Contenuto eliminato'
     tag:
         notice:
-            tag_added: 'Tag added'
+            tag_added: 'Tag aggiunto'
     import:
         notice:
-            failed: 'Import failed, please try again.'
-            failed_on_file: 'Error while processing import. Please verify your import file.'
-            summary: 'Import summary: %imported% imported, %skipped% already saved.'
+            failed: 'Importazione fallita, riprova.'
+            failed_on_file: 'Errore durante la processazione dei dati da importare. Verifica il tuo file di import.'
+            summary: 'Sommario di importazione: %imported% importati, %skipped% già salvati.'
     developer:
         notice:
-            client_created: 'New client created.'
-            client_deleted: 'Client deleted'
+            client_created: 'Nuovo client creato.'
+            client_deleted: 'Client eliminato'
index c093edcb4fbd11c80300924996eb4742c51b71d5..a2caaebf80a9e5c4fcf51db7afcf0087f9614c2b 100644 (file)
@@ -3,17 +3,7 @@
 {% block title %}{{ 'entry.page_titles.unread'|trans }}{% endblock %}
 
 {% block content %}
-    {% block pager %}
-        <div class="results">
-            <div class="nb-results">{{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}</div>
-            <div class="pagination">
-                <a href="#" id="filter">{{ 'entry.filters.title'|trans }}</a>
-                {% if entries.getNbPages > 1 %}
-                    {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }}
-                {% endif %}
-            </div>
-        </div>
-    {% endblock %}
+    {% include "WallabagCoreBundle:Entry:pager.html.twig" with {'entries': entries} %}
 
     {% for entry in entries %}
         <div id="entry-{{ entry.id|e }}" class="entry">
         </form>
     </aside>
 
+    {% include "WallabagCoreBundle:Entry:pager.html.twig" with {'entries': entries} %}
 {% endblock %}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/pager.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/pager.html.twig
new file mode 100644 (file)
index 0000000..ac74676
--- /dev/null
@@ -0,0 +1,11 @@
+{% block pager %}
+    <div class="results">
+        <div class="nb-results">{{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}</div>
+        <div class="pagination">
+            <a href="#" id="filter">{{ 'entry.filters.title'|trans }}</a>
+            {% if entries.getNbPages > 1 %}
+                {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }}
+            {% endif %}
+        </div>
+    </div>
+{% endblock %}
index 1abbceed5324b3238d4748f8f73d3b1ca937e738..cc4038c5803b200e4586dfae19a62c1b10f322fc 100644 (file)
 {% endblock %}
 
 {% block content %}
-    {% block pager %}
-    <div class="results clearfix">
-        <div class="nb-results left">
-            {{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}
-        </div>
-        {% if entries.getNbPages > 1 %}
-            {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }}
-        {% endif %}
-    </div>
-    {% endblock %}
+    {% include "WallabagCoreBundle:Entry:pager.html.twig" with {'entries': entries} %}
     <br />
     <ul class="row data">
         {% for entry in entries %}
 
         </form>
     </div>
+    {% include "WallabagCoreBundle:Entry:pager.html.twig" with {'entries': entries} %}
 {% endblock %}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/pager.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/pager.html.twig
new file mode 100644 (file)
index 0000000..6f8e60f
--- /dev/null
@@ -0,0 +1,10 @@
+{% block pager %}
+    <div class="results clearfix">
+        <div class="nb-results left">
+            {{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}
+        </div>
+        {% if entries.getNbPages > 1 %}
+            {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }}
+        {% endif %}
+    </div>
+{% endblock %}