Merge branch 'master' of bitbucket.org:skunkos/rssguard

This commit is contained in:
Martin Rotter 2016-04-06 19:15:49 +02:00
commit 90c211280e
31 changed files with 16126 additions and 332 deletions

View File

@ -991,14 +991,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation>Je vyžadována minimálně verze %1.</translation>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation>Heslo pro TT-RSS účet</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation>Uživatelské jméno pro TT-RSS účet</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation>URL vašeho ownCloud serveru, bez jakýchkoliv API koncovek.</translation>
@ -1027,14 +1019,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation>Vybraný ownCloud News server běží na nepodporované verzi.</translation>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation>Síťová chyba: &apos;%1&apos;.</translation>
@ -1071,6 +1055,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation>URL je v pořádku.</translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation>Upravit kanál</translation>
</message>
<message>
<source>Parent category</source>
<translation>Nadřazená kategorie</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Zvolte nadřazenou kategorii pro Váš kanál.</translation>
</message>
<message>
<source>URL</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update</source>
<translation>Auto-aktualizace</translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation>Zvolte strategii auto-aktualizací tohoto kanálu. Výchozí strategorie auto-aktualizace znamená, že kanál bude aktualizován v intervalech udaných v nastavení aplikace.</translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Některé kanály vyžaduje autentizaci, a to včetně kanálů pro GMail. Je podporována autentizace BASIC, NTLM-2 a DIGEST-MD5.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Vyžaduje autentizaci</translation>
</message>
<message>
<source>Username</source>
<translation>Uživatelské jméno</translation>
</message>
<message>
<source>Password</source>
<translation>Heslo</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation>URL je v pořádku.</translation>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation>URL nemá standardní tvar. Začíná vaše URL na &quot;http://&quot; či &quot;https://&quot;?</translation>
</message>
<message>
<source>The URL is empty.</source>
<translation>URL je prázdná.</translation>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Uživatelské jméno je v pořádku nebo není třeba.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Uživatelské jméno je prázdné.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Heslo je v pořádku nebo není třeba.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Heslo je prázdné.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Auto-aktualizovat dle hlavního nastavení</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Auto-aktualizovat každých</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Zakázat auto-aktualizace</translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation>Plné url kanálu včetně schématu</translation>
</message>
<message>
<source>Edit existing feed</source>
<translation>Upravit existující kanál</translation>
</message>
<message>
<source>Add new feed</source>
<translation>Přidat nový kanál</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2789,10 +2884,6 @@ Přejít na web aplikace a stáhnout jej ručně.</translation>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2817,6 +2908,14 @@ Přejít na web aplikace a stáhnout jej ručně.</translation>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3194,6 +3293,18 @@ Je vyžadování verze API minimálně %1.</translation>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -990,14 +990,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation>Brugernavn til din TT-RSS konto</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"/>
@ -1026,14 +1018,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"/>
@ -1070,6 +1054,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation>URL er okay.</translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation>Rediger feed</translation>
</message>
<message>
<source>Parent category</source>
<translation>Forældrekategori</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation type="unfinished"/>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Nogle feeds kræver godkendelse, inklusiv GMail feeds. BASIC, NTLM-2 og DIGEST-MD5 godkendelse er understøttet.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username</source>
<translation>Brugernavn</translation>
</message>
<message>
<source>Password</source>
<translation>Kodeord</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Brugernavn er OK eller ikke nødvendigt.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Brugernavn ikke angivet.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Kodeord er OK eller ikke nødvendigt.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Kodeordet er tomt.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update every</source>
<translation>Ajourfør hver</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation type="unfinished"/>
</message>
<message>
<source>Full feed url including scheme</source>
<translation type="unfinished"/>
</message>
<message>
<source>Edit existing feed</source>
<translation>Redigér eksisterende feed</translation>
</message>
<message>
<source>Add new feed</source>
<translation>Tilføj nyt feed</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2772,10 +2867,6 @@ Go to application website to obtain it manually.</source>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2800,6 +2891,14 @@ Go to application website to obtain it manually.</source>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3164,6 +3263,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -990,14 +990,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"/>
@ -1026,14 +1018,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"/>
@ -1070,6 +1054,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Parent category</source>
<translation>Stammkategorie</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Selektieren Sie das Stamm-Item für Ihren Feed.</translation>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation>Auto-Update</translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Gewisse Feeds brauchen eine Authentifizierung, wie z.b. Gmail-Feeds. BASIC, NTLM-2 und DIGEST-MD5 Authentifizierungsmodelle werden unterstützt.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Benötigt Authentifizierung</translation>
</message>
<message>
<source>Username</source>
<translation>Benutzername</translation>
</message>
<message>
<source>Password</source>
<translation>Passwort</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Benutzername ist okay oder wird nicht benötigt.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Benutzername ist leer.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Passwort ist okay oder wird nicht benötigt.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Passwort ist leer.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Auto-Update benutzt globales Intervall</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Auto-Update alle</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Kein Auto-Update ausführen</translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation type="unfinished"/>
</message>
<message>
<source>Edit existing feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Add new feed</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormMain</name>
@ -2776,10 +2871,6 @@ Go to application website to obtain it manually.</source>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2804,6 +2895,14 @@ Go to application website to obtain it manually.</source>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3168,6 +3267,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -1007,14 +1007,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"></translation>
@ -1043,14 +1035,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"></translation>
@ -1087,6 +1071,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Parent category</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Auto-update</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Requires authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username is empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password is empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Auto-update every</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing feed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Add new feed</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2788,10 +2883,6 @@ Go to application website to obtain it manually.</source>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"></translation>
@ -2816,6 +2907,14 @@ Go to application website to obtain it manually.</source>
<source>Switch message importance</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3186,6 +3285,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -990,14 +990,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"/>
@ -1026,14 +1018,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"/>
@ -1070,6 +1054,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Parent category</source>
<translation type="unfinished"/>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update</source>
<translation type="unfinished"/>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Requires authentication</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update using global interval</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update every</source>
<translation type="unfinished"/>
</message>
<message>
<source>Do not auto-update at all</source>
<translation type="unfinished"/>
</message>
<message>
<source>Full feed url including scheme</source>
<translation type="unfinished"/>
</message>
<message>
<source>Edit existing feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Add new feed</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormMain</name>
@ -2771,10 +2866,6 @@ Go to application website to obtain it manually.</source>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2799,6 +2890,14 @@ Go to application website to obtain it manually.</source>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3163,6 +3262,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -990,14 +990,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"/>
@ -1026,14 +1018,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"/>
@ -1070,6 +1054,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Parent category</source>
<translation>Catégorie parente</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Sélectionner l&apos;article parent pour votre flux.</translation>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation>Mise à jour automatique</translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation>Sélectionner la stratégie des mises à jour automatique pour ce flux. Par défaut, cette stratégie signifie que le flux sera mis à jour par intervalle de temps défini dans les paramètres de l&apos;application.</translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Certain flux requière une authentification, incluant les flux GMail. Les schémas d&apos;authentification BASIC, NTLM-2 et DIGEST-MD5 sont supportés.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Authentification requise</translation>
</message>
<message>
<source>Username</source>
<translation>Nom d&apos;utilisateur</translation>
</message>
<message>
<source>Password</source>
<translation>Mot de passe</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Le nom d&apos;utilisateur est correct ou non nécessaire.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Le nom d&apos;utilisateur est vide.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Le mot de passe est correct ou non nécessaire.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Le mot de passe est vide.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Mise à jour automatique utilisant l&apos;intervalle global</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Tout mettre à jour</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Ne pas mettre tout à jour automatiquement</translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation>URL du flux complet incluant le préfixe</translation>
</message>
<message>
<source>Edit existing feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Add new feed</source>
<translation>Ajouter un nouveau flux</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2787,10 +2882,6 @@ Aller sur le site de l&apos;application pour les obtenir manuellement.</translat
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2815,6 +2906,14 @@ Aller sur le site de l&apos;application pour les obtenir manuellement.</translat
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3179,6 +3278,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -990,14 +990,6 @@ or this functionality is not implemented yet.</source>
<source>Note that at least version %1 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"/>
@ -1026,14 +1018,6 @@ or this functionality is not implemented yet.</source>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation type="unfinished"/>
@ -1070,6 +1054,117 @@ or this functionality is not implemented yet.</source>
<source>URL is okay.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation type="unfinished"/>
</message>
<message>
<source>Parent category</source>
<translation type="unfinished"/>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation>Auto-aggiorna </translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Requires authentication</source>
<translation>Richiede autenticazione</translation>
</message>
<message>
<source>Username</source>
<translation>Nome utente</translation>
</message>
<message>
<source>Password</source>
<translation>Password</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation type="unfinished"/>
</message>
<message>
<source>The URL is empty.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username is empty.</source>
<translation>Nome utente vuoto.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Password is empty.</source>
<translation>La password è vuota.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation type="unfinished"/>
</message>
<message>
<source>Auto-update every</source>
<translation>Auto-aggiorna ogni</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation type="unfinished"/>
</message>
<message>
<source>Full feed url including scheme</source>
<translation type="unfinished"/>
</message>
<message>
<source>Edit existing feed</source>
<translation>Modifica feed esistente</translation>
</message>
<message>
<source>Add new feed</source>
<translation>Aggiungi nuovo feed</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2776,10 +2871,6 @@ Go to application website to obtain it manually.</source>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2804,6 +2895,14 @@ Go to application website to obtain it manually.</source>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3168,6 +3267,18 @@ At least API level %1 is required.</source>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -993,14 +993,6 @@ of deze functie bestaat nog niet.</translation>
<source>Note that at least version %1 is required.</source>
<translation>Merk op dat tenminste versie %1 is vereist</translation>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation>Paswoord voor je TT-RSS account</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation>Gebruikersnaam voor je TT-RSS account</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation>URL van je eigen ownCloud server, zonder een API pad</translation>
@ -1029,14 +1021,6 @@ of deze functie bestaat nog niet.</translation>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation>Geselecteerde ownCloud Nieuws server draait een niet-ondersteunde versie. </translation>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation>OwnCloud Nieuws server is ok, draait met versie %1, terwijl tenminste versie %2 is vereist.</translation>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation>OwnCloud Nieuws server is ok.</translation>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation>Netwerk fout: &apos;%1&apos;</translation>
@ -1073,6 +1057,117 @@ of deze functie bestaat nog niet.</translation>
<source>URL is okay.</source>
<translation>Url is goed.</translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation>Bewerk feed</translation>
</message>
<message>
<source>Parent category</source>
<translation>Oudere categorie</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Kies hoofd item voor je feed.</translation>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation>Automatische-update</translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation>Selekteer de automatische bijwerk strategie voor deze feed.Standaard automatische bijwerken strategie betekent dat de feed zal worden bijgewerkt in tijd tussenpauzes ingesteld in RSSguard instelling.</translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Sommige feeds vereisen verificatie,inclusief GMail feeds, BASIC, NTLM-2 en DIGEST-MD5 verificaties schema&apos;s worden ondersteund.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Vereist verificatie</translation>
</message>
<message>
<source>Username</source>
<translation>Gebruikersnaam</translation>
</message>
<message>
<source>Password</source>
<translation>Paswoord</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation>De URL is ok.</translation>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation>De URL voldoet niet aan het standaard patroon. Start je url met &quot;http://&quot; of &quot;https://&quot; prefix.</translation>
</message>
<message>
<source>The URL is empty.</source>
<translation>De URL is leeg.</translation>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Gebruikersnaam is ok of het is niet nodig.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Gebruikersnaam is leeg.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Paswoord is ok of het is niet nodig.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Paswoord is leeg.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Automatisch bijwerken met behulp van globale interval</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Automatisch bijwerken elke</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Niet automatisch bijwerken </translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation>Volledige feed url inclusief schema</translation>
</message>
<message>
<source>Edit existing feed</source>
<translation>Bewerk bestaande feed</translation>
</message>
<message>
<source>Add new feed</source>
<translation>Voeg nieuw feed toe</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2795,10 +2890,6 @@ Ga naar RRSguard website en download het handmatig.</translation>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
@ -2823,6 +2914,14 @@ Ga naar RRSguard website en download het handmatig.</translation>
<source>Switch message importance</source>
<translation type="unfinished"/>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3198,6 +3297,18 @@ Een API niveau van tenminste %1 is vereist.</translation>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation>De Nieuws app is een RSS/Atom feed aggegrator. Het is deel van de ownCloud suite. Deze plugin implementeert %1 API.</translation>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

