Fixed Windows compilation bug and OwnCloud progress.

This commit is contained in:
Martin Rotter 2016-02-18 08:20:49 +01:00
parent f87417a003
commit 2b8c917f67
21 changed files with 4834 additions and 2992 deletions

View file

@ -1,4 +1,6 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="cs_CZ" version="2.1"> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="cs_CZ">
<context> <context>
<name>AdBlockAddSubscriptionDialog</name> <name>AdBlockAddSubscriptionDialog</name>
<message> <message>
@ -100,7 +102,7 @@ Berte také na paměti, že některé prostředky webových stránek jsou intern
<name>AdBlockIcon</name> <name>AdBlockIcon</name>
<message> <message>
<source>Adblock</source> <source>Adblock</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Show Adblock &amp;settings</source> <source>Show Adblock &amp;settings</source>
@ -281,10 +283,14 @@ Berte také na paměti, že některé prostředky webových stránek jsou intern
<message numerus="yes"> <message numerus="yes">
<source>Click me to add feeds from this website. <source>Click me to add feeds from this website.
This website contains %n feed(s).</source> This website contains %n feed(s).</source>
<translation><numerusform>Pro přidání kanálů z této stránky na klikni. <translation>
Tato stránka obsahuje %n kanál.</numerusform><numerusform>Pro přidání kanálů z této stránky na klikni. <numerusform>Pro přidání kanálů z této stránky na klikni.
Tato stránka obsahuje %n kanály.</numerusform><numerusform>Pro přidání kanálů z této stránky na klikni. Tato stránka obsahuje %n kanál.</numerusform>
Tato stránka obsahuje %n kanálů.</numerusform></translation> <numerusform>Pro přidání kanálů z této stránky na klikni.
Tato stránka obsahuje %n kanály.</numerusform>
<numerusform>Pro přidání kanálů z této stránky na klikni.
Tato stránka obsahuje %n kanálů.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Not supported</source> <source>Not supported</source>
@ -370,7 +376,7 @@ Tato stránka obsahuje %n kanálů.</numerusform></translation>
<translation>Stahování dokončeno</translation> <translation>Stahování dokončeno</translation>
</message> </message>
<message> <message>
<source>File '%1' is downloaded. <source>File &apos;%1&apos; is downloaded.
Click here to open parent directory.</source> Click here to open parent directory.</source>
<translation>Soubor &apos;%1&apos; je stažen. <translation>Soubor &apos;%1&apos; je stažen.
Klikněte sem pro otevření nadřazeného adresáře.</translation> Klikněte sem pro otevření nadřazeného adresáře.</translation>
@ -396,11 +402,19 @@ Klikněte sem pro otevření nadřazeného adresáře.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n minutes remaining</source> <source>%n minutes remaining</source>
<translation><numerusform>%n minuta do konce</numerusform><numerusform>%n minuty do konce</numerusform><numerusform>%n minut do konce</numerusform></translation> <translation>
<numerusform>%n minuta do konce</numerusform>
<numerusform>%n minuty do konce</numerusform>
<numerusform>%n minut do konce</numerusform>
</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n seconds remaining</source> <source>%n seconds remaining</source>
<translation><numerusform>%n vteřina do konce</numerusform><numerusform>%n vteřiny do konce</numerusform><numerusform>%n vteřin do konce</numerusform></translation> <translation>
<numerusform>%n vteřina do konce</numerusform>
<numerusform>%n vteřiny do konce</numerusform>
<numerusform>%n vteřin do konce</numerusform>
</translation>
</message> </message>
<message> <message>
<source>bytes</source> <source>bytes</source>
@ -408,19 +422,23 @@ Klikněte sem pro otevření nadřazeného adresáře.</translation>
</message> </message>
<message> <message>
<source>kB</source> <source>kB</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>MB</source> <source>MB</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>GB</source> <source>GB</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>Downloading %n file(s)...</source> <source>Downloading %n file(s)...</source>
<translation><numerusform>Stahuji %n soubor...</numerusform><numerusform>Stahuji %n soubory...</numerusform><numerusform>Stahuji %n souborů...</numerusform></translation> <translation>
<numerusform>Stahuji %n soubor...</numerusform>
<numerusform>Stahuji %n soubory...</numerusform>
<numerusform>Stahuji %n souborů...</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -483,7 +501,11 @@ Klikněte sem pro otevření nadřazeného adresáře.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>I will auto-update %n feed(s).</source> <source>I will auto-update %n feed(s).</source>
<translation><numerusform>Budu aktualizovat %n kanál.</numerusform><numerusform>Budu aktualizovat %n kanály.</numerusform><numerusform>Budu aktualizovat %n kanálů.</numerusform></translation> <translation>
<numerusform>Budu aktualizovat %n kanál.</numerusform>
<numerusform>Budu aktualizovat %n kanály.</numerusform>
<numerusform>Budu aktualizovat %n kanálů.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Cannot update all items</source> <source>Cannot update all items</source>
@ -793,7 +815,11 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source> day(s)</source> <source> day(s)</source>
<translation><numerusform> den</numerusform><numerusform> dny</numerusform><numerusform> dnů</numerusform></translation> <translation>
<numerusform> den</numerusform>
<numerusform> dny</numerusform>
<numerusform> dnů</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Shrink database file</source> <source>Shrink database file</source>
@ -884,16 +910,12 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message> <message>
<source>URL</source> <source>URL</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>&amp;Test setup</source> <source>&amp;Test setup</source>
<translation>&amp;Otestovat nastavení</translation> <translation>&amp;Otestovat nastavení</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation>Vynutit provedení aktualizace kanálu na straně serveru</translation>
</message>
<message> <message>
<source>HTTP authentication username</source> <source>HTTP authentication username</source>
<translation>Uživatelské jméno pro HTTP autentizaci</translation> <translation>Uživatelské jméno pro HTTP autentizaci</translation>
@ -1018,6 +1040,14 @@ or this functionality is not implemented yet.</source>
<source>Unspecified error, did you enter correct URL?</source> <source>Unspecified error, did you enter correct URL?</source>
<translation>Podivná chyba, zadali jste URL?</translation> <translation>Podivná chyba, zadali jste URL?</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormEditFeed</name> <name>FormEditFeed</name>
@ -1035,7 +1065,7 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message> <message>
<source>URL</source> <source>URL</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Auto-update</source> <source>Auto-update</source>
@ -1134,6 +1164,129 @@ or this functionality is not implemented yet.</source>
<translation>URL je prázdná.</translation> <translation>URL je prázdná.</translation>
</message> </message>
</context> </context>
<context>
<name>FormEditOwnCloudAccount</name>
<message>
<source>URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</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">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>Authentication</source>
<translation type="unfinished">Autentizace</translation>
</message>
<message>
<source>Username</source>
<translation type="unfinished">Uživatelské jméno</translation>
</message>
<message>
<source>Password</source>
<translation type="unfinished">Heslo</translation>
</message>
<message>
<source>Show password</source>
<translation type="unfinished">Zobrazit heslo</translation>
</message>
<message>
<source>&amp;Test setup</source>
<translation type="unfinished">&amp;Otestovat nastavení</translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Heslo pro TT-RSS účet</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished">Uživatelské jméno pro TT-RSS účet</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No test done yet.</source>
<translation type="unfinished">Žádný test zatím neproveden.</translation>
</message>
<message>
<source>Here, results of connection test are shown.</source>
<translation type="unfinished">Zde jsou zobrazeny výsledky testu spojení.</translation>
</message>
<message>
<source>Add new ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Síťová chyba: &apos;%1&apos;.</translation>
</message>
<message>
<source>Network error, have you entered correct ownCloud endpoint and password?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished">Podivná chyba, zadali jste URL?</translation>
</message>
<message>
<source>Username cannot be empty.</source>
<translation type="unfinished">Login nemůže být prázdný.</translation>
</message>
<message>
<source>Username is okay.</source>
<translation type="unfinished">Login je v pořádku.</translation>
</message>
<message>
<source>Password cannot be empty.</source>
<translation type="unfinished">Heslo nemůže být prázdné.</translation>
</message>
<message>
<source>Password is okay.</source>
<translation type="unfinished">Heslo je v pořádku.</translation>
</message>
<message>
<source>URL cannot be empty.</source>
<translation type="unfinished">URL nemůže být prázdné.</translation>
</message>
<message>
<source>URL is okay.</source>
<translation type="unfinished">URL je v pořádku.</translation>
</message>
</context>
<context> <context>
<name>FormMain</name> <name>FormMain</name>
<message> <message>
@ -1540,6 +1693,10 @@ or this functionality is not implemented yet.</source>
<source>Add new feed</source> <source>Add new feed</source>
<translation>Přidat nový kanál</translation> <translation>Přidat nový kanál</translation>
</message> </message>
<message>
<source>Stop running update</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormRestoreDatabaseSettings</name> <name>FormRestoreDatabaseSettings</name>
@ -1626,7 +1783,7 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message> <message>
<source>Proxy</source> <source>Proxy</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Icons &amp;&amp; skins</source> <source>Icons &amp;&amp; skins</source>
@ -1655,7 +1812,7 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message> <message>
<source>Port</source> <source>Port</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Username</source> <source>Username</source>
@ -1691,11 +1848,11 @@ or this functionality is not implemented yet.</source>
</message> </message>
<message> <message>
<source>Socks5</source> <source>Socks5</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Http</source> <source>Http</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source> (not supported on this platform)</source> <source> (not supported on this platform)</source>
@ -1920,7 +2077,7 @@ Autoři této aplikace nenesou žádnou odpovědnost za ztrátu Vašich dat.</tr
</message> </message>
<message> <message>
<source> ms</source> <source> ms</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Update all feed on application startup</source> <source>Update all feed on application startup</source>
@ -2207,7 +2364,7 @@ File filter for external e-mail selection dialog.</extracomment>
</message> </message>
<message> <message>
<source>Mozilla Thunderbird</source> <source>Mozilla Thunderbird</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Working database which you have full access to.</source> <source>Working database which you have full access to.</source>
@ -2263,7 +2420,7 @@ File filter for external e-mail selection dialog.</extracomment>
</message> </message>
<message> <message>
<source>E-mail</source> <source>E-mail</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Enable notifications</source> <source>Enable notifications</source>
@ -2458,7 +2615,7 @@ File filter for external e-mail selection dialog.</extracomment>
</message> </message>
<message> <message>
<source>URL</source> <source>URL</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Fetch it now</source> <source>Fetch it now</source>
@ -2972,7 +3129,7 @@ Přejít na web aplikace a stáhnout jej ručně.</translation>
<name>MessagesModel</name> <name>MessagesModel</name>
<message> <message>
<source>Id</source> <source>Id</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Read</source> <source>Read</source>
@ -2996,7 +3153,7 @@ Přejít na web aplikace a stáhnout jej ručně.</translation>
</message> </message>
<message> <message>
<source>Url</source> <source>Url</source>
<translation type="unfinished"/> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Author</source> <source>Author</source>
@ -3272,13 +3429,17 @@ Přejít na web aplikace a stáhnout jej ručně.</translation>
<source> <source>
+ %n other feeds.</source> + %n other feeds.</source>
<translation><numerusform> <translation>
<numerusform>
+ %n další kanál.</numerusform><numerusform> + %n další kanál.</numerusform>
<numerusform>
+ %n další kanály.</numerusform><numerusform> + %n další kanály.</numerusform>
<numerusform>
+ %n dalších kanálů.</numerusform></translation> + %n dalších kanálů.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Welcome to %1. <source>Welcome to %1.
@ -3310,6 +3471,10 @@ Tiny Tiny RSS je open source čtečka kanálů založená na webových technolog
Je vyžadování verze API minimálně %1.</translation> Je vyžadování verze API minimálně %1.</translation>
</message> </message>
<message>
<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>
</context> </context>
<context> <context>
<name>RecycleBin</name> <name>RecycleBin</name>
@ -3323,7 +3488,11 @@ Je vyžadování verze API minimálně %1.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n deleted message(s).</source> <source>%n deleted message(s).</source>
<translation><numerusform>%n smazaná zpráva.</numerusform><numerusform>%n smazané zprávy.</numerusform><numerusform>%n smazaných zpráv.</numerusform></translation> <translation>
<numerusform>%n smazaná zpráva.</numerusform>
<numerusform>%n smazané zprávy.</numerusform>
<numerusform>%n smazaných zpráv.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Recycle bin <source>Recycle bin
@ -3339,7 +3508,11 @@ Je vyžadování verze API minimálně %1.</translation>
<message numerus="yes"> <message numerus="yes">
<source>%n unread message(s).</source> <source>%n unread message(s).</source>
<extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment> <extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment>
<translation><numerusform>%n nepřečtená zpráva.</numerusform><numerusform>%n nepřečtené zprávy.</numerusform><numerusform>%n nepřečtených zpráv.</numerusform></translation> <translation>
<numerusform>%n nepřečtená zpráva.</numerusform>
<numerusform>%n nepřečtené zprávy.</numerusform>
<numerusform>%n nepřečtených zpráv.</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3394,7 +3567,11 @@ Tato kategorie neobsahuje žádné položky.</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>používá specifické nastavení (%n minuta do další aktualizace)</numerusform><numerusform>používá specifické nastavení (%n minuty do další aktualizace)</numerusform><numerusform>používá specifické nastavení (%n minut do další aktualizace)</numerusform></translation> <translation>
<numerusform>používá specifické nastavení (%n minuta do další aktualizace)</numerusform>
<numerusform>používá specifické nastavení (%n minuty do další aktualizace)</numerusform>
<numerusform>používá specifické nastavení (%n minut do další aktualizace)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1 (%2)%3 <source>%1 (%2)%3
@ -3620,7 +3797,11 @@ Nepřečtené zprávy: %2</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>používá specifické nastavení (%n minuta do další aktualizace)</numerusform><numerusform>používá specifické nastavení (%n minuty do další aktualizace)</numerusform><numerusform>používá specifické nastavení (%n minut do další aktualizace)</numerusform></translation> <translation>
<numerusform>používá specifické nastavení (%n minuta do další aktualizace)</numerusform>
<numerusform>používá specifické nastavení (%n minuty do další aktualizace)</numerusform>
<numerusform>používá specifické nastavení (%n minut do další aktualizace)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1%2 <source>%1%2
@ -3874,4 +4055,4 @@ Poslední přihlášení: %5</translation>
<translation>Hledat &quot;%1&quot; přes Google...</translation> <translation>Hledat &quot;%1&quot; přes Google...</translation>
</message> </message>
</context> </context>
</TS> </TS>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -904,10 +904,6 @@ or this functionality is not implemented yet.</source>
<source>&amp;Test setup</source> <source>&amp;Test setup</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>HTTP authentication username</source> <source>HTTP authentication username</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@ -1032,6 +1028,14 @@ or this functionality is not implemented yet.</source>
<source>Unspecified error, did you enter correct URL?</source> <source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormEditFeed</name> <name>FormEditFeed</name>
@ -1148,6 +1152,129 @@ or this functionality is not implemented yet.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>FormEditOwnCloudAccount</name>
<message>
<source>URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</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>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>Show password</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>&amp;Test setup</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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>
</message>
<message>
<source>No test done yet.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Here, results of connection test are shown.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Add new ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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>
</message>
<message>
<source>Network error, have you entered correct ownCloud endpoint and password?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username cannot be empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Username is okay.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password cannot be empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password is okay.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>URL cannot be empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>URL is okay.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>FormMain</name> <name>FormMain</name>
<message> <message>
@ -1554,6 +1681,10 @@ or this functionality is not implemented yet.</source>
<source>Add new feed</source> <source>Add new feed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Stop running update</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormRestoreDatabaseSettings</name> <name>FormRestoreDatabaseSettings</name>
@ -3293,6 +3424,10 @@ Tiny Tiny RSS is an open source web-based news feed (RSS/Atom) reader and aggreg
At least API level %1 is required.</source> At least API level %1 is required.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<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>
</context> </context>
<context> <context>
<name>RecycleBin</name> <name>RecycleBin</name>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,6 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="nl_NL" version="2.1"> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="nl_NL">
<context> <context>
<name>AdBlockAddSubscriptionDialog</name> <name>AdBlockAddSubscriptionDialog</name>
<message> <message>
@ -282,9 +284,12 @@ Gelezen berichten gewist...</translation>
<message numerus="yes"> <message numerus="yes">
<source>Click me to add feeds from this website. <source>Click me to add feeds from this website.
This website contains %n feed(s).</source> This website contains %n feed(s).</source>
<translation><numerusform>Klik hier om feeds van deze website toe tevoegen. <translation>
Deze website bevat %n feed.</numerusform><numerusform>Klik hier om feeds van deze website toe tevoegen. <numerusform>Klik hier om feeds van deze website toe tevoegen.
Deze website bevat %n feeds.</numerusform></translation> Deze website bevat %n feed.</numerusform>
<numerusform>Klik hier om feeds van deze website toe tevoegen.
Deze website bevat %n feeds.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Not supported</source> <source>Not supported</source>
@ -370,7 +375,7 @@ Deze website bevat %n feeds.</numerusform></translation>
<translation>Download klaar</translation> <translation>Download klaar</translation>
</message> </message>
<message> <message>
<source>File '%1' is downloaded. <source>File &apos;%1&apos; is downloaded.
Click here to open parent directory.</source> Click here to open parent directory.</source>
<translation>Bestand &apos;%1&apos; is klaar <translation>Bestand &apos;%1&apos; is klaar
Klik hier om map te openen.</translation> Klik hier om map te openen.</translation>
@ -396,11 +401,17 @@ Klik hier om map te openen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n minutes remaining</source> <source>%n minutes remaining</source>
<translation><numerusform>%n resterende minuut</numerusform><numerusform>%n resterende minuten</numerusform></translation> <translation>
<numerusform>%n resterende minuut</numerusform>
<numerusform>%n resterende minuten</numerusform>
</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n seconds remaining</source> <source>%n seconds remaining</source>
<translation><numerusform>%n resterende seconde</numerusform><numerusform>%n resterende seconden</numerusform></translation> <translation>
<numerusform>%n resterende seconde</numerusform>
<numerusform>%n resterende seconden</numerusform>
</translation>
</message> </message>
<message> <message>
<source>bytes</source> <source>bytes</source>
@ -420,7 +431,10 @@ Klik hier om map te openen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>Downloading %n file(s)...</source> <source>Downloading %n file(s)...</source>
<translation><numerusform>Dowloading %n bestand...</numerusform><numerusform>Downloading %n bestanden...</numerusform></translation> <translation>
<numerusform>Dowloading %n bestand...</numerusform>
<numerusform>Downloading %n bestanden...</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -483,7 +497,10 @@ Klik hier om map te openen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>I will auto-update %n feed(s).</source> <source>I will auto-update %n feed(s).</source>
<translation><numerusform>Auto-update van %n feed.</numerusform><numerusform>Auto-update van %n feeds.</numerusform></translation> <translation>
<numerusform>Auto-update van %n feed.</numerusform>
<numerusform>Auto-update van %n feeds.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Cannot update all items</source> <source>Cannot update all items</source>
@ -794,7 +811,10 @@ of deze functie bestaat nog niet.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source> day(s)</source> <source> day(s)</source>
<translation><numerusform> dag</numerusform><numerusform> dagen</numerusform></translation> <translation>
<numerusform> dag</numerusform>
<numerusform> dagen</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Shrink database file</source> <source>Shrink database file</source>
@ -891,10 +911,6 @@ of deze functie bestaat nog niet.</translation>
<source>&amp;Test setup</source> <source>&amp;Test setup</source>
<translation>&amp;Test instelling</translation> <translation>&amp;Test instelling</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation>Dwing het uitvoeren van server-side-update bij het bijwerken van RSS Guard feeds</translation>
</message>
<message> <message>
<source>HTTP authentication username</source> <source>HTTP authentication username</source>
<translation>HTTP verificatie gebruikersnaam</translation> <translation>HTTP verificatie gebruikersnaam</translation>
@ -1019,6 +1035,14 @@ of deze functie bestaat nog niet.</translation>
<source>Unspecified error, did you enter correct URL?</source> <source>Unspecified error, did you enter correct URL?</source>
<translation>Onbekende fout, heb je de URL correct ingevoerd?</translation> <translation>Onbekende fout, heb je de URL correct ingevoerd?</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormEditFeed</name> <name>FormEditFeed</name>
@ -1135,6 +1159,129 @@ of deze functie bestaat nog niet.</translation>
<translation>De url is leeg.</translation> <translation>De url is leeg.</translation>
</message> </message>
</context> </context>
<context>
<name>FormEditOwnCloudAccount</name>
<message>
<source>URL</source>
<translation type="unfinished">URL</translation>
</message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</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">Sommige feeds vereisen verificatie,inclusief GMail feeds, BASIC, NTLM-2 en DIGEST-MD5 verificaties schema&apos;s worden ondersteund.</translation>
</message>
<message>
<source>Authentication</source>
<translation type="unfinished">Verificatie</translation>
</message>
<message>
<source>Username</source>
<translation type="unfinished">Gebruikersnaam</translation>
</message>
<message>
<source>Password</source>
<translation type="unfinished">Paswoord</translation>
</message>
<message>
<source>Show password</source>
<translation type="unfinished">Toon paswoord</translation>
</message>
<message>
<source>&amp;Test setup</source>
<translation type="unfinished">&amp;Test instelling</translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Paswoord voor je TT-RSS account</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished">Gebruikersnaam voor je TT-RSS account</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No test done yet.</source>
<translation type="unfinished">Nog geen test uitgevoerd.</translation>
</message>
<message>
<source>Here, results of connection test are shown.</source>
<translation type="unfinished">Hier, worden resultaten van verbinding getoond.</translation>
</message>
<message>
<source>Add new ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Netwerk fout: &apos;%1&apos;</translation>
</message>
<message>
<source>Network error, have you entered correct ownCloud endpoint and password?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished">Onbekende fout, heb je de URL correct ingevoerd?</translation>
</message>
<message>
<source>Username cannot be empty.</source>
<translation type="unfinished">Gebruikersnaam kan niet leeg zijn.</translation>
</message>
<message>
<source>Username is okay.</source>
<translation type="unfinished">Gebruikersnaam is goed.</translation>
</message>
<message>
<source>Password cannot be empty.</source>
<translation type="unfinished">Paswoord kan niet leeg zijn.</translation>
</message>
<message>
<source>Password is okay.</source>
<translation type="unfinished">Paswoord is ok.</translation>
</message>
<message>
<source>URL cannot be empty.</source>
<translation type="unfinished">Url mag niet leeg zijn.</translation>
</message>
<message>
<source>URL is okay.</source>
<translation type="unfinished">Url is goed.</translation>
</message>
</context>
<context> <context>
<name>FormMain</name> <name>FormMain</name>
<message> <message>
@ -1541,6 +1688,10 @@ of deze functie bestaat nog niet.</translation>
<source>Add new feed</source> <source>Add new feed</source>
<translation>Voeg nieuw feed toe</translation> <translation>Voeg nieuw feed toe</translation>
</message> </message>
<message>
<source>Stop running update</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormRestoreDatabaseSettings</name> <name>FormRestoreDatabaseSettings</name>
@ -3282,11 +3433,14 @@ Ga naar RRSguard website en download het handmatig.</translation>
<source> <source>
+ %n other feeds.</source> + %n other feeds.</source>
<translation><numerusform> <translation>
<numerusform>
+ %n andere feed.</numerusform><numerusform> + %n andere feed.</numerusform>
<numerusform>
+ %n andere feeds.</numerusform></translation> + %n andere feeds.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Welcome to %1. <source>Welcome to %1.
@ -3318,6 +3472,10 @@ Tiny Tiny RSS is een open source web-based nieuws-feed (RSS / Atom) lezer en agg
Een API niveau van tenminste %1 is vereist.</translation> Een API niveau van tenminste %1 is vereist.</translation>
</message> </message>
<message>
<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>
</context> </context>
<context> <context>
<name>RecycleBin</name> <name>RecycleBin</name>
@ -3331,7 +3489,10 @@ Een API niveau van tenminste %1 is vereist.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n deleted message(s).</source> <source>%n deleted message(s).</source>
<translation><numerusform>%n verwijderde bericht(en).</numerusform><numerusform>%n verwijderde bericht(en).</numerusform></translation> <translation>
<numerusform>%n verwijderde bericht(en).</numerusform>
<numerusform>%n verwijderde bericht(en).</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Recycle bin <source>Recycle bin
@ -3347,7 +3508,10 @@ Een API niveau van tenminste %1 is vereist.</translation>
<message numerus="yes"> <message numerus="yes">
<source>%n unread message(s).</source> <source>%n unread message(s).</source>
<extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment> <extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment>
<translation><numerusform>%n ongelezen bericht.</numerusform><numerusform>%n ongelezen berichten.</numerusform></translation> <translation>
<numerusform>%n ongelezen bericht.</numerusform>
<numerusform>%n ongelezen berichten.</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3402,7 +3566,10 @@ Deze categorie bevat geen nested items.</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>gebruik specifieke instellingen (%n minuut voor volgende automatische update)</numerusform><numerusform>gebruik specifieke instellingen (%n minuten voor volgende automatische update)</numerusform></translation> <translation>
<numerusform>gebruik specifieke instellingen (%n minuut voor volgende automatische update)</numerusform>
<numerusform>gebruik specifieke instellingen (%n minuten voor volgende automatische update)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1 (%2)%3 <source>%1 (%2)%3
@ -3629,7 +3796,10 @@ Ongelezen nieuws: %2</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>gebruik specifieke instellingen (%n minuut voor de volgende auto-update)</numerusform><numerusform>gebruik specifieke instellingen (%n minuten voor de volgende auto-update)</numerusform></translation> <translation>
<numerusform>gebruik specifieke instellingen (%n minuut voor de volgende auto-update)</numerusform>
<numerusform>gebruik specifieke instellingen (%n minuten voor de volgende auto-update)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1%2 <source>%1%2
@ -3883,4 +4053,4 @@ Laatste login: %5</translation>
<translation>Zoek &quot;%1&quot; met google...</translation> <translation>Zoek &quot;%1&quot; met google...</translation>
</message> </message>
</context> </context>
</TS> </TS>

