summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar mkaay <mkaay@mkaay.de> 2010-02-02 22:15:48 +0100
committerGravatar mkaay <mkaay@mkaay.de> 2010-02-02 22:15:48 +0100
commitdc97a68f74dc0966b1df9e8f8231d76ecd9f2673 (patch)
treeba05b6850867bf5033d1fa725a442ba7d325956b
parentforgot file (diff)
downloadpyload-dc97a68f74dc0966b1df9e8f8231d76ecd9f2673.tar.xz
some gui fixes, i18n update
-rw-r--r--locale/de/de.po219
-rw-r--r--locale/en/en.po219
-rw-r--r--locale/fr/fr.po215
-rw-r--r--locale/messages.pot191
-rw-r--r--module/download_thread.py50
-rw-r--r--module/file_list.py8
-rw-r--r--module/gui/Collector.py15
-rw-r--r--module/gui/Queue.py11
-rw-r--r--module/gui/connector.py3
-rw-r--r--module/plugins/decrypter/SerienjunkiesOrg.py1
-rw-r--r--module/thread_list.py57
-rwxr-xr-xpyLoadCore.py36
12 files changed, 795 insertions, 230 deletions
diff --git a/locale/de/de.po b/locale/de/de.po
index 471d543cf..1994499df 100644
--- a/locale/de/de.po
+++ b/locale/de/de.po
@@ -4,69 +4,202 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: 0.1\n"
-"POT-Creation-Date: 2009-06-04 15:33+CEST\n"
-"PO-Revision-Date: 2009-06-05 18:27+0100\n"
-"Last-Translator: spoob <spoob@gmx.de>\n"
-"Language-Team: pyLoad <LL@li.org>\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2010-02-02 21:54+CET\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
-#: Core.py:59
+
+#: module/download_thread.py:115
+msgid "Hoster unvailable, wait 60 seconds"
+msgstr ""
+
+#: module/download_thread.py:117
+msgid "Error getting error code: %s"
+msgstr ""
+
+#: module/download_thread.py:163
+msgid "Checksum ok ('%s')"
+msgstr ""
+
+#: module/download_thread.py:165
+msgid "Checksum not matched! ('%s')"
+msgstr ""
+
+#: module/download_thread.py:167
+msgid "Can't get checksum for %s"
+msgstr ""
+
+#: module/download_thread.py:169
+msgid "Checksum not implemented for %s"
+msgstr ""
+
+#: module/file_list.py:87
+msgid "Found %s links in linkcollector"
+msgstr ""
+
+#: module/file_list.py:89
+msgid "Found %s unqueued packages"
+msgstr ""
+
+#: module/file_list.py:91
+msgid "Added %s packages to queue"
+msgstr ""
+
+#: module/thread_list.py:88
+msgid "Get links from: %s"
+msgstr ""
+
+#: module/thread_list.py:90
+msgid "Download starts: %s"
+msgstr ""
+
+#: module/thread_list.py:136
+msgid "Parsed links from %s: %i"
+msgstr ""
+
+#: module/thread_list.py:138
+msgid "No links in %s"
+msgstr ""
+
+#: module/thread_list.py:145
+msgid "Download finished: %s"
+msgstr ""
+
+#: module/thread_list.py:151
+msgid "Download failed: %s | %s"
+msgstr ""
+
+#: module/thread_list.py:156
+msgid "Download aborted: %s"
+msgstr ""
+
+#: module/thread_list.py:206
+msgid "Starting reconnect"
+msgstr ""
+
+#: module/thread_list.py:220
+msgid "Reconnected, new IP: %s"
+msgstr ""
+
+#: pyLoadCore.py:111
+msgid "pycrypto to decode container files"
+msgstr ""
+
+#: pyLoadCore.py:112
+msgid "Python Image Libary (PIL) for captha reading"
+msgstr ""
+
+#: pyLoadCore.py:113
+msgid "pycurl for lower memory footprint while downloading"
+msgstr ""
+
+#: pyLoadCore.py:114
+msgid "Django for webinterface"
+msgstr ""
+
+#: pyLoadCore.py:115
+msgid "tesseract for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:116
+msgid "gocr for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:118
msgid "folder for logs"
-msgstr "Ordner für Logs"
+msgstr ""
-#: Core.py:60
+#: pyLoadCore.py:119
msgid "folder for downloads"
-msgstr "Ordner für Downloads"
+msgstr ""
-#: Core.py:61
+#: pyLoadCore.py:120
msgid "file for links"
-msgstr "Linkdatei"
+msgstr ""
-#: Core.py:62
+#: pyLoadCore.py:121
msgid "file for failed links"
-msgstr "Datei für felgeschlagene Links"
+msgstr ""
-#: Core.py:68
+#: pyLoadCore.py:124
+msgid "OpenSSL for secure connection"
+msgstr ""
+
+#: pyLoadCore.py:125
+msgid "ssl certificate"
+msgstr ""
+
+#: pyLoadCore.py:126
+msgid "ssl key"
+msgstr ""
+
+#: pyLoadCore.py:150
msgid "Downloadtime: %s"
-msgstr "Downloadzeit: %s"
+msgstr ""
-#: Core.py:96
-msgid "added"
-msgstr "Hinzugefügt"
+#: pyLoadCore.py:179
+msgid "restarting pyLoad"
+msgstr ""
-#: Core.py:97
-msgid "created index of plugins"
-msgstr "Plugin Index erstellt"
+#: pyLoadCore.py:183
+msgid "pyLoad quits"
+msgstr ""
-#: Core.py:119
-msgid "new update %s on pyload.org"
-msgstr "Neue Version %s auf pyload.org verfügbar!"
+#: pyLoadCore.py:194
+msgid "Secure XMLRPC Server Started"
+msgstr ""
-#: Core.py:121
-msgid "newst version %s in use:"
-msgstr "Neueste Version %s in Benutzung"
+#: pyLoadCore.py:197
+msgid "Auth XMLRPC Server Started"
+msgstr ""
-#: Core.py:123
-msgid "beta version %s in use:"
-msgstr "Beta Version %s in Benutzung"
+#: pyLoadCore.py:203
+msgid "Failed starting XMLRPC server, CLI and GUI will not be available: %s"
+msgstr ""
-#: Core.py:132
+#: pyLoadCore.py:272
msgid "%s created"
-msgstr "%s erstellt"
+msgstr ""
+
+#: pyLoadCore.py:275
+msgid "could not find %s: %s"
+msgstr ""
+
+#: pyLoadCore.py:277
+msgid "could not create %s: %s"
+msgstr ""
+
+#: pyLoadCore.py:305
+msgid "%s added"
+msgstr ""
-#: Core.py:134
-msgid "could not create %s"
-msgstr "Konnte %s nicht erstellen"
+#: pyLoadCore.py:306
+msgid "created index of plugins"
+msgstr ""
+
+#: pyLoadCore.py:325
+msgid "shutting down..."
+msgstr ""
+
+#: pyLoadCore.py:341
+msgid "No Updates for pyLoad"
+msgstr ""
-#: Core.py:194
-msgid "%i seconds"
-msgstr "%i Sekunden"
+#: pyLoadCore.py:344
+msgid "New pyLoad Version %s available"
+msgstr ""
-#: Core.py:222
-msgid "Server Mode"
-msgstr "Servermodus"
+#: pyLoadCore.py:369
+msgid "Auto install Failed"
+msgstr ""
+
+#: pyLoadCore.py:607
+msgid "killed pyLoad from Terminal"
+msgstr ""
diff --git a/locale/en/en.po b/locale/en/en.po
index 87e646735..4d5bc4ee3 100644
--- a/locale/en/en.po
+++ b/locale/en/en.po
@@ -4,65 +4,206 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: 0.1\n"
-"POT-Creation-Date: 2009-06-05 18:26+CEST\n"
-"PO-Revision-Date: 2009-06-05 18:28+0100\n"
-"Last-Translator: spoob <spoob@gmx.de>\n"
-"Language-Team: pyLoad <LL@li.org>\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2010-02-02 21:54+CET\n"
+"PO-Revision-Date: 2010-02-02 23:05+0200\n"
+"Last-Translator: Marius <mkaay@mkaay.de>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 2.0.0\n"
"Generated-By: pygettext.py 1.5\n"
-#: Core.py:59
+#: module/download_thread.py:115
+msgid "Hoster unvailable, wait 60 seconds"
+msgstr "Hoster unvailable, wait 60 seconds"
+
+#: module/download_thread.py:117
+msgid "Error getting error code: %s"
+msgstr "Error getting error code: %s"
+
+#: module/download_thread.py:163
+msgid "Checksum ok ('%s')"
+msgstr "Checksum ok ('%s')"
+
+#: module/download_thread.py:165
+msgid "Checksum not matched! ('%s')"
+msgstr "Checksum not matched! ('%s')"
+
+#: module/download_thread.py:167
+msgid "Can't get checksum for %s"
+msgstr "Can't get checksum for %s"
+
+#: module/download_thread.py:169
+msgid "Checksum not implemented for %s"
+msgstr "Checksum not implemented for %s"
+
+#: module/file_list.py:87
+msgid "Found %s links in linkcollector"
+msgstr "Found %s links in linkcollector"
+
+#: module/file_list.py:89
+msgid "Found %s unqueued packages"
+msgstr "Found %s unqueued packages"
+
+#: module/file_list.py:91
+msgid "Added %s packages to queue"
+msgstr "Added %s packages to queue"
+
+#: module/thread_list.py:88
+msgid "Get links from: %s"
+msgstr "Get links from: %s"
+
+#: module/thread_list.py:90
+msgid "Download starts: %s"
+msgstr "Download starts: %s"
+
+#: module/thread_list.py:136
+msgid "Parsed links from %s: %i"
+msgstr "Parsed links from %s: %i"
+
+#: module/thread_list.py:138
+msgid "No links in %s"
+msgstr "No links in %s"
+
+#: module/thread_list.py:145
+msgid "Download finished: %s"
+msgstr "Download finished: %s"
+
+#: module/thread_list.py:151
+msgid "Download failed: %s | %s"
+msgstr "Download failed: %s | %s"
+
+#: module/thread_list.py:156
+msgid "Download aborted: %s"
+msgstr "Download aborted: %s"
+
+#: module/thread_list.py:206
+msgid "Starting reconnect"
+msgstr "Starting reconnect"
+
+#: module/thread_list.py:220
+msgid "Reconnected, new IP: %s"
+msgstr "Reconnected, new IP: %s"
+
+#: pyLoadCore.py:111
+msgid "pycrypto to decode container files"
+msgstr "pycrypto to decode container files"
+
+#: pyLoadCore.py:112
+msgid "Python Image Libary (PIL) for captha reading"
+msgstr "Python Image Libary (PIL) for captha reading"
+
+#: pyLoadCore.py:113
+msgid "pycurl for lower memory footprint while downloading"
+msgstr "pycurl for lower memory footprint while downloading"
+
+#: pyLoadCore.py:114
+msgid "Django for webinterface"
+msgstr "Django for webinterface"
+
+#: pyLoadCore.py:115
+msgid "tesseract for captcha reading"
+msgstr "tesseract for captcha reading"
+
+#: pyLoadCore.py:116
+msgid "gocr for captcha reading"
+msgstr "gocr for captcha reading"
+
+#: pyLoadCore.py:118
msgid "folder for logs"
-msgstr ""
+msgstr "folder for logs"
-#: Core.py:60
+#: pyLoadCore.py:119
msgid "folder for downloads"
-msgstr ""
+msgstr "folder for downloads"
-#: Core.py:61
+#: pyLoadCore.py:120
msgid "file for links"
-msgstr ""
+msgstr "file for links"
-#: Core.py:62
+#: pyLoadCore.py:121
msgid "file for failed links"
-msgstr ""
+msgstr "file for failed links"
+
+#: pyLoadCore.py:124
+msgid "OpenSSL for secure connection"
+msgstr "OpenSSL for secure connection"
+
+#: pyLoadCore.py:125
+msgid "ssl certificate"
+msgstr "ssl certificate"
+
+#: pyLoadCore.py:126
+msgid "ssl key"
+msgstr "ssl key"
-#: Core.py:68
+#: pyLoadCore.py:150
msgid "Downloadtime: %s"
-msgstr ""
+msgstr "Downloadtime: %s"
-#: Core.py:96
-msgid " added"
-msgstr ""
+#: pyLoadCore.py:179
+msgid "restarting pyLoad"
+msgstr "restarting pyLoad"
-#: Core.py:97
-msgid "created index of plugins"
-msgstr ""
+#: pyLoadCore.py:183
+msgid "pyLoad quits"
+msgstr "pyLoad quits"
-#: Core.py:119
-msgid "new update %s on pyload.org"
-msgstr ""
+#: pyLoadCore.py:194
+msgid "Secure XMLRPC Server Started"
+msgstr "Secure XMLRPC Server Started"
-#: Core.py:121
-msgid "newst version %s in use:"
-msgstr ""
+#: pyLoadCore.py:197
+msgid "Auth XMLRPC Server Started"
+msgstr "Auth XMLRPC Server Started"
-#: Core.py:123
-msgid "beta version %s in use:"
-msgstr ""
+#~ msgid "Failed starting socket server, CLI and GUI will not be available: %s"
+#~ msgstr ""
-#: Core.py:132
+#: pyLoadCore.py:272
msgid "%s created"
-msgstr ""
+msgstr "%s created"
-#: Core.py:194
-msgid "%i seconds"
-msgstr ""
+#: pyLoadCore.py:275
+msgid "could not find %s: %s"
+msgstr "could not find %s: %s"
-#: Core.py:222
-msgid "Server Mode"
-msgstr ""
+#: pyLoadCore.py:277
+msgid "could not create %s: %s"
+msgstr "could not create %s: %s"
+
+#: pyLoadCore.py:305
+msgid "%s added"
+msgstr "%s added"
+
+#: pyLoadCore.py:306
+msgid "created index of plugins"
+msgstr "created index of plugins"
+
+#: pyLoadCore.py:325
+msgid "shutting down..."
+msgstr "shutting down..."
+
+#: pyLoadCore.py:341
+msgid "No Updates for pyLoad"
+msgstr "No Updates for pyLoad"
+
+#: pyLoadCore.py:344
+msgid "New pyLoad Version %s available"
+msgstr "New pyLoad Version %s available"
+
+#: pyLoadCore.py:369
+msgid "Auto install Failed"
+msgstr "Auto install Failed"
+
+#: pyLoadCore.py:607
+msgid "killed pyLoad from Terminal"
+msgstr "killed pyLoad from Terminal"
+#: pyLoadCore.py:203
+msgid "Failed starting XMLRPC server, CLI and GUI will not be available: %s"
+msgstr "Failed starting XMLRPC server, CLI and GUI will not be available: %s"
diff --git a/locale/fr/fr.po b/locale/fr/fr.po
index fbe233952..1994499df 100644
--- a/locale/fr/fr.po
+++ b/locale/fr/fr.po
@@ -5,64 +5,201 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2009-06-04 15:33+CEST\n"
-"PO-Revision-Date: 2009-06-04 23:09+0100\n"
-"Last-Translator: spoob <spoob@gmx.de>\n"
+"POT-Creation-Date: 2010-02-02 21:54+CET\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
-#: Core.py:59
+
+#: module/download_thread.py:115
+msgid "Hoster unvailable, wait 60 seconds"
+msgstr ""
+
+#: module/download_thread.py:117
+msgid "Error getting error code: %s"
+msgstr ""
+
+#: module/download_thread.py:163
+msgid "Checksum ok ('%s')"
+msgstr ""
+
+#: module/download_thread.py:165
+msgid "Checksum not matched! ('%s')"
+msgstr ""
+
+#: module/download_thread.py:167
+msgid "Can't get checksum for %s"
+msgstr ""
+
+#: module/download_thread.py:169
+msgid "Checksum not implemented for %s"
+msgstr ""
+
+#: module/file_list.py:87
+msgid "Found %s links in linkcollector"
+msgstr ""
+
+#: module/file_list.py:89
+msgid "Found %s unqueued packages"
+msgstr ""
+
+#: module/file_list.py:91
+msgid "Added %s packages to queue"
+msgstr ""
+
+#: module/thread_list.py:88
+msgid "Get links from: %s"
+msgstr ""
+
+#: module/thread_list.py:90
+msgid "Download starts: %s"
+msgstr ""
+
+#: module/thread_list.py:136
+msgid "Parsed links from %s: %i"
+msgstr ""
+
+#: module/thread_list.py:138
+msgid "No links in %s"
+msgstr ""
+
+#: module/thread_list.py:145
+msgid "Download finished: %s"
+msgstr ""
+
+#: module/thread_list.py:151
+msgid "Download failed: %s | %s"
+msgstr ""
+
+#: module/thread_list.py:156
+msgid "Download aborted: %s"
+msgstr ""
+
+#: module/thread_list.py:206
+msgid "Starting reconnect"
+msgstr ""
+
+#: module/thread_list.py:220
+msgid "Reconnected, new IP: %s"
+msgstr ""
+
+#: pyLoadCore.py:111
+msgid "pycrypto to decode container files"
+msgstr ""
+
+#: pyLoadCore.py:112
+msgid "Python Image Libary (PIL) for captha reading"
+msgstr ""
+
+#: pyLoadCore.py:113
+msgid "pycurl for lower memory footprint while downloading"
+msgstr ""
+
+#: pyLoadCore.py:114
+msgid "Django for webinterface"
+msgstr ""
+
+#: pyLoadCore.py:115
+msgid "tesseract for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:116
+msgid "gocr for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:118
msgid "folder for logs"
-msgstr "Dossier pour des logs"
+msgstr ""
-#: Core.py:60
+#: pyLoadCore.py:119
msgid "folder for downloads"
-msgstr "Dossier téléchargement"
+msgstr ""
-#: Core.py:61
+#: pyLoadCore.py:120
msgid "file for links"
-msgstr "Fichier du lien hypertexte"
+msgstr ""
-#: Core.py:68
+#: pyLoadCore.py:121
+msgid "file for failed links"
+msgstr ""
+
+#: pyLoadCore.py:124
+msgid "OpenSSL for secure connection"
+msgstr ""
+
+#: pyLoadCore.py:125
+msgid "ssl certificate"
+msgstr ""
+
+#: pyLoadCore.py:126
+msgid "ssl key"
+msgstr ""
+
+#: pyLoadCore.py:150
msgid "Downloadtime: %s"
-msgstr "Temp du téléchargement: %s"
+msgstr ""
-#: Core.py:96
-msgid " added"
-msgstr "Ajouté."
+#: pyLoadCore.py:179
+msgid "restarting pyLoad"
+msgstr ""
-#: Core.py:97
-msgid "created index of plugins"
-msgstr "Un indice des Plugins a été créé."
+#: pyLoadCore.py:183
+msgid "pyLoad quits"
+msgstr ""
-#: Core.py:119
-msgid "new update %s on pyload.org"
-msgstr "Il y a un mise à jour - pyLoad %s - sur pyload.org"
+#: pyLoadCore.py:194
+msgid "Secure XMLRPC Server Started"
+msgstr ""
-#: Core.py:121
-msgid "newst version %s in use:"
-msgstr "Tu utilises la version %s."
+#: pyLoadCore.py:197
+msgid "Auth XMLRPC Server Started"
+msgstr ""
-#: Core.py:123
-msgid "beta version %s in use:"
-msgstr "Tu utilises pyLoad %s - une version beta."
+#: pyLoadCore.py:203
+msgid "Failed starting XMLRPC server, CLI and GUI will not be available: %s"
+msgstr ""
-#: Core.py:132
+#: pyLoadCore.py:272
msgid "%s created"
-msgstr "%s a été créé."
+msgstr ""
-#: Core.py:134
-msgid "could not create %s"
-msgstr "Il était impossible de créer %s."
+#: pyLoadCore.py:275
+msgid "could not find %s: %s"
+msgstr ""
-#: Core.py:194
-msgid "%i seconds"
-msgstr "%s secondes."
+#: pyLoadCore.py:277
+msgid "could not create %s: %s"
+msgstr ""
+
+#: pyLoadCore.py:305
+msgid "%s added"
+msgstr ""
-#: Core.py:222
-msgid "Server Mode"
-msgstr "Mode de Serveur."
+#: pyLoadCore.py:306
+msgid "created index of plugins"
+msgstr ""
+
+#: pyLoadCore.py:325
+msgid "shutting down..."
+msgstr ""
+
+#: pyLoadCore.py:341
+msgid "No Updates for pyLoad"
+msgstr ""
+
+#: pyLoadCore.py:344
+msgid "New pyLoad Version %s available"
+msgstr ""
+
+#: pyLoadCore.py:369
+msgid "Auto install Failed"
+msgstr ""
+
+#: pyLoadCore.py:607
+msgid "killed pyLoad from Terminal"
+msgstr ""
diff --git a/locale/messages.pot b/locale/messages.pot
index 87e646735..1994499df 100644
--- a/locale/messages.pot
+++ b/locale/messages.pot
@@ -4,65 +4,202 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: 0.1\n"
-"POT-Creation-Date: 2009-06-05 18:26+CEST\n"
-"PO-Revision-Date: 2009-06-05 18:28+0100\n"
-"Last-Translator: spoob <spoob@gmx.de>\n"
-"Language-Team: pyLoad <LL@li.org>\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2010-02-02 21:54+CET\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
-#: Core.py:59
+
+#: module/download_thread.py:115
+msgid "Hoster unvailable, wait 60 seconds"
+msgstr ""
+
+#: module/download_thread.py:117
+msgid "Error getting error code: %s"
+msgstr ""
+
+#: module/download_thread.py:163
+msgid "Checksum ok ('%s')"
+msgstr ""
+
+#: module/download_thread.py:165
+msgid "Checksum not matched! ('%s')"
+msgstr ""
+
+#: module/download_thread.py:167
+msgid "Can't get checksum for %s"
+msgstr ""
+
+#: module/download_thread.py:169
+msgid "Checksum not implemented for %s"
+msgstr ""
+
+#: module/file_list.py:87
+msgid "Found %s links in linkcollector"
+msgstr ""
+
+#: module/file_list.py:89
+msgid "Found %s unqueued packages"
+msgstr ""
+
+#: module/file_list.py:91
+msgid "Added %s packages to queue"
+msgstr ""
+
+#: module/thread_list.py:88
+msgid "Get links from: %s"
+msgstr ""
+
+#: module/thread_list.py:90
+msgid "Download starts: %s"
+msgstr ""
+
+#: module/thread_list.py:136
+msgid "Parsed links from %s: %i"
+msgstr ""
+
+#: module/thread_list.py:138
+msgid "No links in %s"
+msgstr ""
+
+#: module/thread_list.py:145
+msgid "Download finished: %s"
+msgstr ""
+
+#: module/thread_list.py:151
+msgid "Download failed: %s | %s"
+msgstr ""
+
+#: module/thread_list.py:156
+msgid "Download aborted: %s"
+msgstr ""
+
+#: module/thread_list.py:206
+msgid "Starting reconnect"
+msgstr ""
+
+#: module/thread_list.py:220
+msgid "Reconnected, new IP: %s"
+msgstr ""
+
+#: pyLoadCore.py:111
+msgid "pycrypto to decode container files"
+msgstr ""
+
+#: pyLoadCore.py:112
+msgid "Python Image Libary (PIL) for captha reading"
+msgstr ""
+
+#: pyLoadCore.py:113
+msgid "pycurl for lower memory footprint while downloading"
+msgstr ""
+
+#: pyLoadCore.py:114
+msgid "Django for webinterface"
+msgstr ""
+
+#: pyLoadCore.py:115
+msgid "tesseract for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:116
+msgid "gocr for captcha reading"
+msgstr ""
+
+#: pyLoadCore.py:118
msgid "folder for logs"
msgstr ""
-#: Core.py:60
+#: pyLoadCore.py:119
msgid "folder for downloads"
msgstr ""
-#: Core.py:61
+#: pyLoadCore.py:120
msgid "file for links"
msgstr ""
-#: Core.py:62
+#: pyLoadCore.py:121
msgid "file for failed links"
msgstr ""
-#: Core.py:68
+#: pyLoadCore.py:124
+msgid "OpenSSL for secure connection"
+msgstr ""
+
+#: pyLoadCore.py:125
+msgid "ssl certificate"
+msgstr ""
+
+#: pyLoadCore.py:126
+msgid "ssl key"
+msgstr ""
+
+#: pyLoadCore.py:150
msgid "Downloadtime: %s"
msgstr ""
-#: Core.py:96
-msgid " added"
+#: pyLoadCore.py:179
+msgid "restarting pyLoad"
msgstr ""
-#: Core.py:97
-msgid "created index of plugins"
+#: pyLoadCore.py:183
+msgid "pyLoad quits"
msgstr ""
-#: Core.py:119
-msgid "new update %s on pyload.org"
+#: pyLoadCore.py:194
+msgid "Secure XMLRPC Server Started"
msgstr ""
-#: Core.py:121
-msgid "newst version %s in use:"
+#: pyLoadCore.py:197
+msgid "Auth XMLRPC Server Started"
msgstr ""
-#: Core.py:123
-msgid "beta version %s in use:"
+#: pyLoadCore.py:203
+msgid "Failed starting XMLRPC server, CLI and GUI will not be available: %s"
msgstr ""
-#: Core.py:132
+#: pyLoadCore.py:272
msgid "%s created"
msgstr ""
-#: Core.py:194
-msgid "%i seconds"
+#: pyLoadCore.py:275
+msgid "could not find %s: %s"
+msgstr ""
+
+#: pyLoadCore.py:277
+msgid "could not create %s: %s"
+msgstr ""
+
+#: pyLoadCore.py:305
+msgid "%s added"
+msgstr ""
+
+#: pyLoadCore.py:306
+msgid "created index of plugins"
+msgstr ""
+
+#: pyLoadCore.py:325
+msgid "shutting down..."
+msgstr ""
+
+#: pyLoadCore.py:341
+msgid "No Updates for pyLoad"
+msgstr ""
+
+#: pyLoadCore.py:344
+msgid "New pyLoad Version %s available"
+msgstr ""
+
+#: pyLoadCore.py:369
+msgid "Auto install Failed"
msgstr ""
-#: Core.py:222
-msgid "Server Mode"
+#: pyLoadCore.py:607
+msgid "killed pyLoad from Terminal"
msgstr ""
diff --git a/module/download_thread.py b/module/download_thread.py
index 65c7e1e23..7c899b185 100644
--- a/module/download_thread.py
+++ b/module/download_thread.py
@@ -1,22 +1,26 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-#
-#Copyright (C) 2009 sp00b, sebnapi
-#
-#This program is free software; you can redistribute it and/or modify
-#it under the terms of the GNU General Public License as published by
-#the Free Software Foundation; either version 3 of the License,
-#or (at your option) any later version.
-#
-#This program is distributed in the hope that it will be useful,
-#but WITHOUT ANY WARRANTY; without even the implied warranty of
-#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#See the GNU General Public License for more details.
-#
-#You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-###
+
+"""
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License,
+ or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, see <http://www.gnu.org/licenses/>.
+
+ @author: mkaay
+ @author: spoob
+ @author: sebnapi
+ @version: v0.3
+"""
+
import threading
import traceback
from os.path import join
@@ -108,9 +112,9 @@ class Download_Thread(threading.Thread):
code, msg = e
if code == 7:
sleep(60)
- self.parent.parent.logger.info("Hoster unvailable, wait 60 seconds")
+ self.parent.parent.logger.info(_("Hoster unvailable, wait 60 seconds"))
except Exception, f:
- self.parent.parent.logger.debug("Error getting error code: "+ str(f))
+ self.parent.parent.logger.debug(_("Error getting error code: %s") % f)
if self.parent.parent.config['general']['debug_mode']:
traceback.print_exc()
self.loadedPyFile.status.type = "failed"
@@ -156,13 +160,13 @@ class Download_Thread(threading.Thread):
20 - unknown error
"""
if code == 0:
- self.parent.parent.logger.info("Checksum ok ('%s')" % status.filename)
+ self.parent.parent.logger.info(_("Checksum ok ('%s')") % status.filename)
elif code == 1:
- self.parent.parent.logger.info("Checksum not matched! ('%s')" % status.filename)
+ self.parent.parent.logger.info(_("Checksum not matched! ('%s')") % status.filename)
elif code == 5:
- self.parent.parent.logger.debug("Can't get checksum for %s" % status.filename)
+ self.parent.parent.logger.debug(_("Can't get checksum for %s") % status.filename)
elif code == 10:
- self.parent.parent.logger.debug("Checksum not implemented for %s" % status.filename)
+ self.parent.parent.logger.debug(_("Checksum not implemented for %s") % status.filename)
if not check:
raise Checksum(code, location)
diff --git a/module/file_list.py b/module/file_list.py
index b9f70bd27..d251868b9 100644
--- a/module/file_list.py
+++ b/module/file_list.py
@@ -84,11 +84,11 @@ class File_List(object):
self.lock.release()
if len(self.data["collector"]) > 0:
- self.core.logger.info("Found %s links in linkcollector" % len(self.data["collector"]))
+ self.core.logger.info(_("Found %s links in linkcollector") % len(self.data["collector"]))
if len(self.data["packages"]) > 0:
- self.core.logger.info("Found %s unqueued packages" % len(self.data["packages"]))
+ self.core.logger.info(_("Found %s unqueued packages") % len(self.data["packages"]))
if len(self.data["queue"]) > 0:
- self.core.logger.info("Added %s packages to queue" % len(self.data["queue"]))
+ self.core.logger.info(_("Added %s packages to queue") % len(self.data["queue"]))
def save(self):
self.lock.acquire()
@@ -298,8 +298,6 @@ class File_List(object):
pyfile.plugin.req.abort = True
sleep(0.1)
del packager.file_list.data[key][n]
- if key == "packages":
- key = "collector"
packager.file_list.core.pullManager.addEvent(RemoveEvent("pack", id, key))
finally:
packager.file_list.lock.release()
diff --git a/module/gui/Collector.py b/module/gui/Collector.py
index c0754aa42..ebdbd372d 100644
--- a/module/gui/Collector.py
+++ b/module/gui/Collector.py
@@ -66,12 +66,12 @@ class PackageCollector(QObject):
for pack in ItemIterator(self.rootItem):
for k, child in enumerate(pack.getChildren()):
if child.getFileData()["id"] == event[3]:
- pack.takeChild(k)
+ pack.removeChild(child)
break
else:
for k, pack in enumerate(ItemIterator(self.rootItem)):
if pack.getPackData()["id"] == event[3]:
- self.rootItem.takeChild(k)
+ self.rootItem.removeChild(pack)
break
def insertEvent(self, event):
@@ -99,6 +99,8 @@ class PackageCollector(QObject):
def updateEvent(self, event):
if event[2] == "file":
info = self.connector.getLinkInfo(event[3])
+ if not info:
+ return
for pack in ItemIterator(self.rootItem):
if pack.getPackData()["id"] == info["package"]:
child = pack.getChild(event[3])
@@ -145,7 +147,7 @@ class PackageCollector(QObject):
def clearAll(self):
for k, pack in enumerate(ItemIterator(self.rootItem)):
if not pack.getPackData()["id"] == "fixed":
- self.rootItem.takeChild(k)
+ self.rootItem.removeChild(pack)
class PackageCollectorPack(QTreeWidgetItem):
def __init__(self, collector):
@@ -238,7 +240,7 @@ class LinkCollector(QObject):
if event[2] == "file":
for k, file in enumerate(ItemIterator(self.rootItem)):
if file.getFileData()["id"] == event[3]:
- self.rootItem.takeChild(k)
+ self.rootItem.removeChild(file)
break
def insertEvent(self, event):
@@ -251,6 +253,8 @@ class LinkCollector(QObject):
def updateEvent(self, event):
if event[2] == "file":
data = self.connector.getLinkInfo(event[3])
+ if not data:
+ return
file = getFile(event[3])
file.setFileData(data)
self.addFile(event[3], file)
@@ -281,7 +285,8 @@ class LinkCollector(QObject):
return None
def clearAll(self):
- self.rootItem.takeChildren()
+ for k, file in enumerate(ItemIterator(self.rootItem)):
+ self.rootItem.removeChild(file)
class LinkCollectorFile(QTreeWidgetItem):
def __init__(self, collector):
diff --git a/module/gui/Queue.py b/module/gui/Queue.py
index 9659137ec..bd45e27dc 100644
--- a/module/gui/Queue.py
+++ b/module/gui/Queue.py
@@ -89,7 +89,6 @@ class Queue(QObject):
self.addPack(pack.getPackData()["id"], pack)
def fullReload(self):
- locker = QMutexLocker(self.mutex)
self.clearAll()
packs = self.connector.getPackageQueue()
for data in packs:
@@ -106,6 +105,7 @@ class Queue(QObject):
self.addPack(data["id"], pack)
def addEvent(self, event):
+ locker = QMutexLocker(self.mutex)
if event[0] == "reload":
self.fullReload()
elif event[0] == "remove":
@@ -120,12 +120,12 @@ class Queue(QObject):
for pack in ItemIterator(self.rootItem):
for k, child in enumerate(pack.getChildren()):
if child.getFileData()["id"] == event[3]:
- pack.takeChild(k)
+ pack.removeChild(child)
break
else:
for k, pack in enumerate(ItemIterator(self.rootItem)):
if pack.getPackData()["id"] == event[3]:
- self.rootItem.takeChild(k)
+ self.rootItem.removeChild(pack)
break
def insertEvent(self, event):
@@ -155,6 +155,8 @@ class Queue(QObject):
def updateEvent(self, event):
if event[2] == "file":
info = self.connector.getLinkInfo(event[3])
+ if not info:
+ return
for pack in ItemIterator(self.rootItem):
if pack.getPackData()["id"] == info["package"]:
child = pack.getChild(event[3])
@@ -219,7 +221,8 @@ class Queue(QObject):
return None
def clearAll(self):
- self.rootItem.takeChildren()
+ for pack in ItemIterator(self.rootItem):
+ self.rootItem.removeChild(pack)
def getWaitingProgress(self, q):
locker = QMutexLocker(self.mutex)
diff --git a/module/gui/connector.py b/module/gui/connector.py
index 3146ecf5b..b6c383956 100644
--- a/module/gui/connector.py
+++ b/module/gui/connector.py
@@ -131,7 +131,8 @@ class connector(QThread):
info["downloading"] = None
return info
except Exception, e:
- self.emit(SIGNAL("proxy_error"), "getLinkInfo", e)
+ #self.emit(SIGNAL("proxy_error"), "getLinkInfo", e)
+ return None
finally:
self.mutex.unlock()
diff --git a/module/plugins/decrypter/SerienjunkiesOrg.py b/module/plugins/decrypter/SerienjunkiesOrg.py
index af7dc8169..d8396bd0b 100644
--- a/module/plugins/decrypter/SerienjunkiesOrg.py
+++ b/module/plugins/decrypter/SerienjunkiesOrg.py
@@ -5,6 +5,7 @@ import re
from module.Plugin import Plugin
from module.BeautifulSoup import BeautifulSoup
from module.unescape import unescape
+from module.download_thread import CaptchaError
class SerienjunkiesOrg(Plugin):
def __init__(self, parent):
diff --git a/module/thread_list.py b/module/thread_list.py
index 1a66bf6f5..a50d73aaf 100644
--- a/module/thread_list.py
+++ b/module/thread_list.py
@@ -1,22 +1,27 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-#
-#Copyright (C) 2009 sp00b, sebnapi, RaNaN
-#
-#This program is free software; you can redistribute it and/or modify
-#it under the terms of the GNU General Public License as published by
-#the Free Software Foundation; either version 3 of the License,
-#or (at your option) any later version.
-#
-#This program is distributed in the hope that it will be useful,
-#but WITHOUT ANY WARRANTY; without even the implied warranty of
-#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#See the GNU General Public License for more details.
-#
-#You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-###
+
+"""
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License,
+ or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, see <http://www.gnu.org/licenses/>.
+
+ @author: mkaay
+ @author: spoob
+ @author: sebnapi
+ @author: RaNaN
+ @version: v0.3
+"""
+
from __future__ import with_statement
from os.path import exists
import re
@@ -80,9 +85,9 @@ class Thread_List(object):
self.occ_plugins.append(pyfile.modul.__name__)
pyfile.active = True
if pyfile.plugin.props['type'] == "container":
- self.parent.logger.info('Get links from: ' + pyfile.url)
+ self.parent.logger.info(_("Get links from: %s") % pyfile.url)
else:
- self.parent.logger.info('Download starts: ' + pyfile.url)
+ self.parent.logger.info(_("Download starts: %s") % pyfile.url)
self.lock.release()
return pyfile
@@ -128,27 +133,27 @@ class Thread_List(object):
self.list.packager.removeFileFromPackage(pyfile.id, pyfile.package.data["id"])
if newLinks:
- self.parent.logger.info("Parsed links from %s: %i" % (pyfile.status.filename, newLinks))
+ self.parent.logger.info(_("Parsed links from %s: %i") % (pyfile.status.filename, newLinks))
else:
- self.parent.logger.info("No links in %s" % pyfile.status.filename)
+ self.parent.logger.info(_("No links in %s") % pyfile.status.filename)
#~ self.list.packager.removeFileFromPackage(pyfile.id, pyfile.package.id)
#~ for link in pyfile.plugin.links:
#~ id = self.list.collector.addLink(link)
#~ pyfile.packager.pullOutPackage(pyfile.package.id)
#~ pyfile.packager.addFileToPackage(pyfile.package.id, pyfile.collector.popFile(id))
else:
- self.parent.logger.info("Download finished: %s" % pyfile.url)
+ self.parent.logger.info(_("Download finished: %s") % pyfile.url)
elif pyfile.status.type == "reconnected":
pyfile.plugin.req.init_curl()
elif pyfile.status.type == "failed":
- self.parent.logger.warning("Download failed: " + pyfile.url + " | " + pyfile.status.error)
+ self.parent.logger.warning(_("Download failed: %s | %s") % (pyfile.url, pyfile.status.error))
with open(self.parent.config['general']['failed_file'], 'a') as f:
f.write(pyfile.url + "\n")
elif pyfile.status.type == "aborted":
- self.parent.logger.info("Download aborted: " + pyfile.url)
+ self.parent.logger.info(_("Download aborted: %s") % pyfile.url)
self.list.save()
@@ -198,7 +203,7 @@ class Thread_List(object):
return False
def reconnect(self):
- self.parent.logger.info("Start reconnect")
+ self.parent.logger.info(_("Starting reconnect"))
ip = re.match(".*Current IP Address: (.*)</body>.*", urllib2.urlopen("http://checkip.dyndns.org/").read()).group(1)
self.parent.hookManager.beforeReconnecting(ip)
reconn = subprocess.Popen(self.parent.config['reconnect']['method'])#, stdout=subprocess.PIPE)
@@ -212,7 +217,7 @@ class Thread_List(object):
ip = ""
time.sleep(1)
self.parent.hookManager.afterReconnecting(ip)
- self.parent.logger.info("Reconnected, new IP: " + ip)
+ self.parent.logger.info(_("Reconnected, new IP: %s") % ip)
def stopAllDownloads(self):
self.pause = True
diff --git a/pyLoadCore.py b/pyLoadCore.py
index dbc9dc1cd..9df831aed 100755
--- a/pyLoadCore.py
+++ b/pyLoadCore.py
@@ -108,12 +108,12 @@ class Core(object):
translation = gettext.translation("pyLoad", join(self.path, "locale"), languages=[self.config['general']['language']])
translation.install(unicode=True)
- self.check_install("Crypto", "pycrypto to decode container files")
- self.check_install("Image", "Python Image Libary (PIL) for captha reading")
- self.check_install("pycurl", "pycurl for lower memory footprint while downloading")
- self.check_install("django", "Django for webinterface")
- self.check_install("tesseract", "tesseract for captcha reading", False)
- self.check_install("gocr", "gocr for captcha reading", False)
+ self.check_install("Crypto", _("pycrypto to decode container files"))
+ self.check_install("Image", _("Python Image Libary (PIL) for captha reading"))
+ self.check_install("pycurl", _("pycurl for lower memory footprint while downloading"))
+ self.check_install("django", _("Django for webinterface"))
+ self.check_install("tesseract", _("tesseract for captcha reading"), False)
+ self.check_install("gocr", _("gocr for captcha reading"), False)
self.check_file(self.config['log']['log_folder'], _("folder for logs"), True)
self.check_file(self.config['general']['download_folder'], _("folder for downloads"), True)
@@ -121,7 +121,7 @@ class Core(object):
self.check_file(self.config['general']['failed_file'], _("file for failed links"))
if self.config['ssl']['activated']:
- self.check_install("OpenSSL", "OpenSSL for secure connection", True)
+ self.check_install("OpenSSL", _("OpenSSL for secure connection"), True)
self.check_file(self.config['ssl']['cert'], _("ssl certificate"), False, True)
self.check_file(self.config['ssl']['key'], _("ssl key"), False, True)
@@ -176,11 +176,11 @@ class Core(object):
while True:
sleep(2)
if self.do_restart:
- self.logger.info("restarting pyLoad")
+ self.logger.info(_("restarting pyLoad"))
self.restart()
if self.do_kill:
self.shutdown()
- self.logger.info("pyLoad quits")
+ self.logger.info(_("pyLoad quits"))
exit()
if self.last_update_check + self.update_check_interval <= time.time():
self.update_available = self.check_update()
@@ -191,16 +191,16 @@ class Core(object):
usermap = {self.config['remote']['username']: self.config['remote']['password']}
if self.config['ssl']['activated']:
self.server = Server.SecureXMLRPCServer(server_addr, self.config['ssl']['cert'], self.config['ssl']['key'], usermap)
- self.logger.info("Secure XMLRPC Server Started")
+ self.logger.info(_("Secure XMLRPC Server Started"))
else:
self.server = Server.AuthXMLRPCServer(server_addr, usermap)
- self.logger.info("Auth XMLRPC Server Started")
+ self.logger.info(_("Auth XMLRPC Server Started"))
self.server.register_instance(self.server_methods)
thread.start_new_thread(self.server.serve_forever, ())
except Exception, e:
- self.logger.error("Failed starting socket server, CLI and GUI will not be available: %s" % str(e))
+ self.logger.error(_("Failed starting XMLRPC server CLI and GUI will not be available: %s") % str(e))
if self.config['general']['debug_mode']:
import traceback
traceback.print_exc()
@@ -302,7 +302,7 @@ class Core(object):
break
if plugin_pattern != "":
self.plugins_avaible[plugin_file] = plugin_pattern
- self.logger.debug(plugin_file + _(" added"))
+ self.logger.debug(_("%s added") % plugin_file)
self.logger.info(_("created index of plugins"))
def compare_time(self, start, end):
@@ -322,7 +322,7 @@ class Core(object):
return self.downloadSpeedLimit
def shutdown(self):
- self.logger.info("shutting down...")
+ self.logger.info(_("shutting down..."))
if self.config['webinterface']['activated']:
self.webserver.quit()
self.webserver.join()
@@ -338,10 +338,10 @@ class Core(object):
if self.config['updates']['search_updates']:
version_check = Request().load("http://get.pyload.org/check/%s/" % (CURRENT_VERSION, ))
if version_check == "":
- self.logger.info("No Updates for pyLoad")
+ self.logger.info(_("No Updates for pyLoad"))
return False
else:
- self.logger.info("New pyLoad Version %s available" % version_check)
+ self.logger.info(_("New pyLoad Version %s available") % version_check)
return True
else:
return False
@@ -366,7 +366,7 @@ class Core(object):
__import__("module.Unzip", globals(), locals(), "Unzip", -1).Unzip().extract(tmp_zip_name, "Test/")
return True
except:
- self.logger.info("Auto install Failed")
+ self.logger.info(_("Auto install Failed"))
return False
else:
return False
@@ -604,5 +604,5 @@ if __name__ == "__main__":
pyload_core.start()
except KeyboardInterrupt:
pyload_core.shutdown()
- pyload_core.logger.info("killed pyLoad from Terminal")
+ pyload_core.logger.info(_("killed pyLoad from Terminal"))
exit()