View File

@ -992,14 +992,6 @@ ou esta função ainda não foi implementada.</translation>
<source>Note that at least version %1 is required.</source>
<translation>Note que pelo menos a versão %1 é necessária.</translation>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation>Senha para sua conta TT-RSS</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation>Usuário para sua conta TT-RSS</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation>URL do seu servidor ownCloud, sem nenhum caminho API</translation>
@ -1028,14 +1020,6 @@ ou esta função ainda não foi implementada.</translation>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation>O servidor ownCloud News selecionado está executando uma versão não suportada.</translation>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation>O servidor ownCloud News está correto, sendo executado na versão %1, onde pelo menos a versão %2 é necessária.</translation>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation>O servidor ownCloudNews está correto.</translation>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation>Erro de rede: &apos;%1&apos;.</translation>
@ -1072,6 +1056,117 @@ ou esta função ainda não foi implementada.</translation>
<source>URL is okay.</source>
<translation>A URL está correta correta.</translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation>Editar feed</translation>
</message>
<message>
<source>Parent category</source>
<translation>Categoria principal</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Escolha o item principal para o seu feed.</translation>
</message>
<message>
<source>URL</source>
<translation>URL</translation>
</message>
<message>
<source>Auto-update</source>
<translation>Atualização automática</translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation>Selecione a estratégia de atualização automática para este feed. A estratégia padrão significa que o feed será atualizado em intervalos de tempo definidos nas configurações do aplicativo.</translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Alguns feeds necessitam de autenticação, incluindo feeds do GMail. Esquemas de autenticação BASIC, NTLM-2 e DIGEST-MD5 são suportados.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Necessita autenticação</translation>
</message>
<message>
<source>Username</source>
<translation>Usuário</translation>
</message>
<message>
<source>Password</source>
<translation>Senha</translation>
</message>
<message>
<source>The URL is ok.</source>
<translation>A URL está correta.</translation>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation>A URL não atende o padrão normal. Sua URL inicia com &quot;http://&quot; ou &quot;https://&quot;.</translation>
</message>
<message>
<source>The URL is empty.</source>
<translation>A URL está vazia.</translation>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>O nome de usuário está correto ou não é necessário.</translation>
</message>
<message>
<source>Username is empty.</source>
<translation>O nome de usuário está vazio.</translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>A senha está correta ou não é necessária.</translation>
</message>
<message>
<source>Password is empty.</source>
<translation>A senha está vazia.</translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Atualização automática usando intervalo global</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Atualizar a cada</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Não atualizar automaticamnete</translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation>Feed completo incluindo esquema</translation>
</message>
<message>
<source>Edit existing feed</source>
<translation>Editar feed existente</translation>
</message>
<message>
<source>Add new feed</source>
<translation>Adicionar novo feed</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2094,23 +2189,23 @@ File filter for external e-mail selection dialog.</extracomment>
</message>
<message>
<source>Enable D-Bus notifications</source>
<translation type="unfinished"/>
<translation>Ativar notificações D-Bus</translation>
</message>
<message>
<source>&amp;Change font</source>
<translation type="unfinished"/>
<translation>Alterar &amp;fonte</translation>
</message>
<message>
<source>Font preview</source>
<translation type="unfinished"/>
<translation>Prévia da fonte</translation>
</message>
<message>
<source>Select new font for message viewer</source>
<translation type="unfinished"/>
<translation>Selecione a nova fonte para visualização da mensagem</translation>
</message>
<message>
<source> (not available)</source>
<translation type="unfinished"/>
<translation>(não disponível)</translation>
</message>
</context>
<context>
@ -2793,32 +2888,36 @@ Vá até o site do aplicativo para obter manualmente.</translation>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>What action do you want to take?</source>
<translation type="unfinished"/>
<translation>Qual ação você gostaria de executar?</translation>
</message>
<message>
<source>Open in external browser</source>
<translation type="unfinished"/>
<translation>Abrir no navegador externo</translation>
</message>
<message>
<source>Download</source>
<translation type="unfinished"/>
<translation>Baixar</translation>
</message>
<message>
<source>Mark message as read</source>
<translation type="unfinished"/>
<translation>Marcar mensagem como lida</translation>
</message>
<message>
<source>Mark message as unread</source>
<translation type="unfinished"/>
<translation>Marcar mensagem como não lida</translation>
</message>
<message>
<source>Switch message importance</source>
<translation>Alterar importância da mensagem</translation>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
@ -3104,19 +3203,19 @@ Vá até o site do aplicativo para obter manualmente.</translation>
<name>NewspaperPreviewer</name>
<message>
<source>Form</source>
<translation type="unfinished"/>
<translation>Formulário</translation>
</message>
<message numerus="yes">
<source>Show more messages (%n remaining)</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
<translation><numerusform>Exibir mais mensagens (%n restante)</numerusform><numerusform>Exibir mais mensagens (%n restantes)</numerusform></translation>
</message>
<message>
<source>Cannot show more messages</source>
<translation type="unfinished"/>
<translation>Não é possível exibir mais mensagens</translation>
</message>
<message>
<source>Cannot show more messages because parent feed was removed.</source>
<translation type="unfinished"/>
<translation>Não é possível exibir mais mensagens pois o feed principal foi removido.</translation>
</message>
</context>
<context>
@ -3196,6 +3295,18 @@ Pelo menos o API nível %1 é necessário.</translation>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation>O app News é um agregador de feeds RSS/Atom. Ele é parte da suíte ownCloud. Este plugin implementa o API %1.</translation>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>
@ -3452,15 +3563,15 @@ Notícias não lidas: %2</translation>
<name>TimeSpinBox</name>
<message numerus="yes">
<source>%n hour(s)</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
<translation><numerusform>%n hora</numerusform><numerusform>%n hora(s)</numerusform></translation>
</message>
<message numerus="yes">
<source>%n minute(s)</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
<translation><numerusform>%n minuto</numerusform><numerusform>%n minuto(s)</numerusform></translation>
</message>
<message>
<source> and </source>
<translation type="unfinished"/>
<translation>e </translation>
</message>
</context>
<context>