View file

@ -1,4 +1,6 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="pt_BR" version="2.1"> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="pt_BR">
<context> <context>
<name>AdBlockAddSubscriptionDialog</name> <name>AdBlockAddSubscriptionDialog</name>
<message> <message>
@ -281,9 +283,12 @@ Note também que alguns recursos são armazenados pelo navegador interno. Sendo
<message numerus="yes"> <message numerus="yes">
<source>Click me to add feeds from this website. <source>Click me to add feeds from this website.
This website contains %n feed(s).</source> This website contains %n feed(s).</source>
<translation><numerusform>Clique para adicionar deste site. <translation>
Este site contém %n feed.</numerusform><numerusform>Clique para adicionar deste site. <numerusform>Clique para adicionar deste site.
Este site contêm %n feeds.</numerusform></translation> Este site contém %n feed.</numerusform>
<numerusform>Clique para adicionar deste site.
Este site contêm %n feeds.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Not supported</source> <source>Not supported</source>
@ -369,7 +374,7 @@ Este site contêm %n feeds.</numerusform></translation>
<translation>Download concluído</translation> <translation>Download concluído</translation>
</message> </message>
<message> <message>
<source>File '%1' is downloaded. <source>File &apos;%1&apos; is downloaded.
Click here to open parent directory.</source> Click here to open parent directory.</source>
<translation>Arquivo &apos;%1&apos; foi baixado. <translation>Arquivo &apos;%1&apos; foi baixado.
Clique para abrir a pasta de destino.</translation> Clique para abrir a pasta de destino.</translation>
@ -395,11 +400,17 @@ Clique para abrir a pasta de destino.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n minutes remaining</source> <source>%n minutes remaining</source>
<translation><numerusform>%n minuto restante</numerusform><numerusform>%n minutos restantes</numerusform></translation> <translation>
<numerusform>%n minuto restante</numerusform>
<numerusform>%n minutos restantes</numerusform>
</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n seconds remaining</source> <source>%n seconds remaining</source>
<translation><numerusform>%n segundo restante</numerusform><numerusform>%n segundos restantes</numerusform></translation> <translation>
<numerusform>%n segundo restante</numerusform>
<numerusform>%n segundos restantes</numerusform>
</translation>
</message> </message>
<message> <message>
<source>bytes</source> <source>bytes</source>
@ -419,7 +430,10 @@ Clique para abrir a pasta de destino.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>Downloading %n file(s)...</source> <source>Downloading %n file(s)...</source>
<translation><numerusform>Baixando %n arquivo...</numerusform><numerusform>Baixando %n arquivos...</numerusform></translation> <translation>
<numerusform>Baixando %n arquivo...</numerusform>
<numerusform>Baixando %n arquivos...</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -482,7 +496,10 @@ Clique para abrir a pasta de destino.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>I will auto-update %n feed(s).</source> <source>I will auto-update %n feed(s).</source>
<translation><numerusform>%n feed será atualizado automaticamente.</numerusform><numerusform>%n feeds serão atualizados automaticamente.</numerusform></translation> <translation>
<numerusform>%n feed será atualizado automaticamente.</numerusform>
<numerusform>%n feeds serão atualizados automaticamente.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Cannot update all items</source> <source>Cannot update all items</source>
@ -793,7 +810,10 @@ ou esta função ainda não foi implementada.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source> day(s)</source> <source> day(s)</source>
<translation><numerusform>%n dia</numerusform><numerusform>%n dias</numerusform></translation> <translation>
<numerusform>%n dia</numerusform>
<numerusform>%n dias</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Shrink database file</source> <source>Shrink database file</source>
@ -890,10 +910,6 @@ ou esta função ainda não foi implementada.</translation>
<source>&amp;Test setup</source> <source>&amp;Test setup</source>
<translation>&amp;Testar configuração</translation> <translation>&amp;Testar configuração</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation>Forçar execução de atualização do lado do servidor ao atualizar feeds do RSS Guard</translation>
</message>
<message> <message>
<source>HTTP authentication username</source> <source>HTTP authentication username</source>
<translation>Usuário da autenticação HTTP</translation> <translation>Usuário da autenticação HTTP</translation>
@ -1018,6 +1034,14 @@ ou esta função ainda não foi implementada.</translation>
<source>Unspecified error, did you enter correct URL?</source> <source>Unspecified error, did you enter correct URL?</source>
<translation>Erro não especificado, você forneceu a URL correta?</translation> <translation>Erro não especificado, você forneceu a URL correta?</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormEditFeed</name> <name>FormEditFeed</name>
@ -1134,6 +1158,129 @@ ou esta função ainda não foi implementada.</translation>
<translation>A URL está vazia.</translation> <translation>A URL está vazia.</translation>
</message> </message>
</context> </context>
<context>
<name>FormEditOwnCloudAccount</name>
<message>
<source>URL</source>
<translation type="unfinished">URL</translation>
</message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</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">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>Authentication</source>
<translation type="unfinished">Autenticação</translation>
</message>
<message>
<source>Username</source>
<translation type="unfinished">Usuário</translation>
</message>
<message>
<source>Password</source>
<translation type="unfinished">Senha</translation>
</message>
<message>
<source>Show password</source>
<translation type="unfinished">Mostrar senha</translation>
</message>
<message>
<source>&amp;Test setup</source>
<translation type="unfinished">&amp;Testar configuração</translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Senha para sua conta TT-RSS</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished">Usuário para sua conta TT-RSS</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No test done yet.</source>
<translation type="unfinished">Nenhum teste executado ainda.</translation>
</message>
<message>
<source>Here, results of connection test are shown.</source>
<translation type="unfinished">Aqui são exibidos os resultados do teste de conexão.</translation>
</message>
<message>
<source>Add new ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Erro de rede: &apos;%1&apos;.</translation>
</message>
<message>
<source>Network error, have you entered correct ownCloud endpoint and password?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished">Erro não especificado, você forneceu a URL correta?</translation>
</message>
<message>
<source>Username cannot be empty.</source>
<translation type="unfinished">O nome de usuário não pode estar vazio.</translation>
</message>
<message>
<source>Username is okay.</source>
<translation type="unfinished">O nome de usuário está correto.</translation>
</message>
<message>
<source>Password cannot be empty.</source>
<translation type="unfinished">A senha não pode estar vazia.</translation>
</message>
<message>
<source>Password is okay.</source>
<translation type="unfinished">A senha está correta.</translation>
</message>
<message>
<source>URL cannot be empty.</source>
<translation type="unfinished">A URL não pode estar vazia.</translation>
</message>
<message>
<source>URL is okay.</source>
<translation type="unfinished">A URL está correta correta.</translation>
</message>
</context>
<context> <context>
<name>FormMain</name> <name>FormMain</name>
<message> <message>
@ -1540,6 +1687,10 @@ ou esta função ainda não foi implementada.</translation>
<source>Add new feed</source> <source>Add new feed</source>
<translation>Adicionar novo feed</translation> <translation>Adicionar novo feed</translation>
</message> </message>
<message>
<source>Stop running update</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormRestoreDatabaseSettings</name> <name>FormRestoreDatabaseSettings</name>
@ -3275,11 +3426,14 @@ Vá até o site do aplicativo para obter manualmente.</translation>
<source> <source>
+ %n other feeds.</source> + %n other feeds.</source>
<translation><numerusform> <translation>
<numerusform>
+ %n outro feed.</numerusform><numerusform> + %n outro feed.</numerusform>
<numerusform>
+ %n outros feeds.</numerusform></translation> + %n outros feeds.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Welcome to %1. <source>Welcome to %1.
@ -3311,6 +3465,10 @@ O Tiny Tiny RSS é um leitor e agregador de feeds de notícias (RSS/Atom) basead
Pelo menos o API nível %1 é necessário.</translation> Pelo menos o API nível %1 é necessário.</translation>
</message> </message>
<message>
<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>
</context> </context>
<context> <context>
<name>RecycleBin</name> <name>RecycleBin</name>
@ -3324,7 +3482,10 @@ Pelo menos o API nível %1 é necessário.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n deleted message(s).</source> <source>%n deleted message(s).</source>
<translation><numerusform>%n mensagem excluída.</numerusform><numerusform>%n mensagens excluídas.</numerusform></translation> <translation>
<numerusform>%n mensagem excluída.</numerusform>
<numerusform>%n mensagens excluídas.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Recycle bin <source>Recycle bin
@ -3340,7 +3501,10 @@ Pelo menos o API nível %1 é necessário.</translation>
<message numerus="yes"> <message numerus="yes">
<source>%n unread message(s).</source> <source>%n unread message(s).</source>
<extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment> <extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment>
<translation><numerusform>%n mensagem não lida.</numerusform><numerusform>%n mensagem(ns) não lidas.</numerusform></translation> <translation>
<numerusform>%n mensagem não lida.</numerusform>
<numerusform>%n mensagem(ns) não lidas.</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3395,7 +3559,10 @@ Esta categoria nenhum possui itens aninhados.</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform><numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform></translation> <translation>
<numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform>
<numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1 (%2)%3 <source>%1 (%2)%3
@ -3621,7 +3788,10 @@ Notícias não lidas: %2</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>usa configurações específicas (%n minuto para a próxima atualização automática)</numerusform><numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform></translation> <translation>
<numerusform>usa configurações específicas (%n minuto para a próxima atualização automática)</numerusform>
<numerusform>usa configurações específicas (%n minuto(s) para a próxima atualização automática)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1%2 <source>%1%2
@ -3875,4 +4045,4 @@ Servidor: %2
<translation>Pesquisar &quot;%1&quot; no Google...</translation> <translation>Pesquisar &quot;%1&quot; no Google...</translation>
</message> </message>
</context> </context>
</TS> </TS>