View File

@ -992,14 +992,6 @@ att funktionen inte är implementerad än.</translation>
<source>Note that at least version %1 is required.</source>
<translation>Notera att lägst version %1 är ett krav.</translation>
</message>
<message>
<source>Password for your TT-RSS account</source>
<translation>Lösenord för ditt TT RSS-konto</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation>Användarnamn för ditt TT RSS-konto</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation>URL för din ownCloud-server, utan API-sökväg</translation>
@ -1028,14 +1020,6 @@ att funktionen inte är implementerad än.</translation>
<source>Selected ownCloud News server is running unsupported version.</source>
<translation>Den valda ownCloud News-servern kör en version som inte stöds. </translation>
</message>
<message>
<source>OwnCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation>OwnCloud News-servern är OK, kör version %1, medan lägst version %2 krävs.</translation>
</message>
<message>
<source>OwnCloud News server is okay.</source>
<translation>OwnCloud News-servern är OK.</translation>
</message>
<message>
<source>Network error: &apos;%1&apos;.</source>
<translation>Nätverksfel: &apos;%1&apos;.</translation>
@ -1072,6 +1056,117 @@ att funktionen inte är implementerad än.</translation>
<source>URL is okay.</source>
<translation>URL okay.</translation>
</message>
<message>
<source>Password for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>Username for your ownCloud account</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay, running with version %1, while at least version %2 is required.</source>
<translation type="unfinished"/>
</message>
<message>
<source>ownCloud News server is okay.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>FormEditOwnCloudFeed</name>
<message>
<source>Edit feed</source>
<translation>Redigera flöde</translation>
</message>
<message>
<source>Parent category</source>
<translation>Överordnad kategori</translation>
</message>
<message>
<source>Select parent item for your feed.</source>
<translation>Välj övergripande objekt för ditt flöde.</translation>
</message>
<message>
<source>URL</source>
<translation>URL </translation>
</message>
<message>
<source>Auto-update</source>
<translation>Autouppdatering </translation>
</message>
<message>
<source>Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings.</source>
<translation>Välj uppdateringsstrategi för flödet. Standard autouppdatering, innebär att flödet kommer att uppdateras med tidsintervall angivna i programinställningarna.</translation>
</message>
<message>
<source>Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported.</source>
<translation>Vissa flöden kräver autentisering. Inklusive Gmail-flöden. BASIC, NTLM-2 och DIGEST-MD5 autentiseringsscheman stöds.</translation>
</message>
<message>
<source>Requires authentication</source>
<translation>Kräver autentisering </translation>
</message>
<message>
<source>Username</source>
<translation>Användarnamn </translation>
</message>
<message>
<source>Password</source>
<translation>Lösenord </translation>
</message>
<message>
<source>The URL is ok.</source>
<translation>URL:en är OK.</translation>
</message>
<message>
<source>The URL does not meet standard pattern. Does your URL start with &quot;http://&quot; or &quot;https://&quot; prefix.</source>
<translation>URL:en stämmer inte med standardmönstret. Börjar din URL med prefixet &quot;http://&quot; eller &quot;https://&quot;?</translation>
</message>
<message>
<source>The URL is empty.</source>
<translation>URL saknas.</translation>
</message>
<message>
<source>Username is ok or it is not needed.</source>
<translation>Användarnamnet är ok, eller behövs inte. </translation>
</message>
<message>
<source>Username is empty.</source>
<translation>Användarnamn saknas. </translation>
</message>
<message>
<source>Password is ok or it is not needed.</source>
<translation>Lösenordet är ok, eller behövs inte. </translation>
</message>
<message>
<source>Password is empty.</source>
<translation>Lösenord saknas. </translation>
</message>
<message>
<source>Auto-update using global interval</source>
<translation>Autouppdatering med globala intervall</translation>
</message>
<message>
<source>Auto-update every</source>
<translation>Uppdatera automatiskt varje</translation>
</message>
<message>
<source>Do not auto-update at all</source>
<translation>Uppdatera inte automatiskt</translation>
</message>
<message>
<source>Full feed url including scheme</source>
<translation>Flödets fullständiga URL inklusive schema</translation>
</message>
<message>
<source>Edit existing feed</source>
<translation>Redigera befintligt flöde </translation>
</message>
<message>
<source>Add new feed</source>
<translation>Lägg till nytt flöde</translation>
</message>
</context>
<context>
<name>FormMain</name>
@ -2793,10 +2888,6 @@ Gå till programmets hemsida för att hämta den manuellt.</translation>
</context>
<context>
<name>MessagePreviewer</name>
<message>
<source>You clicked link &quot;%1&quot;. You can download the link contents or open it in external web browser.</source>
<translation>Du klickade länken &quot;%1&quot;. Du kan ladda ner länkinnehållet eller öppna den i extern webbläsare.</translation>
</message>
<message>
<source>What action do you want to take?</source>
<translation>Vad vill du göra?</translation>
@ -2821,6 +2912,14 @@ Gå till programmets hemsida för att hämta den manuellt.</translation>
<source>Switch message importance</source>
<translation>Växla meddelandeprioritet</translation>
</message>
<message>
<source>You clicked some link. You can download the link contents or open it in external web browser.</source>
<translation type="unfinished"/>
</message>
<message>
<source>Click this link to download it or open it with external browser.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>MessagesModel</name>
@ -3194,6 +3293,18 @@ Minst API-nivå %1 krävs.</translation>
<source>The News app is an RSS/Atom feed aggregator. It is part of ownCloud suite. This plugin implements %1 API.</source>
<translation>Nyhetsappen är en RSS-/Atom-flödesaggregator. Den är en del av ownCloud-sviten. Denna insticksmodul implementerar API:n %1.</translation>
</message>
<message>
<source>Not yet supported</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin is not yet ready for usage. It will be added in future versions.</source>
<translation type="unfinished"/>
</message>
<message>
<source>This plugin allows you to view and manager your wallabag articles.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>RecycleBin</name>

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

View File

@ -1,23 +1,25 @@
#!/bin/bash
# Transka executable.
TRANSKA=./transka/transka
TRANSKA=./transka
# Get credentials.
read -p "Username: " USERNAME
read -p "Password: " PASSWORD
# Setup parameters.
RESOURCE=../../localization/rssguard-en_GB.ts
RESOURCE=../../../localization/rssguard-en_GB.ts
CODES="cs_CZ da_DK de_DE en_US fr_FR he_IL id_ID it_IT ja_JP lt_LT nl_NL pt_BR sv_SE"
TRANSLATION='../../localization/rssguard-$CODE.ts'
TRANSLATION='../../../localization/rssguard-$CODE.ts'
declare PARAMS
PARAMS+="-u $USERNAME -p $PASSWORD -ps rssguard -rs rssguard -ur $RESOURCE "
PARAMS+="-u "$USERNAME" -p "$PASSWORD" -ps "rssguard" -rs "rssguard" -ur "$RESOURCE" "
for CODE in $CODES; do
PARAMS+="-dt $CODE $(eval echo $TRANSLATION) "
PARAMS+="-dt "$CODE" "$(eval echo $TRANSLATION)" "
done
cd ./transka
$TRANSKA $PARAMS

View File

@ -68,7 +68,7 @@ FormSettings::FormSettings(QWidget *parent) : QDialog(parent), m_ui(new Ui::Form
// Setup behavior.
m_ui->m_listSettings->setCurrentRow(0);
m_ui->m_treeLanguages->setColumnCount(5);
m_ui->m_treeLanguages->setColumnCount(4);
m_ui->m_treeLanguages->setHeaderHidden(false);
m_ui->m_treeLanguages->setHeaderLabels(QStringList()
<< /*: Language column of language list. */ tr("Language")
@ -89,7 +89,6 @@ FormSettings::FormSettings(QWidget *parent) : QDialog(parent), m_ui(new Ui::Form
m_ui->m_treeLanguages->header()->setSectionResizeMode(1, QHeaderView::ResizeToContents);
m_ui->m_treeLanguages->header()->setSectionResizeMode(2, QHeaderView::ResizeToContents);
m_ui->m_treeLanguages->header()->setSectionResizeMode(3, QHeaderView::ResizeToContents);
m_ui->m_treeLanguages->header()->setSectionResizeMode(4, QHeaderView::ResizeToContents);
// Setup skins.
m_ui->m_treeSkins->header()->setSectionResizeMode(0, QHeaderView::ResizeToContents);

View File

@ -88,7 +88,7 @@
<item row="0" column="1">
<widget class="QStackedWidget" name="m_stackedSettings">
<property name="currentIndex">
<number>0</number>
<number>4</number>
</property>
<widget class="QWidget" name="m_pageGeneral">
<layout class="QFormLayout" name="formLayout_5">
@ -417,8 +417,8 @@ Authors of this application are NOT responsible for lost data.</string>
<rect>
<x>0</x>
<y>0</y>
<width>100</width>
<height>30</height>
<width>782</width>
<height>451</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_4">
@ -495,8 +495,8 @@ Authors of this application are NOT responsible for lost data.</string>
<rect>
<x>0</x>
<y>0</y>
<width>167</width>
<height>219</height>
<width>776</width>
<height>425</height>
</rect>
</property>
<layout class="QFormLayout" name="formLayout">

View File

@ -38,8 +38,9 @@ MessagePreviewer::MessagePreviewer(QWidget *parent) : QWidget(parent),
// User clicked some URL. Open it in external browser or download?
MessageBox box(qApp->mainForm());
box.setText(tr("You clicked link \"%1\". You can download the link contents or open it in external web browser.").arg(url.toString()));
box.setText(tr("You clicked some link. You can download the link contents or open it in external web browser."));
box.setInformativeText(tr("What action do you want to take?"));
box.setDetailedText(url.toString());
QAbstractButton *btn_open = box.addButton(tr("Open in external browser"), QMessageBox::AcceptRole);
QAbstractButton *btn_download = box.addButton(tr("Download"), QMessageBox::RejectRole);
QAbstractButton *btn_cancel = box.addButton(QMessageBox::Cancel);

View File

@ -20,9 +20,6 @@
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
@ -45,16 +42,13 @@
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="margin">
<number>5</number>
</property>
<property name="textInteractionFlags">
<set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QTextBrowser" name="m_txtMessage">
<widget class="MessageTextBrowser" name="m_txtMessage">
<property name="autoFillBackground">
<bool>true</bool>
</property>
@ -74,6 +68,13 @@
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>MessageTextBrowser</class>
<extends>QTextBrowser</extends>
<header>messagetextbrowser.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,28 @@
#include "gui/messagetextbrowser.h"
#include "miscellaneous/application.h"
#include "miscellaneous/iconfactory.h"
MessageTextBrowser::MessageTextBrowser(QWidget *parent) : QTextBrowser(parent) {
}
MessageTextBrowser::~MessageTextBrowser() {
}
QVariant MessageTextBrowser::loadResource(int type, const QUrl &name) {
Q_UNUSED(name)
switch (type) {
case QTextDocument::ImageResource: {
if (m_imagePlaceholder.isNull()) {
m_imagePlaceholder = qApp->icons()->pixmap(QSL("image-placeholder")).scaledToWidth(20, Qt::FastTransformation);
}
return m_imagePlaceholder;
}
default:
return QVariant();
}
}

View File

@ -0,0 +1,19 @@
#ifndef MESSAGETEXTBROWSER_H
#define MESSAGETEXTBROWSER_H
#include <QTextBrowser>
class MessageTextBrowser : public QTextBrowser {
public:
explicit MessageTextBrowser(QWidget *parent = 0);
virtual ~MessageTextBrowser();
QVariant loadResource(int type, const QUrl &name);
private:
QPixmap m_imagePlaceholder;
};
#endif // MESSAGETEXTBROWSER_H

View File

@ -17,6 +17,11 @@
#include "miscellaneous/databasequeries.h"
#include "services/abstract/category.h"
#include "services/abstract/feed.h"
#include "miscellaneous/application.h"
#include "miscellaneous/iconfactory.h"
#include <QVariant>
#include <QUrl>
#include <QSqlError>
@ -46,6 +51,18 @@ bool DatabaseQueries::markMessageImportant(QSqlDatabase db, int id, RootItem::Im
return q.exec();
}
bool DatabaseQueries::markFeedsReadUnread(QSqlDatabase db, const QStringList &ids, int account_id, RootItem::ReadStatus read) {
QSqlQuery query_read_msg(db);
query_read_msg.setForwardOnly(true);
query_read_msg.prepare(QString("UPDATE Messages SET is_read = :read "
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;").arg(ids.join(QSL(", "))));
query_read_msg.bindValue(QSL(":read"), read == RootItem::Read ? 1 : 0);
query_read_msg.bindValue(QSL(":account_id"), account_id);
return query_read_msg.exec();
}
bool DatabaseQueries::markBinReadUnread(QSqlDatabase db, int account_id, RootItem::ReadStatus read) {
QSqlQuery q(db);
q.setForwardOnly(true);
@ -328,8 +345,8 @@ QList<Message> DatabaseQueries::getUndeletedMessagesForAccount(QSqlDatabase db,
QSqlQuery q(db);
q.setForwardOnly(true);
q.prepare("SELECT * "
"FROM Messages "
"WHERE is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;");
"FROM Messages "
"WHERE is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;");
q.bindValue(QSL(":account_id"), account_id);
if (q.exec()) {
@ -616,13 +633,13 @@ bool DatabaseQueries::cleanFeeds(QSqlDatabase db, const QStringList &ids, bool c
if (clean_read_only) {
q.prepare(QString("UPDATE Messages SET is_deleted = :deleted "
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND is_read = 1 AND account_id = :account_id;")
.arg(ids.join(QSL(", "))));
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND is_read = 1 AND account_id = :account_id;")
.arg(ids.join(QSL(", "))));
}
else {
q.prepare(QString("UPDATE Messages SET is_deleted = :deleted "
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;")
.arg(ids.join(QSL(", "))));
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;")
.arg(ids.join(QSL(", "))));
}
q.bindValue(QSL(":deleted"), 1);
@ -653,5 +670,118 @@ bool DatabaseQueries::deleteLeftoverMessages(QSqlDatabase db, int account_id) {
}
}
bool DatabaseQueries::storeAccountTree(QSqlDatabase db, RootItem *tree_root, int account_id) {
QSqlQuery query_category(db);
QSqlQuery query_feed(db);
query_category.setForwardOnly(true);
query_feed.setForwardOnly(true);
query_category.prepare("INSERT INTO Categories (parent_id, title, account_id, custom_id) "
"VALUES (:parent_id, :title, :account_id, :custom_id);");
query_feed.prepare("INSERT INTO Feeds (title, icon, category, protected, update_type, update_interval, account_id, custom_id) "
"VALUES (:title, :icon, :category, :protected, :update_type, :update_interval, :account_id, :custom_id);");
// Iterate all children.
foreach (RootItem *child, tree_root->getSubTree()) {
if (child->kind() == RootItemKind::Category) {
query_category.bindValue(QSL(":parent_id"), child->parent()->id());
query_category.bindValue(QSL(":title"), child->title());
query_category.bindValue(QSL(":account_id"), account_id);
query_category.bindValue(QSL(":custom_id"), QString::number(child->toCategory()->customId()));
if (query_category.exec()) {
child->setId(query_category.lastInsertId().toInt());
}
else {
return false;
}
}
else if (child->kind() == RootItemKind::Feed) {
Feed *feed = child->toFeed();
query_feed.bindValue(QSL(":title"), feed->title());
query_feed.bindValue(QSL(":icon"), qApp->icons()->toByteArray(feed->icon()));
query_feed.bindValue(QSL(":category"), feed->parent()->customId());
query_feed.bindValue(QSL(":protected"), 0);
query_feed.bindValue(QSL(":update_type"), (int) feed->autoUpdateType());
query_feed.bindValue(QSL(":update_interval"), feed->autoUpdateInitialInterval());
query_feed.bindValue(QSL(":account_id"), account_id);
query_feed.bindValue(QSL(":custom_id"), feed->customId());
if (query_feed.exec()) {
feed->setId(query_feed.lastInsertId().toInt());
}
else {
return false;
}
}
}
return true;
}
QStringList DatabaseQueries::customIdsOfMessagesFromAccount(QSqlDatabase db, int account_id, bool *ok) {
QSqlQuery query(db);
QStringList ids;
query.setForwardOnly(true);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), account_id);
if (ok != NULL) {
*ok = query.exec();
}
else {
query.exec();
}
while (query.next()) {
ids.append(query.value(0).toString());
}
return ids;
}
QStringList DatabaseQueries::customIdsOfMessagesFromBin(QSqlDatabase db, int account_id, bool *ok) {
QSqlQuery query(db);
QStringList ids;
query.setForwardOnly(true);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 1 AND is_pdeleted = 0 AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), account_id);
if (ok != NULL) {
*ok = query.exec();
}
else {
query.exec();
}
while (query.next()) {
ids.append(query.value(0).toString());
}
return ids;
}
QStringList DatabaseQueries::customIdsOfMessagesFromFeed(QSqlDatabase db, int feed_custom_id, int account_id, bool *ok) {
QSqlQuery query(db);
QStringList ids;
query.setForwardOnly(true);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 0 AND is_pdeleted = 0 AND feed = :feed AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), account_id);
query.bindValue(QSL(":feed"), feed_custom_id);
if (ok != NULL) {
*ok = query.exec();
}
else {
query.exec();
}
while (query.next()) {
ids.append(query.value(0).toString());
}
return ids;
}
DatabaseQueries::DatabaseQueries() {
}

View File

@ -27,6 +27,7 @@ class DatabaseQueries {
public:
static bool markMessagesReadUnread(QSqlDatabase db, const QStringList &ids, RootItem::ReadStatus read);
static bool markMessageImportant(QSqlDatabase db, int id, RootItem::Importance importance);
static bool markFeedsReadUnread(QSqlDatabase db, const QStringList &ids, int account_id, RootItem::ReadStatus read);
static bool markBinReadUnread(QSqlDatabase db, int account_id, RootItem::ReadStatus read);
static bool markAccountReadUnread(QSqlDatabase db, int account_id, RootItem::ReadStatus read);
static bool switchMessagesImportance(QSqlDatabase db, const QStringList &ids);
@ -38,7 +39,7 @@ class DatabaseQueries {
static bool purgeOldMessages(QSqlDatabase db, int older_than_days);
static bool purgeRecycleBin(QSqlDatabase db);
static QMap<int,int> getMessageCountsForCategory(QSqlDatabase db, int custom_id, int account_id,
bool including_total_counts, bool *ok = NULL);
bool including_total_counts, bool *ok = NULL);
static int getMessageCountsForFeed(QSqlDatabase db, int feed_custom_id, int account_id,
bool including_total_counts, bool *ok = NULL);
static int getMessageCountsForBin(QSqlDatabase db, int account_id, bool including_total_counts, bool *ok = NULL);
@ -52,6 +53,10 @@ class DatabaseQueries {
static bool deleteAccountData(QSqlDatabase db, int account_id, bool delete_messages_too);
static bool cleanFeeds(QSqlDatabase db, const QStringList &ids, bool clean_read_only, int account_id);
static bool deleteLeftoverMessages(QSqlDatabase db, int account_id);
static bool storeAccountTree(QSqlDatabase db, RootItem *tree_root, int account_id);
static QStringList customIdsOfMessagesFromAccount(QSqlDatabase db, int account_id, bool *ok = NULL);
static QStringList customIdsOfMessagesFromBin(QSqlDatabase db, int account_id, bool *ok = NULL);
static QStringList customIdsOfMessagesFromFeed(QSqlDatabase db, int feed_custom_id, int account_id, bool *ok = NULL);
private:
explicit DatabaseQueries();

View File

@ -46,6 +46,15 @@ class IconFactory : public QObject {
void clearCache();
inline QPixmap pixmap(const QString &name) {
if (m_currentIconTheme == APP_NO_THEME) {
return QPixmap();
}
else {
return QPixmap(APP_THEME_PATH + QDir::separator() + m_currentIconTheme + QDir::separator() + name + APP_THEME_SUFFIX);
}
}
// Returns icon from active theme or invalid icon if
// "no icon theme" is set.
inline QIcon fromTheme(const QString &name) {

View File

@ -128,50 +128,15 @@ bool ServiceRoot::cleanFeeds(QList<Feed*> items, bool clean_read_only) {
void ServiceRoot::storeNewFeedTree(RootItem *root) {
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query_category(database);
QSqlQuery query_feed(database);
query_category.prepare("INSERT INTO Categories (parent_id, title, account_id, custom_id) "
"VALUES (:parent_id, :title, :account_id, :custom_id);");
query_feed.prepare("INSERT INTO Feeds (title, icon, category, protected, update_type, update_interval, account_id, custom_id) "
"VALUES (:title, :icon, :category, :protected, :update_type, :update_interval, :account_id, :custom_id);");
if (DatabaseQueries::storeAccountTree(database, root, accountId())) {
RecycleBin *bin = recycleBin();
// Iterate all children.
foreach (RootItem *child, root->getSubTree()) {
if (child->kind() == RootItemKind::Category) {
query_category.bindValue(QSL(":parent_id"), child->parent()->id());
query_category.bindValue(QSL(":title"), child->title());
query_category.bindValue(QSL(":account_id"), accountId());
query_category.bindValue(QSL(":custom_id"), QString::number(child->toCategory()->customId()));
if (query_category.exec()) {
child->setId(query_category.lastInsertId().toInt());
}
if (bin != NULL && !childItems().contains(bin)) {
// As the last item, add recycle bin, which is needed.
appendChild(bin);
bin->updateCounts(true);
}
else if (child->kind() == RootItemKind::Feed) {
Feed *feed = child->toFeed();
query_feed.bindValue(QSL(":title"), feed->title());
query_feed.bindValue(QSL(":icon"), qApp->icons()->toByteArray(feed->icon()));
query_feed.bindValue(QSL(":category"), feed->parent()->customId());
query_feed.bindValue(QSL(":protected"), 0);
query_feed.bindValue(QSL(":update_type"), (int) feed->autoUpdateType());
query_feed.bindValue(QSL(":update_interval"), feed->autoUpdateInitialInterval());
query_feed.bindValue(QSL(":account_id"), accountId());
query_feed.bindValue(QSL(":custom_id"), feed->customId());
if (query_feed.exec()) {
feed->setId(query_feed.lastInsertId().toInt());
}
}
}
RecycleBin *bin = recycleBin();
if (bin != NULL && !childItems().contains(bin)) {
// As the last item, add recycle bin, which is needed.
appendChild(bin);
bin->updateCounts(true);
}
}
@ -289,47 +254,19 @@ QStringList ServiceRoot::customIDSOfMessagesForItem(RootItem *item) {
case RootItemKind::ServiceRoot: {
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query(database);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), accountId());
query.exec();
while (query.next()) {
list.append(query.value(0).toString());
}
list = DatabaseQueries::customIdsOfMessagesFromAccount(database, accountId());
break;
}
case RootItemKind::Bin: {
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query(database);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 1 AND is_pdeleted = 0 AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), accountId());
query.exec();
while (query.next()) {
list.append(query.value(0).toString());
}
list = DatabaseQueries::customIdsOfMessagesFromBin(database, accountId());
break;
}
case RootItemKind::Feed: {
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query(database);
query.prepare(QSL("SELECT custom_id FROM Messages WHERE is_deleted = 0 AND is_pdeleted = 0 AND feed = :feed AND account_id = :account_id;"));
query.bindValue(QSL(":account_id"), accountId());
query.bindValue(QSL(":feed"), item->customId());
query.exec();
while (query.next()) {
list.append(query.value(0).toString());
}
list = DatabaseQueries::customIdsOfMessagesFromFeed(database, item->customId(), accountId());
break;
}
@ -342,16 +279,9 @@ QStringList ServiceRoot::customIDSOfMessagesForItem(RootItem *item) {
}
bool ServiceRoot::markFeedsReadUnread(QList<Feed*> items, RootItem::ReadStatus read) {
QSqlDatabase db_handle = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query_read_msg(db_handle);
query_read_msg.setForwardOnly(true);
query_read_msg.prepare(QString("UPDATE Messages SET is_read = :read "
"WHERE feed IN (%1) AND is_deleted = 0 AND is_pdeleted = 0 AND account_id = :account_id;").arg(textualFeedIds(items).join(QSL(", "))));
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
query_read_msg.bindValue(QSL(":read"), read == RootItem::Read ? 1 : 0);
query_read_msg.bindValue(QSL(":account_id"), accountId());
if (query_read_msg.exec()) {
if (DatabaseQueries::markFeedsReadUnread(database, textualFeedIds(items), accountId(), read)) {
QList<RootItem*> itemss;
foreach (Feed *feed, items) {

View File

@ -35,8 +35,8 @@ FormEditOwnCloudAccount::FormEditOwnCloudAccount(QWidget *parent)
m_ui->m_lblServerSideUpdateInformation->setText(tr("Leaving this option on causes that updates "
"of feeds will be probably much slower and may time-out often."));
m_ui->m_lblDescription->setText(tr("Note that at least version %1 is required.").arg(MINIMAL_OC_VERSION));
m_ui->m_txtPassword->lineEdit()->setPlaceholderText(tr("Password for your TT-RSS account"));
m_ui->m_txtUsername->lineEdit()->setPlaceholderText(tr("Username for your TT-RSS account"));
m_ui->m_txtPassword->lineEdit()->setPlaceholderText(tr("Password for your ownCloud account"));
m_ui->m_txtUsername->lineEdit()->setPlaceholderText(tr("Username for your ownCloud account"));
m_ui->m_txtUrl->lineEdit()->setPlaceholderText(tr("URL of your ownCloud server, without any API path"));
m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Information,
tr("No test done yet."),
@ -111,9 +111,9 @@ void FormEditOwnCloudAccount::performTest() {
}
else {
m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Ok,
tr("OwnCloud News server is okay, running with version %1, while at least version %2 is required.").arg(result.version(),
tr("ownCloud News server is okay, running with version %1, while at least version %2 is required.").arg(result.version(),
MINIMAL_OC_VERSION),
tr("OwnCloud News server is okay."));
tr("ownCloud News server is okay."));
}
}
else if (factory.lastError() != QNetworkReply::NoError) {

View File

@ -195,7 +195,7 @@ void OwnCloudServiceRoot::saveAccountDataToDatabase() {
itemChanged(QList<RootItem*>() << this);
}
else {
qWarning("OwnCloud: Updating account failed: '%s'.", qPrintable(query.lastError().text()));
qWarning("ownCloud: Updating account failed: '%s'.", qPrintable(query.lastError().text()));
}
}
else {
@ -205,7 +205,7 @@ void OwnCloudServiceRoot::saveAccountDataToDatabase() {
// First obtain the ID, which can be assigned to this new account.
if (!query.exec("SELECT max(id) FROM Accounts;") || !query.next()) {
qWarning("OwnCloud: Getting max ID from Accounts table failed: '%s'.", qPrintable(query.lastError().text()));
qWarning("ownCloud: Getting max ID from Accounts table failed: '%s'.", qPrintable(query.lastError().text()));
return;
}
@ -234,7 +234,7 @@ void OwnCloudServiceRoot::saveAccountDataToDatabase() {
updateTitle();
}
else {
qWarning("OwnCloud: Saving of new account failed: '%s'.", qPrintable(query.lastError().text()));
qWarning("ownCloud: Saving of new account failed: '%s'.", qPrintable(query.lastError().text()));
}
}
}