View file

@ -1,4 +1,6 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="sv_SE" version="2.1"> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="sv_SE">
<context> <context>
<name>AdBlockAddSubscriptionDialog</name> <name>AdBlockAddSubscriptionDialog</name>
<message> <message>
@ -281,9 +283,12 @@ Notera också att vissa resurser cachelagras av den interna webbläsaren. Om du
<message numerus="yes"> <message numerus="yes">
<source>Click me to add feeds from this website. <source>Click me to add feeds from this website.
This website contains %n feed(s).</source> This website contains %n feed(s).</source>
<translation><numerusform>Klicka för att lägga till flöden från webbsidan. <translation>
Denna webbsida innehåller %n flöde.</numerusform><numerusform>Klicka för att lägga till flöden från webbsidan. <numerusform>Klicka för att lägga till flöden från webbsidan.
Denna webbsida innehåller %n flöden.</numerusform></translation> Denna webbsida innehåller %n flöde.</numerusform>
<numerusform>Klicka för att lägga till flöden från webbsidan.
Denna webbsida innehåller %n flöden.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Not supported</source> <source>Not supported</source>
@ -369,7 +374,7 @@ Denna webbsida innehåller %n flöden.</numerusform></translation>
<translation>Nedladdning slutförd</translation> <translation>Nedladdning slutförd</translation>
</message> </message>
<message> <message>
<source>File '%1' is downloaded. <source>File &apos;%1&apos; is downloaded.
Click here to open parent directory.</source> Click here to open parent directory.</source>
<translation>Filen &apos;%1&apos; är nedlladdad. <translation>Filen &apos;%1&apos; är nedlladdad.
Klicka här för att öppna målmappen.</translation> Klicka här för att öppna målmappen.</translation>
@ -395,11 +400,17 @@ Klicka här för att öppna målmappen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n minutes remaining</source> <source>%n minutes remaining</source>
<translation><numerusform>%n minut kvar</numerusform><numerusform>%n minuter kvar</numerusform></translation> <translation>
<numerusform>%n minut kvar</numerusform>
<numerusform>%n minuter kvar</numerusform>
</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n seconds remaining</source> <source>%n seconds remaining</source>
<translation><numerusform>%n sekund kvar</numerusform><numerusform>%n sekunder kvar</numerusform></translation> <translation>
<numerusform>%n sekund kvar</numerusform>
<numerusform>%n sekunder kvar</numerusform>
</translation>
</message> </message>
<message> <message>
<source>bytes</source> <source>bytes</source>
@ -419,7 +430,10 @@ Klicka här för att öppna målmappen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>Downloading %n file(s)...</source> <source>Downloading %n file(s)...</source>
<translation><numerusform>Laddar ner %n fil...</numerusform><numerusform>Laddar ner %n filer...</numerusform></translation> <translation>
<numerusform>Laddar ner %n fil...</numerusform>
<numerusform>Laddar ner %n filer...</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -482,7 +496,10 @@ Klicka här för att öppna målmappen.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>I will auto-update %n feed(s).</source> <source>I will auto-update %n feed(s).</source>
<translation><numerusform>Jag uppdaterar %n flöde automatiskt</numerusform><numerusform>Jag uppdaterar %n flöden automatiskt</numerusform></translation> <translation>
<numerusform>Jag uppdaterar %n flöde automatiskt</numerusform>
<numerusform>Jag uppdaterar %n flöden automatiskt</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Cannot update all items</source> <source>Cannot update all items</source>
@ -793,7 +810,10 @@ att funktionen inte är implementerad än.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source> day(s)</source> <source> day(s)</source>
<translation><numerusform>dag</numerusform><numerusform>dagar</numerusform></translation> <translation>
<numerusform>dag</numerusform>
<numerusform>dagar</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Shrink database file</source> <source>Shrink database file</source>
@ -890,10 +910,6 @@ att funktionen inte är implementerad än.</translation>
<source>&amp;Test setup</source> <source>&amp;Test setup</source>
<translation>&amp;Testa inställning</translation> <translation>&amp;Testa inställning</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation>Utför tvingad körning av serveruppdatering när flöden uppdateras från RSS-Guard</translation>
</message>
<message> <message>
<source>HTTP authentication username</source> <source>HTTP authentication username</source>
<translation>Användarnamn för HTTP-autentisering</translation> <translation>Användarnamn för HTTP-autentisering</translation>
@ -1018,6 +1034,14 @@ att funktionen inte är implementerad än.</translation>
<source>Unspecified error, did you enter correct URL?</source> <source>Unspecified error, did you enter correct URL?</source>
<translation>Ospecificerat fel! Angav du korrekt URL?</translation> <translation>Ospecificerat fel! Angav du korrekt URL?</translation>
</message> </message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormEditFeed</name> <name>FormEditFeed</name>
@ -1134,6 +1158,129 @@ att funktionen inte är implementerad än.</translation>
<translation>URL saknas.</translation> <translation>URL saknas.</translation>
</message> </message>
</context> </context>
<context>
<name>FormEditOwnCloudAccount</name>
<message>
<source>URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Force execution of server-side update when updating feeds from RSS Guard</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>Authentication</source>
<translation type="unfinished">Autentisering</translation>
</message>
<message>
<source>Username</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Password</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Show password</source>
<translation type="unfinished">Visa lösenord</translation>
</message>
<message>
<source>&amp;Test setup</source>
<translation type="unfinished">&amp;Testa inställning</translation>
</message>
<message>
<source>Leaving this option on causes that updates of feeds will be probably much slower and may time-out often.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Lösenord för ditt TT RSS-konto</translation>
</message>
<message>
<source>Username for your TT-RSS account</source>
<translation type="unfinished">Användarnamn för ditt TT RSS-konto</translation>
</message>
<message>
<source>URL of your ownCloud server, without any API path</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No test done yet.</source>
<translation type="unfinished">Inget test utfört ännu.</translation>
</message>
<message>
<source>Here, results of connection test are shown.</source>
<translation type="unfinished">Här visas resultat av anslutningstest.</translation>
</message>
<message>
<source>Add new ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit existing ownCloud News account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.</source>
<translation type="unfinished"></translation>
</message>
<message>
<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">Nätverksfel: &apos;%1&apos;.</translation>
</message>
<message>
<source>Network error, have you entered correct ownCloud endpoint and password?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unspecified error, did you enter correct URL?</source>
<translation type="unfinished">Ospecificerat fel! Angav du korrekt URL?</translation>
</message>
<message>
<source>Username cannot be empty.</source>
<translation type="unfinished">Användarnamn saknas.</translation>
</message>
<message>
<source>Username is okay.</source>
<translation type="unfinished">Användarnamn okay.</translation>
</message>
<message>
<source>Password cannot be empty.</source>
<translation type="unfinished">Lösenord saknas.</translation>
</message>
<message>
<source>Password is okay.</source>
<translation type="unfinished">Lösenord okay.</translation>
</message>
<message>
<source>URL cannot be empty.</source>
<translation type="unfinished">URL saknas.</translation>
</message>
<message>
<source>URL is okay.</source>
<translation type="unfinished">URL okay.</translation>
</message>
</context>
<context> <context>
<name>FormMain</name> <name>FormMain</name>
<message> <message>
@ -1540,6 +1687,10 @@ att funktionen inte är implementerad än.</translation>
<source>Add new feed</source> <source>Add new feed</source>
<translation>Lägg till nytt flöde</translation> <translation>Lägg till nytt flöde</translation>
</message> </message>
<message>
<source>Stop running update</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>FormRestoreDatabaseSettings</name> <name>FormRestoreDatabaseSettings</name>
@ -3275,9 +3426,12 @@ Gå till programmets hemsida för att hämta den manuellt.</translation>
<source> <source>
+ %n other feeds.</source> + %n other feeds.</source>
<translation><numerusform>+ %n annat flöde.</numerusform><numerusform> <translation>
<numerusform>+ %n annat flöde.</numerusform>
<numerusform>
+ %n andra flöden.</numerusform></translation> + %n andra flöden.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Welcome to %1. <source>Welcome to %1.
@ -3309,6 +3463,10 @@ Tiny Tiny RSS är en öppen källkods, webbaserad flödesläsare (RSS/Atom) och
Minst API-nivå %1 krävs.</translation> Minst API-nivå %1 krävs.</translation>
</message> </message>
<message>
<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>
</context> </context>
<context> <context>
<name>RecycleBin</name> <name>RecycleBin</name>
@ -3322,7 +3480,10 @@ Minst API-nivå %1 krävs.</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<source>%n deleted message(s).</source> <source>%n deleted message(s).</source>
<translation><numerusform>%n borttaget meddelande.</numerusform><numerusform>%n borttagna meddelanden.</numerusform></translation> <translation>
<numerusform>%n borttaget meddelande.</numerusform>
<numerusform>%n borttagna meddelanden.</numerusform>
</translation>
</message> </message>
<message> <message>
<source>Recycle bin <source>Recycle bin
@ -3338,7 +3499,10 @@ Minst API-nivå %1 krävs.</translation>
<message numerus="yes"> <message numerus="yes">
<source>%n unread message(s).</source> <source>%n unread message(s).</source>
<extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment> <extracomment>Tooltip for &quot;unread&quot; column of feed list.</extracomment>
<translation><numerusform>%n oläst meddelande.</numerusform><numerusform>%n olästa meddelanden.</numerusform></translation> <translation>
<numerusform>%n oläst meddelande.</numerusform>
<numerusform>%n olästa meddelanden.</numerusform>
</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3393,7 +3557,10 @@ Denna kategori innehåller inga objekt.</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>använder specifika inställningar (%n minut till nästa autouppdatering)</numerusform><numerusform>använder specifika inställningar (%n minuter till nästa autouppdatering)</numerusform></translation> <translation>
<numerusform>använder specifika inställningar (%n minut till nästa autouppdatering)</numerusform>
<numerusform>använder specifika inställningar (%n minuter till nästa autouppdatering)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1 (%2)%3 <source>%1 (%2)%3
@ -3619,7 +3786,10 @@ Olästa nyheter: %2</translation>
<message numerus="yes"> <message numerus="yes">
<source>uses specific settings (%n minute(s) to next auto-update)</source> <source>uses specific settings (%n minute(s) to next auto-update)</source>
<extracomment>Describes feed auto-update status.</extracomment> <extracomment>Describes feed auto-update status.</extracomment>
<translation><numerusform>använder specifika inställningar (%n minut till nästa automatiska uppdatering)</numerusform><numerusform>använder specifika inställningar (%n minuter till nästa automatiska uppdatering)</numerusform></translation> <translation>
<numerusform>använder specifika inställningar (%n minut till nästa automatiska uppdatering)</numerusform>
<numerusform>använder specifika inställningar (%n minuter till nästa automatiska uppdatering)</numerusform>
</translation>
</message> </message>
<message> <message>
<source>%1%2 <source>%1%2
@ -3873,4 +4043,4 @@ Senast inloggad: %5</translation>
<translation>Sök &quot;%1&quot; via Google...</translation> <translation>Sök &quot;%1&quot; via Google...</translation>
</message> </message>
</context> </context>
</TS> </TS>

View file

@ -31,6 +31,16 @@ CREATE TABLE IF NOT EXISTS TtRssAccounts (
FOREIGN KEY (id) REFERENCES Accounts (id) FOREIGN KEY (id) REFERENCES Accounts (id)
); );
-- !
CREATE TABLE IF NOT EXISTS OwnCloudAccounts (
id INTEGER,
username TEXT NOT NULL,
password TEXT,
url TEXT NOT NULL,
force_update INTEGER(1) NOT NULL CHECK (force_update >= 0 AND force_update <= 1) DEFAULT 0,
FOREIGN KEY (id) REFERENCES Accounts (id)
);
DROP TABLE IF EXISTS Categories; DROP TABLE IF EXISTS Categories;
-- ! -- !
CREATE TABLE IF NOT EXISTS Categories ( CREATE TABLE IF NOT EXISTS Categories (

View file

@ -26,6 +26,16 @@ CREATE TABLE IF NOT EXISTS TtRssAccounts (
FOREIGN KEY (id) REFERENCES Accounts (id) FOREIGN KEY (id) REFERENCES Accounts (id)
); );
-- ! -- !
CREATE TABLE IF NOT EXISTS OwnCloudAccounts (
id INTEGER,
username TEXT NOT NULL,
password TEXT,
url TEXT NOT NULL,
force_update INTEGER(1) NOT NULL CHECK (force_update >= 0 AND force_update <= 1) DEFAULT 0,
FOREIGN KEY (id) REFERENCES Accounts (id)
);
-- !
DROP TABLE IF EXISTS Categories; DROP TABLE IF EXISTS Categories;
-- ! -- !
CREATE TABLE IF NOT EXISTS Categories ( CREATE TABLE IF NOT EXISTS Categories (

View file

@ -0,0 +1,9 @@
CREATE TABLE IF NOT EXISTS OwnCloudAccounts (
id INTEGER,
username TEXT NOT NULL,
password TEXT,
url TEXT NOT NULL,
force_update INTEGER(1) NOT NULL CHECK (force_update >= 0 AND force_update <= 1) DEFAULT 0,
FOREIGN KEY (id) REFERENCES Accounts (id)
);

View file

@ -0,0 +1,9 @@
CREATE TABLE IF NOT EXISTS OwnCloudAccounts (
id INTEGER,
username TEXT NOT NULL,
password TEXT,
url TEXT NOT NULL,
force_update INTEGER(1) NOT NULL CHECK (force_update >= 0 AND force_update <= 1) DEFAULT 0,
FOREIGN KEY (id) REFERENCES Accounts (id)
);

View file

@ -188,14 +188,14 @@ void FormUpdate::startUpdate() {
qDebug("Preparing to launch external installer '%s'.", qPrintable(QDir::toNativeSeparators(m_updateFilePath))); qDebug("Preparing to launch external installer '%s'.", qPrintable(QDir::toNativeSeparators(m_updateFilePath)));
#if defined(Q_OS_WIN) #if defined(Q_OS_WIN)
const long exec_result = (long) ShellExecute(NULL, HINSTANCE exec_result = ShellExecute(NULL,
NULL, NULL,
reinterpret_cast<const WCHAR*>(QDir::toNativeSeparators(m_updateFilePath).utf16()), reinterpret_cast<const WCHAR*>(QDir::toNativeSeparators(m_updateFilePath).utf16()),
NULL, NULL,
NULL, NULL,
SW_NORMAL); SW_NORMAL);
if (exec_result <= 32) { if (((int)exec_result) <= 32) {
qDebug("External updater was not launched due to error."); qDebug("External updater was not launched due to error.");
qApp->showGuiMessage(tr("Cannot update application"), qApp->showGuiMessage(tr("Cannot update application"),

View file

@ -103,7 +103,7 @@ void FormEditOwnCloudAccount::performTest() {
OwnCloudStatusResponse result = factory.status(); OwnCloudStatusResponse result = factory.status();
if (result.isLoaded()) { if (result.isLoaded()) {
if (SystemFactory::isVersionEqualOrNewer(result.version(), MINIMAL_OC_VERSION)) { if (!SystemFactory::isVersionEqualOrNewer(result.version(), MINIMAL_OC_VERSION)) {
m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Error, m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Error,
tr("Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.").arg(result.version(), tr("Selected ownCloud News server is running unsupported version (%1). At least version %2 is required.").arg(result.version(),
MINIMAL_OC_VERSION), MINIMAL_OC_VERSION),
@ -116,7 +116,7 @@ void FormEditOwnCloudAccount::performTest() {
tr("OwnCloud News server is okay.")); tr("OwnCloud News server is okay."));
} }
} }
else if (factory.lastError() != QNetworkReply::NoError ) { else if (factory.lastError() != QNetworkReply::NoError) {
m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Error, m_ui->m_lblTestResult->setStatus(WidgetWithStatus::Error,
tr("Network error: '%1'.").arg(NetworkFactory::networkErrorText(factory.lastError())), tr("Network error: '%1'.").arg(NetworkFactory::networkErrorText(factory.lastError())),
tr("Network error, have you entered correct ownCloud endpoint and password?")); tr("Network error, have you entered correct ownCloud endpoint and password?"));
@ -142,7 +142,7 @@ void FormEditOwnCloudAccount::onClickedOk() {
m_editableRoot->network()->setAuthUsername(m_ui->m_txtUsername->lineEdit()->text()); m_editableRoot->network()->setAuthUsername(m_ui->m_txtUsername->lineEdit()->text());
m_editableRoot->network()->setAuthPassword(m_ui->m_txtPassword->lineEdit()->text()); m_editableRoot->network()->setAuthPassword(m_ui->m_txtPassword->lineEdit()->text());
m_editableRoot->network()->setForceServerSideUpdate(m_ui->m_checkServerSideUpdate->isChecked()); m_editableRoot->network()->setForceServerSideUpdate(m_ui->m_checkServerSideUpdate->isChecked());
//m_editableRoot->saveAccountDataToDatabase(); m_editableRoot->saveAccountDataToDatabase();
accept(); accept();

View file

@ -27,7 +27,8 @@
OwnCloudNetworkFactory::OwnCloudNetworkFactory() OwnCloudNetworkFactory::OwnCloudNetworkFactory()
: m_url(QString()), m_forceServerSideUpdate(false), : m_url(QString()), m_forceServerSideUpdate(false),
m_authUsername(QString()), m_authPassword(QString()), m_urlUser(QString()), m_urlStatus(QString()) { m_authUsername(QString()), m_authPassword(QString()), m_urlUser(QString()), m_urlStatus(QString()),
m_userId(QString()) {
} }
OwnCloudNetworkFactory::~OwnCloudNetworkFactory() { OwnCloudNetworkFactory::~OwnCloudNetworkFactory() {
@ -114,6 +115,14 @@ OwnCloudStatusResponse OwnCloudNetworkFactory::status() {
return status_response; return status_response;
} }
QString OwnCloudNetworkFactory::userId() const {
return m_userId;
}
void OwnCloudNetworkFactory::setUserId(const QString &userId) {
m_userId = userId;
}
OwnCloudResponse::OwnCloudResponse(const QString &raw_content) { OwnCloudResponse::OwnCloudResponse(const QString &raw_content) {
m_rawContent = QtJson::parse(raw_content).toMap(); m_rawContent = QtJson::parse(raw_content).toMap();
} }

View file

@ -75,6 +75,9 @@ class OwnCloudNetworkFactory {
QString authPassword() const; QString authPassword() const;
void setAuthPassword(const QString &auth_password); void setAuthPassword(const QString &auth_password);
QString userId() const;
void setUserId(const QString &userId);
QNetworkReply::NetworkError lastError() const; QNetworkReply::NetworkError lastError() const;
// Operations. // Operations.
@ -95,6 +98,8 @@ class OwnCloudNetworkFactory {
// Endpoints. // Endpoints.
QString m_urlUser; QString m_urlUser;
QString m_urlStatus; QString m_urlStatus;
QString m_userId;
}; };
#endif // OWNCLOUDNETWORKFACTORY_H #endif // OWNCLOUDNETWORKFACTORY_H

View file

@ -22,8 +22,13 @@
#include "miscellaneous/iconfactory.h" #include "miscellaneous/iconfactory.h"
#include "services/owncloud/definitions.h" #include "services/owncloud/definitions.h"
#include "services/owncloud/owncloudserviceroot.h" #include "services/owncloud/owncloudserviceroot.h"
#include "services/owncloud/network/owncloudnetworkfactory.h"
#include "services/owncloud/gui/formeditowncloudaccount.h" #include "services/owncloud/gui/formeditowncloudaccount.h"
#include "gui/dialogs/formmain.h" #include "gui/dialogs/formmain.h"
#include "miscellaneous/textfactory.h"
#include <QSqlQuery>
#include <QSqlError>
OwnCloudServiceEntryPoint::OwnCloudServiceEntryPoint() { OwnCloudServiceEntryPoint::OwnCloudServiceEntryPoint() {
@ -38,8 +43,31 @@ ServiceRoot *OwnCloudServiceEntryPoint::createNewRoot() const {
} }
QList<ServiceRoot*> OwnCloudServiceEntryPoint::initializeSubtree() const { QList<ServiceRoot*> OwnCloudServiceEntryPoint::initializeSubtree() const {
// TODO: TODO // Check DB if standard account is enabled.
return QList<ServiceRoot*>(); QSqlDatabase database = qApp->database()->connection(QSL("OwnCloudServiceEntryPoint"), DatabaseFactory::FromSettings);
QSqlQuery query(database);
QList<ServiceRoot*> roots;
if (query.exec("SELECT * FROM OwnCloudAccounts;")) {
while (query.next()) {
OwnCloudServiceRoot *root = new OwnCloudServiceRoot();
root->setId(query.value(0).toInt());
root->setAccountId(query.value(0).toInt());
root->network()->setAuthUsername(query.value(1).toString());
root->network()->setAuthPassword(TextFactory::decrypt(query.value(2).toString()));
root->network()->setUrl(query.value(3).toString());
root->network()->setForceServerSideUpdate(query.value(4).toBool());
// TODO: todo
//root->updateTitle();
roots.append(root);
}
}
else {
qWarning("OwnCloud: Getting list of activated accounts failed: '%s'.", qPrintable(query.lastError().text()));
}
return roots;
} }
bool OwnCloudServiceEntryPoint::isSingleInstanceService() const { bool OwnCloudServiceEntryPoint::isSingleInstanceService() const {

View file

@ -18,12 +18,19 @@
#include "services/owncloud/owncloudserviceroot.h" #include "services/owncloud/owncloudserviceroot.h"
#include "definitions/definitions.h" #include "definitions/definitions.h"
#include "miscellaneous/databasefactory.h"
#include "miscellaneous/application.h"
#include "miscellaneous/textfactory.h"
#include "services/owncloud/owncloudserviceentrypoint.h" #include "services/owncloud/owncloudserviceentrypoint.h"
#include "services/owncloud/network/owncloudnetworkfactory.h" #include "services/owncloud/network/owncloudnetworkfactory.h"
#include <QSqlQuery>
#include <QSqlError>
OwnCloudServiceRoot::OwnCloudServiceRoot(RootItem *parent) OwnCloudServiceRoot::OwnCloudServiceRoot(RootItem *parent)
: ServiceRoot(parent), m_network(new OwnCloudNetworkFactory()) { : ServiceRoot(parent), m_network(new OwnCloudNetworkFactory()) {
setIcon(OwnCloudServiceEntryPoint().icon());
} }
OwnCloudServiceRoot::~OwnCloudServiceRoot() { OwnCloudServiceRoot::~OwnCloudServiceRoot() {
@ -92,6 +99,82 @@ OwnCloudNetworkFactory *OwnCloudServiceRoot::network() const {
return m_network; return m_network;
} }
void OwnCloudServiceRoot::updateTitle() {
QString host = QUrl(m_network->url()).host();
if (host.isEmpty()) {
host = m_network->url();
}
setTitle(m_network->authUsername() + QL1S("@") + host);
}
void OwnCloudServiceRoot::saveAccountDataToDatabase() {
// TODO: TODO
if (accountId() != NO_PARENT_CATEGORY) {
// We are overwritting previously saved data.
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query(database);
query.prepare("UPDATE OwnCloudAccounts "
"SET username = :username, password = :password, url = :url, force_update = :force_update "
"WHERE id = :id;");
query.bindValue(QSL(":username"), m_network->authUsername());
query.bindValue(QSL(":password"), TextFactory::encrypt(m_network->authPassword()));
query.bindValue(QSL(":url"), m_network->url());
query.bindValue(QSL(":force_update"), (int) m_network->forceServerSideUpdate());
query.bindValue(QSL(":id"), accountId());
if (query.exec()) {
updateTitle();
itemChanged(QList<RootItem*>() << this);
}
else {
qWarning("OwnCloud: Updating account failed: '%s'.", qPrintable(query.lastError().text()));
}
}
else {
// We are probably saving newly added account.
QSqlDatabase database = qApp->database()->connection(metaObject()->className(), DatabaseFactory::FromSettings);
QSqlQuery query(database);
// 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()));
return;
}
int id_to_assign = query.value(0).toInt() + 1;
bool saved = true;
query.prepare(QSL("INSERT INTO Accounts (id, type) VALUES (:id, :type);"));
query.bindValue(QSL(":id"), id_to_assign);
query.bindValue(QSL(":type"), SERVICE_CODE_OWNCLOUD);
saved &= query.exec();
query.prepare("INSERT INTO OwnCloudAccounts (id, username, password, url, force_update) "
"VALUES (:id, :username, :password, :url, :force_update);");
query.bindValue(QSL(":id"), id_to_assign);
query.bindValue(QSL(":username"), m_network->authUsername());
query.bindValue(QSL(":password"), TextFactory::encrypt(m_network->authPassword()));
query.bindValue(QSL(":url"), m_network->url());
query.bindValue(QSL(":force_update"), (int) m_network->forceServerSideUpdate());
saved &= query.exec();
if (saved) {
setId(id_to_assign);
setAccountId(id_to_assign);
updateTitle();
}
else {
qWarning("OwnCloud: Saving of new account failed: '%s'.", qPrintable(query.lastError().text()));
}
}
}
void OwnCloudServiceRoot::addNewFeed(const QString &url) { void OwnCloudServiceRoot::addNewFeed(const QString &url) {
// TODO: TODO // TODO: TODO
} }

View file

@ -51,6 +51,9 @@ class OwnCloudServiceRoot : public ServiceRoot {
OwnCloudNetworkFactory *network() const; OwnCloudNetworkFactory *network() const;
void updateTitle();
void saveAccountDataToDatabase();
public slots: public slots:
void addNewFeed(const QString &url); void addNewFeed(const QString &url);
void addNewCategory(); void addNewCategory();