Mercurial > p > roundup > code
changeset 3986:68accc7d4b69
indexerror when there are no messages to the issue
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Thu, 07 Aug 2008 06:31:16 +0000 |
| parents | f7f3068b32a1 |
| children | c4f7b3817d3d |
| files | CHANGES.txt locale/de.po roundup/roundupdb.py |
| diffstat | 3 files changed, 913 insertions(+), 156 deletions(-) [+] |
line wrap: on
line diff
--- a/CHANGES.txt Thu Aug 07 06:21:07 2008 +0000 +++ b/CHANGES.txt Thu Aug 07 06:31:16 2008 +0000 @@ -15,6 +15,7 @@ - Better German translation for retiring users (sf #1998701) - More improvements to German translation (sf #1919446) - Add filter() to XML-RPC interface (sf patch #1966456) +- Fix indexerror when there are no messages to an issue (sf patch #1894249) 2008-03-01 1.4.4
--- a/locale/de.po Thu Aug 07 06:21:07 2008 +0000 +++ b/locale/de.po Thu Aug 07 06:31:16 2008 +0000 @@ -1,9 +1,9 @@ # German message file for Roundup Issue Tracker -# Tobias Herp <tobias.herp@gmx.de>, 2006 # Initial work by Stefan Niederhauser <stefan.niederhauser@unibas.ch>, 2004. # updated by Toni Mueller <toni@debian.org> +# updated by Tobias Herp <tobias.herp@gmx.de> # -# $Id: de.po,v 1.7 2008-08-07 06:17:23 richard Exp $ +# $Id: de.po,v 1.8 2008-08-07 06:31:16 richard Exp $ # # roundup.pot revision 1.8 # @@ -27,6 +27,7 @@ msgid "no such class \"%(classname)s\"" msgstr "Die Klasse \"%(classname)s\" existiert nicht" +#: ../roundup/admin.py:96 ../roundup/admin.py:100 ../roundup/admin.py:96:100 # ../roundup/admin.py:93 :97 #: ../roundup/admin.py:94 ../roundup/admin.py:98 #, python-format @@ -34,6 +35,7 @@ msgstr "" "Der Parameter \"%(arg)s\" entspricht nicht dem Format Eigenschaft=Wert" +#: ../roundup/admin.py:113 #: ../roundup/admin.py:111 #, python-format msgid "" @@ -43,6 +45,7 @@ "Problem: %(message)s\n" "\n" +#: ../roundup/admin.py:114 #: ../roundup/admin.py:113 #, python-format msgid "" @@ -91,10 +94,12 @@ " roundup-admin help <Befehl> -- Hilfe zu einem Befehl anzeigen\n" " roundup-admin help all -- sämtliche Hilfen anzeigen\n" +#: ../roundup/admin.py:141 #: ../roundup/admin.py:137 msgid "Commands:" msgstr "Befehle:" +#: ../roundup/admin.py:148 #: ../roundup/admin.py:144 msgid "" "Commands may be abbreviated as long as the abbreviation\n" @@ -103,6 +108,7 @@ "Befehle können abgekürzt werden, solange sie eindeutig bleiben, \n" "z.B. l == li == lis == list." +#: ../roundup/admin.py:178 #: ../roundup/admin.py:174 msgid "" "\n" @@ -138,8 +144,7 @@ " Roch\\'e Compaan (2 tokens: Roch'e Compaan)\n" " address=\"1 2 3\" (1 token: address=1 2 3)\n" " \\\\ (1 token: \\)\n" -" \\n\\r\\t (1 token: a newline, carriage-return and " -"tab)\n" +" \\n\\r\\t (1 token: a newline, carriage-return and tab)\n" "\n" "When multiple nodes are specified to the roundup get or roundup set\n" "commands, the specified properties are retrieved or set on all the listed\n" @@ -228,11 +233,13 @@ "\n" "Befehlshilfe:\n" +#: ../roundup/admin.py:241 #: ../roundup/admin.py:237 #, python-format msgid "%s:" msgstr "%s:" +#: ../roundup/admin.py:246 #: ../roundup/admin.py:242 msgid "" "Usage: help topic\n" @@ -253,33 +260,37 @@ " all -- sämtlichen Hilfetext anzeigen\n" " " +#: ../roundup/admin.py:269 #: ../roundup/admin.py:265 #, python-format msgid "Sorry, no help for \"%(topic)s\"" msgstr "Zum Thema \"%(topic)s\" existiert leider kein Hilfetext" +#: ../roundup/admin.py:346 ../roundup/admin.py:402 ../roundup/admin.py:346:402 # ../roundup/admin.py:336 :382 #: ../roundup/admin.py:337 ../roundup/admin.py:386 msgid "Templates:" msgstr "Vorlagen:" +#: ../roundup/admin.py:349 ../roundup/admin.py:413 ../roundup/admin.py:349:413 # ../roundup/admin.py:339 :393 #: ../roundup/admin.py:340 ../roundup/admin.py:397 msgid "Back ends:" msgstr "Datenbanken:" +#: ../roundup/admin.py:352 #: ../roundup/admin.py:343 msgid "" -"Usage: install [template [backend [admin password [key=val[,key=val]]]]]\n" +"Usage: install [template [backend [key=val[,key=val]]]]\n" " Install a new Roundup tracker.\n" "\n" " The command will prompt for the tracker home directory\n" " (if not supplied through TRACKER_HOME or the -i option).\n" -" The template, backend and admin password may be specified\n" -" on the command-line as arguments, in that order.\n" +" The template and backend may be specified on the command-line\n" +" as arguments, in that order.\n" "\n" -" The last command line argument allows to pass initial values\n" -" for config options. For example, passing\n" +" Command line arguments following the backend allows you to\n" +" pass initial values for config options. For example, passing\n" " \"web_http_auth=no,rdbms_user=dinsdale\" will override defaults\n" " for options http_auth in section [web] and user in section [rdbms].\n" " Please be careful to not use spaces in this argument! (Enclose\n" @@ -293,7 +304,7 @@ " See also initopts help.\n" " " msgstr "" -"Verwendung: install [Vorlage [Datenbanktyp [Administratorpasswort]]]\n" +"Verwendung: install [Vorlage [Datenbanktyp [Admin-Paßwort [opt=wert[,...]]]]]\n" " Installiert einen neuen Roundup-Tracker.\n" "\n" " Sie werden aufgefordert, ein Tracker-Verzeichnis zu wählen\n" @@ -319,6 +330,13 @@ " Siehe auch unter dem Hilfethema \"initopts\".\n" " " +#: ../roundup/admin.py:375 ../roundup/admin.py:472 ../roundup/admin.py:533 +#: ../roundup/admin.py:612 ../roundup/admin.py:663 ../roundup/admin.py:721 +#: ../roundup/admin.py:742 ../roundup/admin.py:770 ../roundup/admin.py:842 +#: ../roundup/admin.py:909 ../roundup/admin.py:980 ../roundup/admin.py:1030 +#: ../roundup/admin.py:1053 ../roundup/admin.py:1084 ../roundup/admin.py:1180 +#: ../roundup/admin.py:1253 ../roundup/admin.py:375:472 :1030:1053 :1084:1180 +#: :1253 :533:612 :663:721 :742:770 :842:909 :980 # ../roundup/admin.py:358 :483 :562 :612 :682 :703 :731 :802 :869 :940 :988 # :1010 :1037 :1098 :1156 #: ../roundup/admin.py:359 ../roundup/admin.py:441 ../roundup/admin.py:502 @@ -330,11 +348,13 @@ msgid "Not enough arguments supplied" msgstr "Zu wenig Parameter übergeben" +#: ../roundup/admin.py:381 #: ../roundup/admin.py:365 #, python-format msgid "Instance home parent directory \"%(parent)s\" does not exist" msgstr "Das angegebene Tracker-Verzeichnis \"%(parent)s\" existiert nicht" +#: ../roundup/admin.py:389 #: ../roundup/admin.py:373 #, python-format msgid "" @@ -346,20 +366,24 @@ "installiert zu sein! Eine erneute Installation löscht sämtliche Daten!\n" "Wirklich löschen? Y/N: " +#: ../roundup/admin.py:404 #: ../roundup/admin.py:388 msgid "Select template [classic]: " msgstr "Template auswählen [classic]:" +#: ../roundup/admin.py:415 #: ../roundup/admin.py:399 msgid "Select backend [anydbm]: " msgstr "Datenbank auswählen [anydbm]" +#: ../roundup/admin.py:425 #: ../roundup/admin.py:419 #, python-format msgid "Error in configuration settings: \"%s\"" msgstr "" "Fehler in der Konfiguration: \"%s\"" +#: ../roundup/admin.py:434 #: ../roundup/admin.py:408 #, python-format msgid "" @@ -371,10 +395,12 @@ " Sie sollten nun die Konfigurationsdatei des Trackers bearbeiten:\n" " %(config_file)s" +#: ../roundup/admin.py:444 #: ../roundup/admin.py:417 msgid " ... at a minimum, you must set following options:" msgstr " ... passen sie zumindest folgende Optionen an:" +#: ../roundup/admin.py:449 #: ../roundup/admin.py:422 #, python-format msgid "" @@ -400,6 +426,7 @@ " Anschließend MÜSSEN Sie \"roundup-admin initialise\" ausführen.\n" "---------------------------------------------------------------------------\n" +#: ../roundup/admin.py:467 #: ../roundup/admin.py:436 msgid "" "Usage: genconfig <filename>\n" @@ -413,6 +440,7 @@ " " #. password +#: ../roundup/admin.py:477 #: ../roundup/admin.py:446 msgid "" "Usage: initialise [adminpw]\n" @@ -423,7 +451,7 @@ " Execute the tracker's initialisation function dbinit.init()\n" " " msgstr "" -"Verwendung: initialise [Administrationspasswort]\n" +"Verwendung: initialise [Admin-Paßwort]\n" " Initialisieren eines neuen Roundup-Trackers.\n" "\n" " Der Administrator-Benutzer wird eingerichtet.\n" @@ -457,6 +485,7 @@ "Eine erneute Initialisierung löscht sämtliche Daten!\n" "Wirklich löschen? Y/N: " +#: ../roundup/admin.py:526 #: ../roundup/admin.py:495 msgid "" "Usage: get property designator[,designator]*\n" @@ -473,6 +502,7 @@ " Eigenschaft der gewünschten Einträge an.\n" " " +#: ../roundup/admin.py:566 ../roundup/admin.py:581 ../roundup/admin.py:566:581 # ../roundup/admin.py:516 :531 #: ../roundup/admin.py:535 ../roundup/admin.py:550 #, python-format @@ -481,6 +511,8 @@ "Die Eigenschaft %s ist kein Multilink oder Link; die Option -d wird " "deshalb hier nicht ausgewertet." +#: ../roundup/admin.py:589 ../roundup/admin.py:991 ../roundup/admin.py:1042 +#: ../roundup/admin.py:1065 ../roundup/admin.py:589:991 :1042:1065 # ../roundup/admin.py:539 :951 :1000 :1022 #: ../roundup/admin.py:558 ../roundup/admin.py:956 ../roundup/admin.py:1005 #: ../roundup/admin.py:1027 @@ -489,6 +521,7 @@ msgstr "" "Es existiert kein Eintrag der Klasse %(classname)s mit der ID \"%(nodeid)s\"" +#: ../roundup/admin.py:591 #: ../roundup/admin.py:560 #, python-format msgid "no such %(classname)s property \"%(propname)s\"" @@ -496,6 +529,7 @@ "Die Eigenschaft \"%(propname)s\" ist für die Klasse \"%" "(classname)s\" nicht definiert" +#: ../roundup/admin.py:600 #: ../roundup/admin.py:569 msgid "" "Usage: set items property=value property=value ...\n" @@ -505,8 +539,7 @@ " list of item designators (ie \"designator[,designator,...]\").\n" "\n" " This command sets the properties to the values for all designators\n" -" given. If the value is missing (ie. \"property=\") then the " -"property\n" +" given. If the value is missing (ie. \"property=\") then the property\n" " is un-set. If the property is a multilink, you specify the linked\n" " ids for the multilink as comma-separated numbers (ie \"1,2,3\").\n" " " @@ -524,6 +557,7 @@ " Einträge als mit Kommata getrennte ID-Nummern angegeben (\"1,2,3\").\n" " " +#: ../roundup/admin.py:655 #: ../roundup/admin.py:623 msgid "" "Usage: find classname propname=value ...\n" @@ -542,6 +576,8 @@ " als ID oder als Bezeichner (\"msg23\") spezifiziert werden.\n" " " +#: ../roundup/admin.py:708 ../roundup/admin.py:862 ../roundup/admin.py:874 +#: ../roundup/admin.py:928 ../roundup/admin.py:708:862 :874:928 # ../roundup/admin.py:631 :669 :822 :834 :888 #: ../roundup/admin.py:674 ../roundup/admin.py:827 ../roundup/admin.py:839 #: ../roundup/admin.py:893 @@ -549,6 +585,7 @@ msgid "%(classname)s has no property \"%(propname)s\"" msgstr "Die Klasse \"%(classname)s\" hat keine Eigenschaft \"%(propname)s\"" +#: ../roundup/admin.py:715 #: ../roundup/admin.py:681 msgid "" "Usage: specification classname\n" @@ -563,16 +600,19 @@ " Zeigt sämtliche Eigenschaften der Klasse auf.\n" " " +#: ../roundup/admin.py:730 #: ../roundup/admin.py:696 #, python-format msgid "%(key)s: %(value)s (key property)" msgstr "%(key)s: %(value)s (Schlüsseleigenschaft)" +#: ../roundup/admin.py:732 ../roundup/admin.py:759 ../roundup/admin.py:732:759 #: ../roundup/admin.py:698 #, python-format msgid "%(key)s: %(value)s" msgstr "%(key)s: %(value)s" +#: ../roundup/admin.py:735 #: ../roundup/admin.py:701 msgid "" "Usage: display designator[,designator]*\n" @@ -594,6 +634,7 @@ msgid "%(key)s: %(value)r" msgstr "%(key)s: %(value)r" +#: ../roundup/admin.py:762 #: ../roundup/admin.py:728 msgid "" "Usage: create classname property=value ...\n" @@ -667,15 +708,18 @@ "aufgelistet.\n" " " +#: ../roundup/admin.py:840 #: ../roundup/admin.py:805 msgid "Too many arguments supplied" msgstr "Sie haben zuviele Argumente übergeben" +#: ../roundup/admin.py:876 #: ../roundup/admin.py:841 #, python-format msgid "%(nodeid)4s: %(value)s" msgstr "%(nodeid)4s: %(value)s" +#: ../roundup/admin.py:880 #: ../roundup/admin.py:845 msgid "" "Usage: table classname [property[,property]*]\n" @@ -737,18 +781,19 @@ "\n" " " +#: ../roundup/admin.py:924 #: ../roundup/admin.py:889 #, python-format msgid "\"%(spec)s\" not name:width" msgstr "\"%(spec)s\" entspricht nicht dem Format Eigenschaft:Breite" +#: ../roundup/admin.py:974 #: ../roundup/admin.py:939 msgid "" "Usage: history designator\n" " Show the history entries of a designator.\n" "\n" -" Lists the journal entries for the node identified by the " -"designator.\n" +" Lists the journal entries for the node identified by the designator.\n" " " msgstr "" "Verwendung: history Bezeichner\n" @@ -758,6 +803,7 @@ " Bezeichner auf.\n" " " +#: ../roundup/admin.py:995 #: ../roundup/admin.py:960 msgid "" "Usage: commit\n" @@ -782,6 +828,7 @@ " geschrieben.\n" " " +#: ../roundup/admin.py:1010 #: ../roundup/admin.py:974 msgid "" "Usage: rollback\n" @@ -801,6 +848,7 @@ " verworfen.\n" " " +#: ../roundup/admin.py:1023 #: ../roundup/admin.py:986 msgid "" "Usage: retire designator[,designator]*\n" @@ -818,6 +866,7 @@ " kann zudem wiederverwendet werden.\n" " " +#: ../roundup/admin.py:1047 #: ../roundup/admin.py:1009 msgid "" "Usage: restore designator[,designator]*\n" @@ -834,12 +883,16 @@ " " #. grab the directory to export to +#: ../roundup/admin.py:1070 #: ../roundup/admin.py:1031 msgid "" -"Usage: export [class[,class]] export_dir\n" +"Usage: export [[-]class[,class]] export_dir\n" " Export the database to colon-separated-value files.\n" +" To exclude the files (e.g. for the msg or file class),\n" +" use the exporttables command.\n" "\n" -" Optionally limit the export to just the names classes.\n" +" Optionally limit the export to just the named classes\n" +" or exclude the named classes, if the 1st argument starts with '-'.\n" "\n" " This action exports the current data from the database into\n" " colon-separated-value files that are placed in the nominated\n" @@ -848,13 +901,46 @@ msgstr "" "Verwendung: export [Klasse[,Klasse]] Exportverzeichnis\n" " Exportiert die Datenbank in ein Verzeichnis mit CSV-Dateien.\n" +" Um die im Dateisystem abgelegten Daten fortzulassen (z. B.\n" +" die Klassen msg und file), verwenden Sie \"exporttables\".\n" "\n" -" Optional kann der Export auf gewisse Klassen beschränkt werden.\n" +" Wenn Sie Klassennamen übergeben, wird der Export auf diese beschränkt\n" +" bzw. (wenn der ersten Klasse ein '-' vorgestellt wird) diese fortgelassen.\n" "\n" " Die Daten werden als kommagetrennte Dateien in das angegebene\n" " Exportverzeichnis geschrieben.\n" " " +#: ../roundup/admin.py:1145 +#: ../roundup/admin.py:1145 +msgid "" +"Usage: exporttables [[-]class[,class]] export_dir\n" +" Export the database to colon-separated-value files, excluding the\n" +" files below $TRACKER_HOME/db/files/ (which can be archived " +"separately).\n" +" To include the files, use the export command.\n" +"\n" +" Optionally limit the export to just the named classes\n" +" or exclude the named classes, if the 1st argument starts with '-'.\n" +"\n" +" This action exports the current data from the database into\n" +" colon-separated-value files that are placed in the nominated\n" +" destination directory.\n" +" " +msgstr "" +"Verwendung: exporttables [Klasse[,Klasse]] Exportverzeichnis\n" +" Exportiert die Datenbank in ein Verzeichnis mit CSV-Dateien,\n" +" unter Fortlassung der im Dateisystem unter $TRACKER_HOME/db/files\n" +" abgelegten Daten; um diese mitzuexportieren, verwenden Sie \"export\".\n" +"\n" +" Wenn Sie Klassennamen übergeben, wird der Export auf diese beschränkt\n" +" bzw. (wenn der ersten Klasse ein '-' vorgestellt wird) diese fortgelassen.\n" +"\n" +" Die Daten werden als kommagetrennte Dateien in das angegebene\n" +" Exportverzeichnis geschrieben.\n" +" " + +#: ../roundup/admin.py:1160 #: ../roundup/admin.py:1084 msgid "" "Usage: import import_dir\n" @@ -899,6 +985,7 @@ " verbergen).\n" " " +#: ../roundup/admin.py:1235 #: ../roundup/admin.py:1152 msgid "" "Usage: pack period | date\n" @@ -938,10 +1025,12 @@ "\n" " " +#: ../roundup/admin.py:1263 #: ../roundup/admin.py:1180 msgid "Invalid format" msgstr "Ungültiges Format" +#: ../roundup/admin.py:1274 #: ../roundup/admin.py:1190 msgid "" "Usage: reindex [classname|designator]*\n" @@ -958,11 +1047,13 @@ " normalerweise automatisch.\n" " " +#: ../roundup/admin.py:1288 #: ../roundup/admin.py:1204 #, python-format msgid "no such item \"%(designator)s\"" msgstr "Der Eintrag \"%(designator)s\" existiert nicht" +#: ../roundup/admin.py:1298 #: ../roundup/admin.py:1214 msgid "" "Usage: security [Role name]\n" @@ -1052,47 +1143,95 @@ "Roundup %s ist bereit.\n" "Schreiben Sie \"help\", um zur Hilfe zu gelangen." +#: ../roundup/admin.py:1426 #: ../roundup/admin.py:1337 +#, on my Windows(tm) system, they *are* available msgid "Note: command history and editing not available" -msgstr "Bemerkung: Befehlsverlauf/-bearbeitung nicht verfügbar" - +msgstr "Bemerkung: Befehlsverlauf/-bearbeitung möglicherweise nicht verfügbar" + +#: ../roundup/admin.py:1430 #: ../roundup/admin.py:1341 msgid "roundup> " msgstr "roundup> " +#: ../roundup/admin.py:1432 #: ../roundup/admin.py:1343 msgid "exit..." msgstr "beenden..." +#: ../roundup/admin.py:1442 #: ../roundup/admin.py:1353 msgid "There are unsaved changes. Commit them (y/N)? " msgstr "Es gibt noch ungespeicherte Änderungen. Änderungen speichern (y/N)?" +#: ../roundup/backends/back_anydbm.py:219 +#: ../roundup/backends/sessions_dbm.py:50 +msgid "Couldn't identify database type" +msgstr "" +"Konnte den Datenbanktyp nicht ermitteln" + +#: ../roundup/backends/back_anydbm.py:245 +#, python-format +msgid "Couldn't open database - the required module '%s' is not available" +msgstr "" +"Konnte die Datenbank nicht öffnen - das erforderliche Modul '%s' ist nicht verfügbar" + +#: ../roundup/backends/back_anydbm.py:795 +#: ../roundup/backends/back_anydbm.py:1070 +#: ../roundup/backends/back_anydbm.py:1267 +#: ../roundup/backends/back_anydbm.py:1285 +#: ../roundup/backends/back_anydbm.py:1331 +#: ../roundup/backends/back_anydbm.py:1901 +#: ../roundup/backends/back_anydbm.py:795:1070 +#: ../roundup/backends/back_metakit.py:567 +#: ../roundup/backends/back_metakit.py:834 +#: ../roundup/backends/back_metakit.py:866 +#: ../roundup/backends/back_metakit.py:1601 +#: ../roundup/backends/back_metakit.py:567:834 +#: ../roundup/backends/rdbms_common.py:1320 +#: ../roundup/backends/rdbms_common.py:1549 +#: ../roundup/backends/rdbms_common.py:1755 +#: ../roundup/backends/rdbms_common.py:1775 +#: ../roundup/backends/rdbms_common.py:1828 +#: ../roundup/backends/rdbms_common.py:2436 +#: ../roundup/backends/rdbms_common.py:1320:1549 :1267:1285 :1331:1901 +#: :1755:1775 :1828:2436 :866:1601 +msgid "Database open read-only" +msgstr "" +"Datenbank nur zum Lesen geöffnet" + +#: ../roundup/backends/back_anydbm.py:2003 #: ../roundup/backends/back_anydbm.py:2054 #, python-format msgid "WARNING: invalid date tuple %r" msgstr "WARNUNG: ungültiges Datums-Tupel %r" +#: ../roundup/backends/rdbms_common.py:1449 #: ../roundup/backends/rdbms_common.py:1425 msgid "create" msgstr "erstellt" +#: ../roundup/backends/rdbms_common.py:1615 #: ../roundup/backends/rdbms_common.py:1588 msgid "unlink" msgstr "Link gelöscht" +#: ../roundup/backends/rdbms_common.py:1619 #: ../roundup/backends/rdbms_common.py:1592 msgid "link" msgstr "verlinkt" +#: ../roundup/backends/rdbms_common.py:1741 #: ../roundup/backends/rdbms_common.py:1702 msgid "set" msgstr "geändert" +#: ../roundup/backends/rdbms_common.py:1765 #: ../roundup/backends/rdbms_common.py:1726 msgid "retired" msgstr "verborgen" +#: ../roundup/backends/rdbms_common.py:1795 #: ../roundup/backends/rdbms_common.py:1756 msgid "restored" msgstr "wiederhergestellt" @@ -1126,40 +1265,50 @@ msgid "%(classname)s %(itemid)s has been retired" msgstr "%(classname)s %(itemid)s wurde gelöscht" +#: ../roundup/cgi/actions.py:169 ../roundup/cgi/actions.py:197 +#: ../roundup/cgi/actions.py:169:197 # ../roundup/cgi/actions.py:174 :202 #: ../roundup/cgi/actions.py:174 ../roundup/cgi/actions.py:202 msgid "You do not have permission to edit queries" msgstr "Sie haben keine Berechtigung, Abfragen zu bearbeiten." +#: ../roundup/cgi/actions.py:175 ../roundup/cgi/actions.py:204 +#: ../roundup/cgi/actions.py:175:204 # ../roundup/cgi/actions.py:180 :209 #: ../roundup/cgi/actions.py:180 ../roundup/cgi/actions.py:209 msgid "You do not have permission to store queries" msgstr "Sie haben keine Berechtigung, Abfragen zu speichern." +#: ../roundup/cgi/actions.py:310 #: ../roundup/cgi/actions.py:279 #, python-format msgid "Not enough values on line %(line)s" msgstr "Nicht genügend Werte in Zeile %(line)s" +#: ../roundup/cgi/actions.py:357 #: ../roundup/cgi/actions.py:326 msgid "Items edited OK" msgstr "Die Einträge wurden aktualisiert" +#: ../roundup/cgi/actions.py:416 #: ../roundup/cgi/actions.py:386 #, python-format msgid "%(class)s %(id)s %(properties)s edited ok" msgstr "Eigenschaft \"%(properties)s\" bei \"%(class)s %(id)s\" bearbeitet" +#: ../roundup/cgi/actions.py:419 #: ../roundup/cgi/actions.py:389 #, python-format msgid "%(class)s %(id)s - nothing changed" msgstr "%(class)s %(id)s - keine Änderungen" +#: ../roundup/cgi/actions.py:431 #: ../roundup/cgi/actions.py:401 #, python-format msgid "%(class)s %(id)s created" msgstr "Der Eintrag \"%(class)s%(id)s\" wurde erstellt" +#: ../roundup/cgi/actions.py:463 #: ../roundup/cgi/actions.py:433 #, python-format msgid "You do not have permission to edit %(class)s" @@ -1167,6 +1316,7 @@ "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu " "bearbeiten" +#: ../roundup/cgi/actions.py:475 #: ../roundup/cgi/actions.py:445 #, python-format msgid "You do not have permission to create %(class)s" @@ -1174,10 +1324,12 @@ "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu " "erstellen" +#: ../roundup/cgi/actions.py:499 #: ../roundup/cgi/actions.py:468 msgid "You do not have permission to edit user roles" msgstr "Sie sind nicht berechtigt, Benutzer-Rollen zu ändern" +#: ../roundup/cgi/actions.py:549 #: ../roundup/cgi/actions.py:537 #, python-format msgid "" @@ -1187,11 +1339,15 @@ "Fehler: Jemand anders hat dieses %s bearbeitet (%s). Sehen Sie " "<a target=\"_new\" href=\"%s%s\">dessen Änderungen</a> in einem neuen Fenster." +#: ../roundup/cgi/actions.py:577 #: ../roundup/cgi/actions.py:530 #, python-format msgid "Edit Error: %s" msgstr "Fehler bei der Bearbeitung: %s" +#: ../roundup/cgi/actions.py:608 ../roundup/cgi/actions.py:619 +#: ../roundup/cgi/actions.py:790 ../roundup/cgi/actions.py:809 +#: ../roundup/cgi/actions.py:608:619 :790:809 # ../roundup/cgi/actions.py:546 :556 #: ../roundup/cgi/actions.py:561 ../roundup/cgi/actions.py:572 #: ../roundup/cgi/actions.py:743 ../roundup/cgi/actions.py:762 @@ -1199,6 +1355,7 @@ msgid "Error: %s" msgstr "Fehler: %s" +#: ../roundup/cgi/actions.py:645 #: ../roundup/cgi/actions.py:598 msgid "" "Invalid One Time Key!\n" @@ -1316,8 +1473,8 @@ #: ../roundup/cgi/cgitb.py:120 msgid "" "<p>A problem occurred while running a Python script. Here is the sequence of " -"function calls leading up to the error, with the most recent (innermost) " -"call first. The exception attributes are:" +"function calls leading up to the error, with the most recent (innermost) call " +"first. The exception attributes are:" msgstr "" "<p>Ein Problem trat auf, als ein Python-Script ausgeführt wurde. Hier sehen " "Sie die Aufrufe, welche zu dem Fehler führten. Der letzte (innerste) Aufruf erscheint " @@ -1338,38 +1495,50 @@ msgid "<em>undefined</em>" msgstr "<em>nicht definiert</em>" +#: ../roundup/cgi/client.py:51 #: ../roundup/cgi/client.py:49 msgid "" +"<html><head><title>An error has occurred</title></head>\n" +"<body><h1>An error has occurred</h1>\n" +"<p>A problem was encountered processing your request.\n" +"The tracker maintainers have been notified of the problem.</p>\n" +"</body></html>" +msgstr "" "<html><head><title>Ein Fehler ist aufgetreten</title></head>\n" "<body><h1>Ein Fehler ist aufgetreten</h1>\n" "<p>Bei der Bearbeitung Ihrer Daten ist ein Fehler aufgetreten. " "Die Admistratoren wurden benachrichtigt.</p>\n" "</body></html>" -msgstr "" - + +#: ../roundup/cgi/client.py:377 #: ../roundup/cgi/client.py:291 msgid "Form Error: " msgstr "Formular-Fehler: " +#: ../roundup/cgi/client.py:432 #: ../roundup/cgi/client.py:344 #, python-format msgid "Unrecognized charset: %r" msgstr "Zeichensatz nicht erkannt: %r" +#: ../roundup/cgi/client.py:560 #: ../roundup/cgi/client.py:446 msgid "Anonymous users are not allowed to use the web interface" msgstr "" "Gast-Benutzer sind nicht berechtigt, das Web-Interface zu benutzen." +#: ../roundup/cgi/client.py:715 #: ../roundup/cgi/client.py:597 msgid "You are not allowed to view this file." msgstr "Sie sind nicht berechtigt, diese Seite anzuzeigen." +#: ../roundup/cgi/client.py:808 #: ../roundup/cgi/client.py:689 #, python-format msgid "%(starttag)sTime elapsed: %(seconds)fs%(endtag)s\n" msgstr "%(starttag)sBenötigte Zeit: %(seconds)fs%(endtag)s\n" +#: ../roundup/cgi/client.py:812 #: ../roundup/cgi/client.py:693 #, python-format msgid "" @@ -1381,16 +1550,18 @@ #: ../roundup/cgi/form_parser.py:283 #, python-format -msgid "link \"%(key)s\" value \"%(value)s\" not a designator" +msgid "link \"%(key)s\" value \"%(entry)s\" not a designator" msgstr "" -"Der Wert \"%(value)s\" ist kein gültiger Bezeichner für die Verknüpfung \"%" +"Der Wert \"%(entry)s\" ist kein gültiger Bezeichner für die Verknüpfung \"%" "(key)s\"" +#: ../roundup/cgi/form_parser.py:301 #: ../roundup/cgi/form_parser.py:290 #, python-format msgid "%(class)s %(property)s is not a link or multilink property" msgstr "%(class)s %(property)s ist weder ein Link noch ein Mehrfachlink" +#: ../roundup/cgi/form_parser.py:335 #: ../roundup/cgi/form_parser.py:312 #, python-format msgid "" @@ -1421,10 +1592,12 @@ msgstr[0] "Die Eigenschaft \"%(property)s\" muss für die Klasse \"%(class)s\" angegeben werden" msgstr[1] "Die Eigenschaften \"%(property)s\" müssen für die Klasse \"%(class)s\" angegeben werden" +#: ../roundup/cgi/form_parser.py:574 #: ../roundup/cgi/form_parser.py:529 msgid "File is empty" msgstr "Die ausgewählte Datei ist leer" +#: ../roundup/cgi/templating.py:77 #: ../roundup/cgi/templating.py:68 #, python-format msgid "You are not allowed to %(action)s items of class %(class)s" @@ -1432,95 +1605,134 @@ "Sie sind nicht berechtigt, die Aktion \"%(action)s\" auf Einträge der " "Klasse \"%(class)s\" anzuwenden" +#: ../roundup/cgi/templating.py:657 +#: ../roundup/cgi/templating.py:77 #: ../roundup/cgi/templating.py:612 msgid "(list)" msgstr "(Liste)" +#: ../roundup/cgi/templating.py:726 #: ../roundup/cgi/templating.py:646 msgid "Submit New Entry" msgstr "Eintrag speichern" +#: ../roundup/cgi/templating.py:740 ../roundup/cgi/templating.py:873 +#: ../roundup/cgi/templating.py:1294 ../roundup/cgi/templating.py:1323 +#: ../roundup/cgi/templating.py:1343 ../roundup/cgi/templating.py:1356 +#: ../roundup/cgi/templating.py:1407 ../roundup/cgi/templating.py:1430 +#: ../roundup/cgi/templating.py:1466 ../roundup/cgi/templating.py:1503 +#: ../roundup/cgi/templating.py:1556 ../roundup/cgi/templating.py:1573 +#: ../roundup/cgi/templating.py:1657 ../roundup/cgi/templating.py:1677 +#: ../roundup/cgi/templating.py:1695 ../roundup/cgi/templating.py:1727 +#: ../roundup/cgi/templating.py:1737 ../roundup/cgi/templating.py:1789 +#: ../roundup/cgi/templating.py:1978 ../roundup/cgi/templating.py:740:873 +#: :1294:1323 :1343:1356 :1407:1430 :1466:1503 :1556:1573 :1657:1677 :1695:1727 +#: :1737:1789 :1978 +msgid "[hidden]" +msgstr "[verborgen]" + +#: ../roundup/cgi/templating.py:741 #: ../roundup/cgi/templating.py:656 msgid "New node - no history" msgstr "Neuer Eintrag - Noch kein Verlauf" +#: ../roundup/cgi/templating.py:855 #: ../roundup/cgi/templating.py:756 msgid "Submit Changes" msgstr "Speichern" +#: ../roundup/cgi/templating.py:937 #: ../roundup/cgi/templating.py:837 msgid "<em>The indicated property no longer exists</em>" msgstr "<em>Die gewählte Eigenschaft existiert nicht mehr</em>" +#: ../roundup/cgi/templating.py:938 #: ../roundup/cgi/templating.py:838 #, python-format msgid "<em>%s: %s</em>\n" msgstr "<em>%s: %s</em>\n" +#: ../roundup/cgi/templating.py:951 #: ../roundup/cgi/templating.py:851 #, python-format msgid "The linked class %(classname)s no longer exists" msgstr "Die verlinkte Klasse \"%(classname)s\" existiert nicht mehr" +#: ../roundup/cgi/templating.py:984 ../roundup/cgi/templating.py:1008 +#: ../roundup/cgi/templating.py:984:1008 # ../roundup/cgi/templating.py:905 :926 #: ../roundup/cgi/templating.py:884 ../roundup/cgi/templating.py:905 msgid "<strike>The linked node no longer exists</strike>" msgstr "<strike>Der verknüpfte Eintrag existiert nicht mehr</strike>" -#: ../roundup/cgi/templating.py:944 -msgid "No" -msgstr "Nein" - -#: ../roundup/cgi/templating.py:944 -msgid "Yes" -msgstr "Ja" - +#: ../roundup/cgi/templating.py:1061 #: ../roundup/cgi/templating.py:955 #, python-format msgid "%s: (no value)" msgstr "%s: (kein Wert)" +#: ../roundup/cgi/templating.py:1073 #: ../roundup/cgi/templating.py:967 msgid "" "<strong><em>This event is not handled by the history display!</em></strong>" msgstr "" "<strong><em>Dieses Ereignis kann nicht im Verlauf angezeigt werden!</em></strong>" +#: ../roundup/cgi/templating.py:1085 #: ../roundup/cgi/templating.py:979 msgid "<tr><td colspan=4><strong>Note:</strong></td></tr>" -msgstr "<tr><td colspan=4><strong>Notiz:</strong></td></tr>" - +msgstr "<tr><td colspan="4"><strong>Bitte beachten:</strong></td></tr>" + +#: ../roundup/cgi/templating.py:1094 #: ../roundup/cgi/templating.py:988 msgid "History" msgstr "Verlauf" +#: ../roundup/cgi/templating.py:1096 #: ../roundup/cgi/templating.py:990 msgid "<th>Date</th>" msgstr "<th>Datum</th>" +#: ../roundup/cgi/templating.py:1097 #: ../roundup/cgi/templating.py:991 msgid "<th>User</th>" msgstr "<th>Benutzer</th>" +#: ../roundup/cgi/templating.py:1098 #: ../roundup/cgi/templating.py:992 msgid "<th>Action</th>" msgstr "<th>Aktion</th>" +#: ../roundup/cgi/templating.py:1099 #: ../roundup/cgi/templating.py:993 msgid "<th>Args</th>" msgstr "<th>Argumente</th>" +#: ../roundup/cgi/templating.py:1141 #: ../roundup/cgi/templating.py:1097 #, python-format msgid "Copy of %(class)s %(id)s" msgstr "" "Kopie von %(class)s %(id)s" +#: ../roundup/cgi/templating.py:1434 #: ../roundup/cgi/templating.py:1234 msgid "*encrypted*" msgstr "*verschlüsselt*" -#: ../roundup/cgi/templating.py:1412 +#: ../roundup/cgi/templating.py:1507 ../roundup/cgi/templating.py:1528 +#: ../roundup/cgi/templating.py:1534 ../roundup/cgi/templating.py:1050:1507 +#: :1528:1534 +msgid "No" +msgstr "Nein" + +#: ../roundup/cgi/templating.py:1507 ../roundup/cgi/templating.py:1526 +#: ../roundup/cgi/templating.py:1531 ../roundup/cgi/templating.py:1050:1507 +#: :1526:1531 +msgid "Yes" +msgstr "Ja" + +#: ../roundup/cgi/templating.py:1620 msgid "" "default value for DateHTMLProperty must be either DateHTMLProperty or string " "date representation." @@ -1528,14 +1740,13 @@ "Der voreingestellte Wert einer DateHTML-Eigenschaft muss entweder ein\n" "DateHTML-Objekt sein oder ein Datum repräsentieren." -#: ../roundup/cgi/templating.py:1674 +#: ../roundup/cgi/templating.py:1780 #, python-format msgid "Attempt to look up %(attr)s on a missing value" msgstr "" "Versuch, das Attribut %(attr)s eines nicht vorhandenen Werts abzufragen" -#: ../roundup/cgi/templating.py:1750 -#: ../roundup/cgi/templating.py:1600 +#: ../roundup/cgi/templating.py:1853 #, python-format msgid "<option %svalue=\"-1\">- no selection -</option>" msgstr "<option %svalue=\"-1\">- nichts ausgewählt -</option>" @@ -1545,32 +1756,38 @@ msgid "Not a date spec: %s" msgstr "Kein gültiges Datum: %s" -#: ../roundup/date.py:186 +#: ../roundup/date.py:300 msgid "" -"Kein gültiges Datum: \"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" oder \"yyyy-" +"Not a date spec: \"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" or \"yyyy-" "mm-dd.HH:MM:SS.SSS\"" msgstr "" - -#: ../roundup/date.py:231 +"Kein gültiges Datum: \"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" oder \"yyyy-" +"mm-dd.HH:MM:SS.SSS\"" + +#: ../roundup/date.py:359 #, python-format -msgid "%r not a date spec (%s)" -msgstr "%r ist kein gültiges Datum (%s)" - +msgid "" +"%r not a date / time spec \"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" " +"or \"yyyy-mm-dd.HH:MM:SS.SSS\"" +msgstr "" +"%r ist keine Datums- oder Zeitangabe (\"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" " +"oder \"yyyy-mm-dd.HH:MM:SS.SSS\")" + +#: ../roundup/date.py:666 #: ../roundup/date.py:522 msgid "" -"Not an interval spec:" -" [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS] [date spec]" +"Not an interval spec: [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS] [date spec]" msgstr "" "Keine gültige Intervall-Angabe:" " [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS] [Datum]" -#: ../roundup/date.py:541 -msgid "Not an interval spec:" -" [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS]" +#: ../roundup/date.py:685 +msgid "Not an interval spec: [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS]" msgstr "" "Keine gültige Intervall-Angabe:" " [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS]" +#: ../roundup/date.py:822 #: ../roundup/date.py:678 #, python-format msgid "%(number)s year" @@ -1578,6 +1795,7 @@ msgstr[0] "%(number)s Jahr" msgstr[1] "%(number)s Jahren" +#: ../roundup/date.py:826 #: ../roundup/date.py:682 #, python-format msgid "%(number)s month" @@ -1585,6 +1803,7 @@ msgstr[0] "%(number)s Monat" msgstr[1] "%(number)s Monaten" +#: ../roundup/date.py:830 #: ../roundup/date.py:686 #, python-format msgid "%(number)s week" @@ -1592,6 +1811,7 @@ msgstr[0] "%(number)s Woche" msgstr[1] "%(number)s Wochen" +#: ../roundup/date.py:834 #: ../roundup/date.py:690 #, python-format msgid "%(number)s day" @@ -1599,14 +1819,17 @@ msgstr[0] "%(number)s Tag" msgstr[1] "%(number)s Tagen" +#: ../roundup/date.py:838 #: ../roundup/date.py:694 msgid "tomorrow" msgstr "morgen" +#: ../roundup/date.py:840 #: ../roundup/date.py:696 msgid "yesterday" msgstr "gestern" +#: ../roundup/date.py:843 #: ../roundup/date.py:699 #, python-format msgid "%(number)s hour" @@ -1614,33 +1837,40 @@ msgstr[0] "%(number)s Stunde" msgstr[1] "%(number)s Stunden" +#: ../roundup/date.py:847 #: ../roundup/date.py:703 msgid "an hour" msgstr "eine Stunde" +#: ../roundup/date.py:849 #: ../roundup/date.py:705 msgid "1 1/2 hours" msgstr "1 1/2 Stunden" +#: ../roundup/date.py:851 #: ../roundup/date.py:707 #, python-format msgid "1 %(number)s/4 hours" msgid_plural "1 %(number)s/4 hours" -msgstr[0] "1 %(number)s/4 Stunden" +msgstr[0] "1 %(number)s/4 Stunde" msgstr[1] "1 %(number)s/4 Stunden" +#: ../roundup/date.py:855 #: ../roundup/date.py:711 msgid "in a moment" msgstr "in Kürze" +#: ../roundup/date.py:857 #: ../roundup/date.py:713 msgid "just now" msgstr "soeben" +#: ../roundup/date.py:860 #: ../roundup/date.py:716 msgid "1 minute" msgstr "1 Minute" +#: ../roundup/date.py:863 #: ../roundup/date.py:719 #, python-format msgid "%(number)s minute" @@ -1648,28 +1878,89 @@ msgstr[0] "%(number)s Minute" msgstr[1] "%(number)s Minuten" +#: ../roundup/date.py:866 #: ../roundup/date.py:722 msgid "1/2 an hour" msgstr "1/2 Stunde" +#: ../roundup/date.py:868 #: ../roundup/date.py:724 #, python-format msgid "%(number)s/4 hour" msgid_plural "%(number)s/4 hours" -msgstr[0] "%(number)s/4 Stunden" +msgstr[0] "%(number)s/4 Stunde" msgstr[1] "%(number)s/4 Stunden" +#: ../roundup/date.py:872 #: ../roundup/date.py:728 #, python-format msgid "%s ago" msgstr "vor %s" +#: ../roundup/date.py:874 #: ../roundup/date.py:730 #, python-format msgid "in %s" msgstr "in %s" -#: ../roundup/init.py:132 +#: ../roundup/hyperdb.py:87 +#, python-format +msgid "property %s: %s" +msgstr "" + "Eigenschaft %s: %s" + +#: ../roundup/hyperdb.py:107 +#, python-format +msgid "property %s: %r is an invalid date (%s)" +msgstr "" +"Eigenschaft %s: %r ist kein gültiges Datum (%s)" + +#: ../roundup/hyperdb.py:124 +#, python-format +msgid "property %s: %r is an invalid date interval (%s)" +msgstr "" +"Eigenschaft %s: %r ist kein gültiges Datumsintervall (%s)" + +#: ../roundup/hyperdb.py:219 +#, python-format +msgid "property %s: %r is not currently an element" +msgstr "" +"Eigenschaft %s: %r ist derzeit kein Element" + +#: ../roundup/hyperdb.py:263 +#, python-format +msgid "property %s: %r is not a number" +msgstr "" +"Eigenschaft %s: %r ist keine Zahl" + +#: ../roundup/hyperdb.py:276 +#, python-format +msgid "\"%s\" not a node designator" +msgstr "\"%s\" ist kein gültiger Bezeichner" + +#: ../roundup/hyperdb.py:949 ../roundup/hyperdb.py:957 +#: ../roundup/hyperdb.py:949:957 +#, python-format +msgid "Not a property name: %s" +msgstr "Keine Eigenschaft: %s" + +#: ../roundup/hyperdb.py:1240 +#, python-format +msgid "property %s: %r is not a %s." +msgstr "" +"Eigenschaft %s: %r ist kein %s." + +#: ../roundup/hyperdb.py:1243 +#, python-format +msgid "you may only enter ID values for property %s" +msgstr "" + +#: ../roundup/hyperdb.py:1273 +#, python-format +msgid "%r is not a property of %s" +msgstr "" + +#: ../roundup/init.py:134 #, python-format msgid "" "WARNING: directory '%s'\n" @@ -1678,13 +1969,52 @@ "WARNUNG: Das Verzeichnis '%s'\n" "\tenthält Templates im alten Format, die ignoriert werden." -#: ../roundup/mailgw.py:586 +#: ../roundup/mailgw.py:199 ../roundup/mailgw.py:211 +#: ../roundup/mailgw.py:199:211 +#, python-format +msgid "Message signed with unknown key: %s" +msgstr "" +"Nachricht signiert mit unbekanntem Schlüssel: %s" + +#: ../roundup/mailgw.py:202 +#, python-format +msgid "Message signed with an expired key: %s" +msgstr "" +"Nachricht signiert mit abgelaufenem Schlüssel: %s" + +#: ../roundup/mailgw.py:205 +#, python-format +msgid "Message signed with a revoked key: %s" +msgstr "" +"Nachricht signiert mit zurückgezogenem Schlüssel: %s" + +#: ../roundup/mailgw.py:208 +msgid "Invalid PGP signature detected." +msgstr "" +"Ungültige PGP-Signatur festgestellt." + +#: ../roundup/mailgw.py:404 +msgid "Unknown multipart/encrypted version." +msgstr "" + +#: ../roundup/mailgw.py:413 +msgid "Unable to decrypt your message." +msgstr "" +"Kann Ihre Nachricht nicht entschlüsseln" + +#: ../roundup/mailgw.py:442 +msgid "No PGP signature found in message." +msgstr "" +"Keine PGP-Signatur in Nachricht gefunden" + +#: ../roundup/mailgw.py:749 msgid "" "\n" "Emails to Roundup trackers must include a Subject: line!\n" msgstr "" #: ../roundup/mailgw.py:674 +#: ../roundup/mailgw.py:873 #, python-format msgid "" "\n" @@ -1701,19 +2031,73 @@ "Subject was: '%(subject)s'\n" msgstr "" -#: ../roundup/mailgw.py:705 +#: ../roundup/mailgw.py:911 #, python-format msgid "" "\n" -"The class name you identified in the subject line (\"%(classname)s\") does " -"not exist in the\n" -"database.\n" +"The class name you identified in the subject line (\"%(classname)s\") does\n" +"not exist in the database.\n" "\n" "Valid class names are: %(validname)s\n" "Subject was: \"%(subject)s\"\n" msgstr "" +"\n" +"Der von Ihnen in der Betreffzeile angegebene Klassenname (\"%(classname)s\")" +"existiert in der Datenbank nicht." +"\n" +"Gültige Klassen sind: %(validname)s\n" +"Die Betreffzeile war: \"%(subject)s\"\n" + +#: ../roundup/mailgw.py:919 +#, python-format +msgid "" +"\n" +"You did not identify a class name in the subject line and there is no\n" +"default set for this tracker. The subject must contain a class name or\n" +"designator to indicate the 'topic' of the message. For example:\n" +" Subject: [issue] This is a new issue\n" +" - this will create a new issue in the tracker with the title 'This is\n" +" a new issue'.\n" +" Subject: [issue1234] This is a followup to issue 1234\n" +" - this will append the message's contents to the existing issue 1234\n" +" in the tracker.\n" +"\n" +"Subject was: '%(subject)s'\n" +msgstr "" +"\n" +"Sie haben in der Betreffzeile keinen Klassennamen angegeben, und es ist für\n" +"diesen Tracker kein Standardwert gesetzt. Die Betreffzeile muß eine Klasse\n" +"oder einen Bezeichner des Gegenstands Ihrer Nachricht enthalten;\n" +"zum Beispiel:\n" +" Subject: [issue] Dies ist ein neues Issue\n" +" - dies erzeugt ein neues Issue im Tracker mit dem Titel \'Dies\n" +" ist ein neues Issue\'.\n" +" Subject: [issue1234] Dies bezieht sich auf Issue 1234\n" +" - fügt den Inhalt der Nachricht dem existierenden Issue 1234 hinzu\n" +"\n" +"Die Betreffzeile (Subject) war:\n" +" '%(subject)s'\n" + +#: ../roundup/mailgw.py:960 +#, python-format +msgid "" +"\n" +"I cannot match your message to a node in the database - you need to either\n" +"supply a full designator (with number, eg \"[issue123]\") or keep the\n" +"previous subject title intact so I can match that.\n" +"\n" +"Subject was: \"%(subject)s\"\n" +msgstr "" +"\n" +"Ich kann Ihre Nachricht keinem Eintrag in der Datenbank zuordnen - Sie müssen\n" +"entweder einen vollen Bezeichner angeben (mit Nummer, z. B. \"[issue123]\")\n" +"oder die Betreffzeile intakt lassen, so daß ich diese zuordnen kann.\n" +"\n" +"Die Betreffzeile (Subject) war:\n" +" '%(subject)s'\n" #: ../roundup/mailgw.py:733 +#, (old version) #, python-format msgid "" "\n" @@ -1723,7 +2107,16 @@ "\n" "Subject was: \"%(subject)s\"\n" msgstr "" - +"\n" +"Ich kann Ihre Nachricht keinem Eintrag in der Datenbank zuordnen - Sie müssen\n" +"entweder einen vollen Bezeichner angeben (mit Nummer, z. B. \"[issue123]\")\n" +"oder die Betreffzeile intakt lassen, so daß ich diese zuordnen kann.\n" +"\n" +"Die Betreffzeile (Subject) war:\n" +" '%(subject)s'\n" + + +#: ../roundup/mailgw.py:993 #: ../roundup/mailgw.py:766 #, python-format msgid "" @@ -1733,7 +2126,13 @@ "\n" "Subject was: \"%(subject)s\"\n" msgstr "" - +"Der in der Betreffzeile Ihre Nachricht bezeichnete Eintrag\n" +"(\"%(nodeid)s\") existiert nicht.\n" +"\n" +"Die Betreffzeile (Subject) war:\n" +" '%(subject)s'\n" + +#: ../roundup/mailgw.py:1021 #: ../roundup/mailgw.py:794 #, python-format msgid "" @@ -1743,6 +2142,7 @@ " %(current_class)s\n" msgstr "" +#: ../roundup/mailgw.py:1044 #: ../roundup/mailgw.py:817 #, python-format msgid "" @@ -1752,7 +2152,21 @@ " %(errors)s\n" msgstr "" +#: ../roundup/mailgw.py:1084 +#, python-format +msgid "" +"\n" +"You are not a registered user.%(registration_info)s\n" +"\n" +"Unknown address: %(from_address)s\n" +msgstr "" +"\n" +"Sie sind kein registrierter Anwender.%(registration_info)s\n" +"\n" +"Unbekannte Adresse: %(from_address)s\n" + #: ../roundup/mailgw.py:847 +#, (old version) #, python-format msgid "" "\n" @@ -1760,21 +2174,32 @@ "\n" "Unknown address: %(from_address)s\n" msgstr "" - +"\n" +"Sie sind kein registrierter Anwender.\n" +"\n" +"Unbekannte Adresse: %(from_address)s\n" + +#: ../roundup/mailgw.py:1092 #: ../roundup/mailgw.py:855 msgid "You are not permitted to access this tracker." msgstr "" - +"Sie haben keinen Zugriff auf diesen Tracker." + +#: ../roundup/mailgw.py:1099 #: ../roundup/mailgw.py:862 #, python-format msgid "You are not permitted to edit %(classname)s." msgstr "" - +"Sie sind nicht berechtigt, %(classname)s zu bearbeiten" + +#: ../roundup/mailgw.py:1103 #: ../roundup/mailgw.py:866 #, python-format msgid "You are not permitted to create %(classname)s." msgstr "" - +"Sie sind nicht berechtigt, ein \"%(classname)s\" zu erzeugen" + +#: ../roundup/mailgw.py:1150 #: ../roundup/mailgw.py:913 #, python-format msgid "" @@ -1784,27 +2209,53 @@ "\n" "Subject was: \"%(subject)s\"\n" msgstr "" - +"\n" +"Es sind Probleme aufgetreten bei der Verarbeitung Ihrer Betreffzeile:\n" +"- %(errors)s\n" +"\n" +"Die Betreffzeile war: \"%(subject)s\"\n" + +#: ../roundup/mailgw.py:1203 +msgid "" +"\n" +"This tracker has been configured to require all email be PGP signed or\n" +"encrypted." +msgstr "" +"\n" +"Dieser Tracker wurde konfiguriert, Email-Nachrichten nur PGP-signiert oder\n" +"verschlüsselt entgegenzunehmen." + +#: ../roundup/mailgw.py:1209 #: ../roundup/mailgw.py:942 msgid "" "\n" "Roundup requires the submission to be plain text. The message parser could\n" "not find a text/plain part to use.\n" msgstr "" - +"\n" +"Dieser Tracker akzeptiert nur einfache Textnachrichten. Der Mail-Parser konnte\n" +"keinen entsprechenden Teil (\"text/plain\") finden.\n" + +#: ../roundup/mailgw.py:1226 #: ../roundup/mailgw.py:964 msgid "You are not permitted to create files." msgstr "" - +"Sie sind nicht berechtigt, Dateien zu erzeugen" + +#: ../roundup/mailgw.py:1240 #: ../roundup/mailgw.py:978 #, python-format msgid "You are not permitted to add files to %(classname)s." msgstr "" - +"Sie sind nicht berechtigt, Dateien zu %(classname)s hinzuzufügen" + +#: ../roundup/mailgw.py:1258 #: ../roundup/mailgw.py:996 msgid "You are not permitted to create messages." msgstr "" - +"Sie sind nicht berechtigt, Nachrichten zu erzeugen" + +#: ../roundup/mailgw.py:1266 #: ../roundup/mailgw.py:1004 #, python-format msgid "" @@ -1812,17 +2263,25 @@ "Mail message was rejected by a detector.\n" "%(error)s\n" msgstr "" - +"Die Mail-Nachricht wurde von einem Detektor zurückgewiesen.\n" +"%(error)s\n" + +#: ../roundup/mailgw.py:1274 #: ../roundup/mailgw.py:1012 #, python-format msgid "You are not permitted to add messages to %(classname)s." msgstr "" - +"Sie sind nicht berechtigt, Kommentare zu %(classname)s hinzuzufügen" + +#: ../roundup/mailgw.py:1301 #: ../roundup/mailgw.py:1039 #, python-format msgid "You are not permitted to edit property %(prop)s of class %(classname)s." msgstr "" - +"Sie sind nicht berechtigt, die Eigenschaft %(prop)s der Klasse %(classname)s\n" +"zu bearbeiten." + +#: ../roundup/mailgw.py:1309 #: ../roundup/mailgw.py:1047 #, python-format msgid "" @@ -1830,79 +2289,126 @@ "There was a problem with the message you sent:\n" " %(message)s\n" msgstr "" - +"\n" +"Es gab ein Problem mit Ihrer Nachricht:\n" +" %(message)s\n" + +#: ../roundup/mailgw.py:1331 #: ../roundup/mailgw.py:1069 msgid "not of form [arg=value,value,...;arg=value,value,...]" msgstr "" - +"entspricht nicht der Form [arg=wert,wert,...;arg=wert,wert,...]" + +#: ../roundup/roundupdb.py:147 #: ../roundup/roundupdb.py:142 msgid "files" msgstr "Dateien" +#: ../roundup/roundupdb.py:147 #: ../roundup/roundupdb.py:141 msgid "messages" msgstr "Kommentare" +#: ../roundup/roundupdb.py:147 #: ../roundup/roundupdb.py:141 msgid "nosy" msgstr "Interessenten" +#: ../roundup/roundupdb.py:147 #: ../roundup/roundupdb.py:141 msgid "superseder" msgstr "ersetzt durch" +#: ../roundup/roundupdb.py:147 #: ../roundup/roundupdb.py:141 msgid "title" msgstr "Titel" +#: ../roundup/roundupdb.py:148 #: ../roundup/roundupdb.py:142 msgid "assignedto" msgstr "zugewiesen" +#: ../roundup/roundupdb.py:148 +msgid "keyword" +msgstr "" + +#: ../roundup/roundupdb.py:148 #: ../roundup/roundupdb.py:142 msgid "priority" msgstr "Prioriät" +#: ../roundup/roundupdb.py:148 #: ../roundup/roundupdb.py:142 msgid "status" msgstr "Status" #: ../roundup/roundupdb.py:142 +#, (old key, replaced by "keyword") msgid "topic" msgstr "Schlagwort" -# siehe die Anmerkung zu "Schlagwort" - + +#: ../roundup/roundupdb.py:151 #: ../roundup/roundupdb.py:145 msgid "activity" msgstr "Aktivität" #. following properties are common for all hyperdb classes #. they are listed here to keep things in one place +#: ../roundup/roundupdb.py:151 #: ../roundup/roundupdb.py:145 msgid "actor" msgstr "Akteur" +#: ../roundup/roundupdb.py:151 #: ../roundup/roundupdb.py:145 msgid "creation" msgstr "Erstellungsdatum" +#: ../roundup/roundupdb.py:151 #: ../roundup/roundupdb.py:145 msgid "creator" msgstr "Ersteller" +#: ../roundup/roundupdb.py:309 #: ../roundup/roundupdb.py:304 #, python-format msgid "New submission from %(authname)s%(authaddr)s:" msgstr "" +#: ../roundup/roundupdb.py:312 #: ../roundup/roundupdb.py:307 #, python-format msgid "%(authname)s%(authaddr)s added the comment:" msgstr "%(authname)s%(authaddr)s merkte an:" -#: ../roundup/roundupdb.py:310 -msgid "System message:" -msgstr "System-Nachricht:" +#: ../roundup/roundupdb.py:315 +#, python-format +msgid "Change by %(authname)s%(authaddr)s:" +msgstr "" +"Änderung von %(authname)s%(authaddr)s:" + +#: ../roundup/roundupdb.py:342 +#, python-format +msgid "File '%(filename)s' not attached - you can download it from %(link)s." +msgstr "" +"Die Datei '%(filename)s' ist nicht beigefügt - Sie können Sie unter\n" +"%(link)s herunterladen." + +#: ../roundup/roundupdb.py:615 +#, python-format +msgid "" +"\n" +"Now:\n" +"%(new)s\n" +"Was:\n" +"%(old)s" +msgstr "" +"\n" +"Jetzt:\n" +"%(new)s\n" +"Vorher:\n" +"%(old)s" #: ../roundup/scripts/roundup_demo.py:32 #, python-format @@ -1922,8 +2428,8 @@ #: ../roundup/scripts/roundup_mailgw.py:36 #, python-format msgid "" -"Usage: %(program)s [-v] [-c] [[-C class] -S field=value]* <instance home> " -"[method]\n" +"Usage: %(program)s [-v] [-c class] [[-C class] -S field=value]* <instance " +"home> [method]\n" "\n" "Options:\n" " -v: print version and exit\n" @@ -1968,6 +2474,10 @@ " are both valid. The username and/or password will be prompted for if\n" " not supplied on the command-line.\n" "\n" +"POPS:\n" +" Connect to a POP server over ssl. This requires python 2.4 or later.\n" +" This supports the same notation as POP.\n" +"\n" "APOP:\n" " Same as POP, but using Authenticated POP:\n" " apop username:password@server\n" @@ -2029,6 +2539,10 @@ " pop server\n" " In diesem Fall werden die Anmeldungs-Daten zur Laufzeit erfragt.\n" "\n" +"POPS:\n" +" Mit einem POP3-Server über SSL verbinden; dies erfordert Python 2.4 oder\n" +" neuer. Argumente wie bei POP.\n" +"\n" "APOP:\n" " Wie POP, aber unter Verwendung von authentifiziertem POP:\n" " apop benutzername:passwort@server\n" @@ -2064,6 +2578,12 @@ "\"imaps\"" msgstr "Fehler: Als E-Mail-Quelle muss \"mailbox\", \"pop\", \"apop\", \"imap\" oder \"imaps\" gewählt werden" +#: ../roundup/scripts/roundup_server.py:76 +msgid "WARNING: generating temporary SSL certificate" +msgstr "" +"WARNUNG: erzeuge temporäres SSL-Zertifikat" + +#: ../roundup/scripts/roundup_server.py:253 #: ../roundup/scripts/roundup_server.py:140 msgid "" "<html><head><title>Roundup trackers index</title></head>\n" @@ -2135,6 +2655,7 @@ " Zudem müssen Sie die Logfile-Option aktivieren.\n" " \"roundup-server -c help\" zeigt eine weitere Hilfe zum Thema." +#: ../roundup/scripts/roundup_server.py:695 #: ../roundup/scripts/roundup_server.py:514 msgid "" " -u <UID> runs the Roundup web server as this UID\n" @@ -2149,6 +2670,7 @@ " die Prozess-ID in die Datei PIDDatei.\n" " Die Option -l muss dann auch angegeben werden." +#: ../roundup/scripts/roundup_server.py:702 #: ../roundup/scripts/roundup_server.py:521 #, python-format msgid "" @@ -2164,6 +2686,9 @@ " -l <fname> log to the file indicated by fname instead of stderr/stdout\n" " -N log client machine names instead of IP addresses (much " "slower)\n" +" -i <fname> set tracker index template\n" +" -s enable SSL\n" +" -e <fname> PEM file containing SSL key and certificate\n" " -t <mode> multiprocess mode (default: %(mp_def)s).\n" " Allowed values: %(mp_types)s.\n" "%(os_part)s\n" @@ -2298,33 +2823,86 @@ "href='${context}'>laden Sie diese Seite neu</a> \n" " und fügen Sie Ihre Änderungen erneut ein.\n" -#: ../templates/classic/html/_generic.help.html:9 -#: ../templates/minimal/html/_generic.help.html:9 -msgid "${property} help - ${tracker}" -msgstr "Hilfe zu \"${property}\" - ${tracker}" - +#: ../templates/classic/html/_generic.help-empty.html:6 +msgid "Please specify your search parameters!" +msgstr "Bitte geben Sie Ihre Suchparameter an!" + +#: ../templates/classic/html/_generic.help-list.html:20 +#: ../templates/classic/html/_generic.index.html:14 +#: ../templates/classic/html/_generic.item.html:12 +#: ../templates/classic/html/file.item.html:9 +#: ../templates/classic/html/issue.index.html:16 +#: ../templates/classic/html/issue.item.html:28 +#: ../templates/classic/html/msg.item.html:26 +#: ../templates/classic/html/user.index.html:9 +#: ../templates/classic/html/user.item.html:35 +#: ../templates/minimal/html/_generic.index.html:14 +#: ../templates/minimal/html/_generic.item.html:12 +#: ../templates/minimal/html/user.index.html:9 +#: ../templates/minimal/html/user.item.html:35 +#: ../templates/minimal/html/user.register.html:14 +msgid "You are not allowed to view this page." +msgstr "Sie sind nicht berechtigt, diese Seite anzuzeigen." + +#: ../templates/classic/html/_generic.help-list.html:34 +msgid "1..25 out of 50" +msgstr "" +"1..25 von 50" + +#: ../templates/classic/html/_generic.help-search.html:9 +msgid "" +"Generic template ${template} or version for class ${classname} is not yet " +"implemented" +msgstr "" +"Die generische Vorlage ${template} bzw. die Version für die Klasse ${classname} " +"ist noch nicht implementiert" + +#: ../templates/classic/html/_generic.help-submit.html:57 +#: ../templates/classic/html/_generic.help.html:31 +#: ../templates/minimal/html/_generic.help.html:31 #: ../templates/classic/html/_generic.help.html:30 #: ../templates/minimal/html/_generic.help.html:30 msgid " Cancel " msgstr " Abbrechen " +#: ../templates/classic/html/_generic.help-submit.html:63 +#: ../templates/classic/html/_generic.help.html:34 +#: ../templates/minimal/html/_generic.help.html:34 #: ../templates/classic/html/_generic.help.html:33 #: ../templates/minimal/html/_generic.help.html:33 msgid " Apply " msgstr " Anwenden " +#: ../templates/classic/html/_generic.help.html:9 +#: ../templates/classic/html/user.help.html:13 +#: ../templates/minimal/html/_generic.help.html:9 +msgid "${property} help - ${tracker}" +msgstr "Hilfe zu \"${property}\" - ${tracker}" + +#: ../templates/classic/html/_generic.help.html:41 +#: ../templates/classic/html/help.html:21 +#: ../templates/classic/html/issue.index.html:81 +#: ../templates/minimal/html/_generic.help.html:41 #: ../templates/classic/html/_generic.help.html:40 #: ../templates/classic/html/issue.index.html:67 #: ../templates/minimal/html/_generic.help.html:40 msgid "<< previous" msgstr "<< zurück" +#: ../templates/classic/html/_generic.help.html:53 +#: ../templates/classic/html/help.html:28 +#: ../templates/classic/html/issue.index.html:89 +#: ../templates/minimal/html/_generic.help.html:53 #: ../templates/classic/html/_generic.help.html:50 #: ../templates/classic/html/issue.index.html:75 #: ../templates/minimal/html/_generic.help.html:50 msgid "${start}..${end} out of ${total}" msgstr "${start}..${end} von ${total}" +#: ../templates/classic/html/_generic.help.html:57 +#: ../templates/classic/html/help.html:32 +#: ../templates/classic/html/issue.index.html:92 +#: ../templates/minimal/html/_generic.help.html:57 #: ../templates/classic/html/_generic.help.html:54 #: ../templates/classic/html/issue.index.html:78 #: ../templates/minimal/html/_generic.help.html:54 @@ -2345,22 +2923,24 @@ msgid "${class} editing" msgstr "\"${class}\" bearbeiten" -#: ../templates/classic/html/_generic.index.html:14 -#: ../templates/classic/html/_generic.item.html:12 -#: ../templates/classic/html/file.item.html:9 -#: ../templates/classic/html/issue.index.html:16 -#: ../templates/classic/html/issue.item.html:28 -#: ../templates/classic/html/msg.item.html:26 -#: ../templates/classic/html/user.index.html:9 -#: ../templates/classic/html/user.item.html:28 -#: ../templates/minimal/html/_generic.index.html:14 -#: ../templates/minimal/html/_generic.item.html:12 -#: ../templates/minimal/html/user.index.html:9 -#: ../templates/minimal/html/user.item.html:18 -#: ../templates/minimal/html/user.register.html:14 -msgid "You are not allowed to view this page." -msgstr "Sie sind nicht berechtigt, diese Seite anzuzeigen." - +#: ../templates/classic/html/_generic.index.html:19 +#: ../templates/classic/html/_generic.item.html:16 +#: ../templates/classic/html/file.item.html:13 +#: ../templates/classic/html/issue.index.html:20 +#: ../templates/classic/html/issue.item.html:32 +#: ../templates/classic/html/msg.item.html:30 +#: ../templates/classic/html/user.index.html:13 +#: ../templates/classic/html/user.item.html:39 +#: ../templates/minimal/html/_generic.index.html:19 +#: ../templates/minimal/html/_generic.item.html:17 +#: ../templates/minimal/html/user.index.html:13 +#: ../templates/minimal/html/user.item.html:39 +#: ../templates/minimal/html/user.register.html:17 +msgid "Please login with your username and password." +msgstr "" + +#: ../templates/classic/html/_generic.index.html:28 +#: ../templates/minimal/html/_generic.index.html:28 #: ../templates/classic/html/_generic.index.html:22 #: ../templates/minimal/html/_generic.index.html:22 msgid "" @@ -2368,10 +2948,10 @@ "using this form. Commas, newlines and double quotes (\") must be handled " "delicately. You may include commas and newlines by enclosing the values in " "double-quotes (\"). Double quotes themselves must be quoted by doubling " -"(\"\"). </p> <p class=\"form-help\"> Multilink properties have their " -"multiple values colon (\":\") separated (... ,\"one:two:three\", ...) </p> " -"<p class=\"form-help\"> Remove entries by deleting their line. Add new " -"entries by appending them to the table - put an X in the id column. </p>" +"(\"\"). </p> <p class=\"form-help\"> Multilink properties have their multiple " +"values colon (\":\") separated (... ,\"one:two:three\", ...) </p> <p class=" +"\"form-help\"> Remove entries by deleting their line. Add new entries by " +"appending them to the table - put an X in the id column. </p>" msgstr "" "<p class=\"form-help\">Sie können hier die Einträge der Klasse \"${classname}\" " "bearbeiten. <strong>Hinweise:</strong></p>" @@ -2389,6 +2969,8 @@ "<li>Für neue Einträge fügen Sie Zeilen ein; " "geben Sie bei der ID-Spalte ein großes <tt>X</tt> an. </ul><p>" +#: ../templates/classic/html/_generic.index.html:50 +#: ../templates/minimal/html/_generic.index.html:50 #: ../templates/classic/html/_generic.index.html:44 #: ../templates/minimal/html/_generic.index.html:44 msgid "Edit Items" @@ -2407,6 +2989,7 @@ msgstr "Herunterladen" #: ../templates/classic/html/file.index.html:11 +#: ../templates/classic/html/file.item.html:27 #: ../templates/classic/html/file.item.html:23 #: ../templates/classic/html/file.item.html:51 msgid "Content Type" @@ -2418,6 +3001,7 @@ #: ../templates/classic/html/file.index.html:13 #: ../templates/classic/html/msg.item.html:38 +#: ../templates/classic/html/msg.item.html:48 msgid "Date" msgstr "Datum" @@ -2429,12 +3013,14 @@ msgid "File display" msgstr "Datei anzeigen" +#: ../templates/classic/html/file.item.html:23 #: ../templates/classic/html/file.item.html:18 #: ../templates/classic/html/user.item.html:39 #: ../templates/classic/html/user.register.html:17 msgid "Name" msgstr "Name" +#: ../templates/classic/html/file.item.html:45 #: ../templates/classic/html/file.item.html:41 msgid "download" msgstr "herunterladen" @@ -2453,6 +3039,11 @@ msgid "List of issues - ${tracker}" msgstr "Aufgabenliste - ${tracker}" +#: ../templates/classic/html/issue.index.html:10 +msgid "List of issues" +msgstr "" +"Aufgabenliste" + #: ../templates/classic/html/issue.index.html:6 msgid "List of issues" msgstr "Aufgabenliste" @@ -2465,72 +3056,98 @@ msgid "List of issues - ${query}" msgstr "Aufgabenliste - ${query}" +#: ../templates/classic/html/issue.index.html:27 +#: ../templates/classic/html/issue.item.html:49 #: ../templates/classic/html/issue.index.html:17 #: ../templates/classic/html/issue.item.html:38 msgid "Priority" msgstr "Priorität" +#: ../templates/classic/html/issue.index.html:28 #: ../templates/classic/html/issue.index.html:18 msgid "ID" msgstr "ID" +#: ../templates/classic/html/issue.index.html:29 #: ../templates/classic/html/issue.index.html:19 msgid "Creation" msgstr "Erstellungsdatum" +#: ../templates/classic/html/issue.index.html:30 #: ../templates/classic/html/issue.index.html:20 msgid "Activity" msgstr "Aktivität" +#: ../templates/classic/html/issue.index.html:31 #: ../templates/classic/html/issue.index.html:21 msgid "Actor" msgstr "Akteur" +#: ../templates/classic/html/issue.index.html:32 +#: ../templates/classic/html/keyword.item.html:37 +msgid "Keyword" +msgstr "" + #: ../templates/classic/html/issue.index.html:22 +#, (old key, topic replaced by "keyword") +#, Schlagwort <-> verschlagworten. Fachbegriff; besser als Stichwort oder Thema! msgid "Topic" msgstr "Schlagwort" -# Schlagwort <-> verschlagworten. Fachbegriff; besser als Stichwort oder Thema! - + +#: ../templates/classic/html/issue.index.html:33 +#: ../templates/classic/html/issue.item.html:44 #: ../templates/classic/html/issue.index.html:23 #: ../templates/classic/html/issue.item.html:33 msgid "Title" msgstr "Titel" +#: ../templates/classic/html/issue.index.html:34 +#: ../templates/classic/html/issue.item.html:51 #: ../templates/classic/html/issue.index.html:24 #: ../templates/classic/html/issue.item.html:40 msgid "Status" msgstr "Status" +#: ../templates/classic/html/issue.index.html:35 #: ../templates/classic/html/issue.index.html:25 msgid "Creator" msgstr "Ersteller" +#: ../templates/classic/html/issue.index.html:36 #: ../templates/classic/html/issue.index.html:26 msgid "Assigned To" msgstr "Zugewiesen" +#: ../templates/classic/html/issue.index.html:105 #: ../templates/classic/html/issue.index.html:90 msgid "Download as CSV" msgstr "Als CSV-Datei herunterladen" +#: ../templates/classic/html/issue.index.html:115 #: ../templates/classic/html/issue.index.html:98 msgid "Sort on:" msgstr "Sortieren:" +#: ../templates/classic/html/issue.index.html:119 +#: ../templates/classic/html/issue.index.html:140 #: ../templates/classic/html/issue.index.html:101 #: ../templates/classic/html/issue.index.html:118 msgid "- nothing -" msgstr "- nichts -" +#: ../templates/classic/html/issue.index.html:127 +#: ../templates/classic/html/issue.index.html:148 #: ../templates/classic/html/issue.index.html:109 #: ../templates/classic/html/issue.index.html:126 msgid "Descending:" msgstr "Absteigend:" +#: ../templates/classic/html/issue.index.html:136 #: ../templates/classic/html/issue.index.html:115 msgid "Group on:" msgstr "Gruppieren:" +#: ../templates/classic/html/issue.index.html:155 #: ../templates/classic/html/issue.index.html:132 msgid "Redisplay" msgstr "Aktualisieren" @@ -2559,40 +3176,59 @@ msgid "Issue${id} Editing" msgstr "Aufgabe ${id} bearbeiten" +#: ../templates/classic/html/issue.item.html:56 #: ../templates/classic/html/issue.item.html:45 msgid "Superseder" msgstr "Ersetzt durch" +#: ../templates/classic/html/issue.item.html:61 +msgid "View:" +msgstr "Anzeigen:" + #: ../templates/classic/html/issue.item.html:50 msgid "View: ${link}" msgstr "Anzeigen: ${link}" +#: ../templates/classic/html/issue.item.html:67 #: ../templates/classic/html/issue.item.html:54 msgid "Nosy List" msgstr "Interessenten" +#: ../templates/classic/html/issue.item.html:76 #: ../templates/classic/html/issue.item.html:63 msgid "Assigned To" msgstr "Zugewiesen" +#: ../templates/classic/html/issue.item.html:78 +#: ../templates/classic/html/page.html:103 +#: ../templates/minimal/html/page.html:102 +msgid "Keywords" +msgstr "Schlagwörter" + #: ../templates/classic/html/issue.item.html:65 msgid "Topics" msgstr "Schlagwörter" -# siehe die Anmerkung zu "Schlagwort" - + +#: ../templates/classic/html/issue.item.html:86 #: ../templates/classic/html/issue.item.html:73 msgid "Change Note" msgstr "Änderungsnotiz" +#: ../templates/classic/html/issue.item.html:94 #: ../templates/classic/html/issue.item.html:81 msgid "File" msgstr "Datei" +#: ../templates/classic/html/issue.item.html:106 #: ../templates/classic/html/issue.item.html:99 msgid "Make a copy" msgstr "kopieren" #: ../templates/classic/html/issue.item.html:100 +#: ../templates/classic/html/issue.item.html:114 +#: ../templates/classic/html/user.item.html:153 +#: ../templates/classic/html/user.register.html:69 +#: ../templates/minimal/html/user.item.html:153 msgid "" "<table class=\"form\"> <tr> <td>Note: </td> <th class=\"required" "\">highlighted</th> <td> fields are required.</td> </tr> </table>" @@ -2601,6 +3237,7 @@ "\">Fett markierte</th> <td> Felder sind immer auszufüllen. </td> </tr> " "</table>" +#: ../templates/classic/html/issue.item.html:128 #: ../templates/classic/html/issue.item.html:114 msgid "" "Created on <b>${creation}</b> by <b>${creator}</b>, last changed <b>" @@ -2609,53 +3246,68 @@ "Erstellt am <b>${creation}</b> durch <b>${creator}</b>, geändert am <b>" "${activity}</b> durch <b>${actor}</b>." +#: ../templates/classic/html/issue.item.html:132 +#: ../templates/classic/html/msg.item.html:61 #: ../templates/classic/html/issue.item.html:118 #: ../templates/classic/html/msg.item.html:51 msgid "Files" msgstr "Dateien" +#: ../templates/classic/html/issue.item.html:134 +#: ../templates/classic/html/msg.item.html:63 #: ../templates/classic/html/issue.item.html:120 #: ../templates/classic/html/msg.item.html:53 msgid "File name" msgstr "Dateiname" +#: ../templates/classic/html/issue.item.html:135 +#: ../templates/classic/html/msg.item.html:64 #: ../templates/classic/html/issue.item.html:121 #: ../templates/classic/html/msg.item.html:54 msgid "Uploaded" msgstr "Hochgeladen" +#: ../templates/classic/html/issue.item.html:136 #: ../templates/classic/html/issue.item.html:122 msgid "Type" msgstr "Typ" +#: ../templates/classic/html/issue.item.html:137 #: ../templates/classic/html/issue.item.html:123 #: ../templates/classic/html/query.edit.html:30 msgid "Edit" msgstr "bearbeiten" +#: ../templates/classic/html/issue.item.html:138 #: ../templates/classic/html/issue.item.html:124 msgid "Remove" msgstr "verbergen" +#: ../templates/classic/html/issue.item.html:158 +#: ../templates/classic/html/issue.item.html:179 #: ../templates/classic/html/issue.item.html:144 #: ../templates/classic/html/issue.item.html:165 #: ../templates/classic/html/query.edit.html:50 msgid "remove" msgstr "verbergen" +#: ../templates/classic/html/issue.item.html:165 #: ../templates/classic/html/issue.item.html:151 #: ../templates/classic/html/msg.index.html:9 msgid "Messages" msgstr "Kommentare" +#: ../templates/classic/html/issue.item.html:169 #: ../templates/classic/html/issue.item.html:155 msgid "msg${id} (view)" msgstr "Kommentar msg${id} (betrachten)" +#: ../templates/classic/html/issue.item.html:170 #: ../templates/classic/html/issue.item.html:156 msgid "Author: ${author}" msgstr "Autor: ${author}" +#: ../templates/classic/html/issue.item.html:172 #: ../templates/classic/html/issue.item.html:158 msgid "Date: ${date}" msgstr "Datum: ${date}" @@ -2668,129 +3320,169 @@ msgid "Issue searching" msgstr "Aufgaben suchen" +#: ../templates/classic/html/issue.search.html:31 #: ../templates/classic/html/issue.search.html:25 msgid "Filter on" msgstr "Filtern" +#: ../templates/classic/html/issue.search.html:32 #: ../templates/classic/html/issue.search.html:26 msgid "Display" msgstr "anzeigen" +#: ../templates/classic/html/issue.search.html:33 #: ../templates/classic/html/issue.search.html:27 msgid "Sort on" msgstr "sortieren" +#: ../templates/classic/html/issue.search.html:34 #: ../templates/classic/html/issue.search.html:28 msgid "Group on" msgstr "gruppieren" +#: ../templates/classic/html/issue.search.html:38 #: ../templates/classic/html/issue.search.html:32 msgid "All text*:" msgstr "Volltext*:" +#: ../templates/classic/html/issue.search.html:46 #: ../templates/classic/html/issue.search.html:40 msgid "Title:" msgstr "Titel:" +#: ../templates/classic/html/issue.search.html:56 +msgid "Keyword:" +msgstr "" + #: ../templates/classic/html/issue.search.html:50 +#, (old key, topic replaced by "keyword") msgid "Topic:" msgstr "Schlagwort:" -# siehe die Anmerkung zu "Schlagwort" #: ../templates/classic/html/issue.search.html:58 +#: ../templates/classic/html/issue.search.html:123 +#: ../templates/classic/html/issue.search.html:139 +#: ../templates/classic/html/issue.search.html:114 +#: ../templates/classic/html/issue.search.html:130 +msgid "not selected" +msgstr "" +"nicht ausgewählt" + +#: ../templates/classic/html/issue.search.html:67 msgid "ID:" msgstr "ID:" +#: ../templates/classic/html/issue.search.html:75 #: ../templates/classic/html/issue.search.html:66 msgid "Creation Date:" msgstr "Erstellungsdatum:" +#: ../templates/classic/html/issue.search.html:86 #: ../templates/classic/html/issue.search.html:77 msgid "Creator:" msgstr "Ersteller:" +#: ../templates/classic/html/issue.search.html:88 #: ../templates/classic/html/issue.search.html:79 msgid "created by me" msgstr "von mir erstellt" +#: ../templates/classic/html/issue.search.html:97 #: ../templates/classic/html/issue.search.html:88 msgid "Activity:" msgstr "Aktivität:" +#: ../templates/classic/html/issue.search.html:108 #: ../templates/classic/html/issue.search.html:99 msgid "Actor:" msgstr "Akteur:" +#: ../templates/classic/html/issue.search.html:110 #: ../templates/classic/html/issue.search.html:101 msgid "done by me" msgstr "von mir zuletzt geändert" +#: ../templates/classic/html/issue.search.html:121 #: ../templates/classic/html/issue.search.html:112 msgid "Priority:" msgstr "Priorität:" -#: ../templates/classic/html/issue.search.html:114 -#: ../templates/classic/html/issue.search.html:130 -msgid "not selected" -msgstr "nicht gesetzt" - +#: ../templates/classic/html/issue.search.html:134 #: ../templates/classic/html/issue.search.html:125 msgid "Status:" msgstr "Status:" +#: ../templates/classic/html/issue.search.html:137 #: ../templates/classic/html/issue.search.html:128 msgid "not resolved" msgstr "ungelöst" +#: ../templates/classic/html/issue.search.html:152 #: ../templates/classic/html/issue.search.html:143 msgid "Assigned to:" msgstr "Zugewiesen:" +#: ../templates/classic/html/issue.search.html:155 #: ../templates/classic/html/issue.search.html:146 msgid "assigned to me" msgstr "mir zugewiesen" +#: ../templates/classic/html/issue.search.html:157 #: ../templates/classic/html/issue.search.html:148 msgid "unassigned" msgstr "nicht zugewiesen" +#: ../templates/classic/html/issue.search.html:167 #: ../templates/classic/html/issue.search.html:158 msgid "No Sort or group:" msgstr "" "Nicht sortieren/gruppieren:" +#: ../templates/classic/html/issue.search.html:175 #: ../templates/classic/html/issue.search.html:166 msgid "Pagesize:" msgstr "Einträge/Seite:" +#: ../templates/classic/html/issue.search.html:181 #: ../templates/classic/html/issue.search.html:164 msgid "Start With:" msgstr "Starten bei:" +#: ../templates/classic/html/issue.search.html:187 #: ../templates/classic/html/issue.search.html:170 msgid "Sort Descending:" msgstr "Absteigend sortieren:" +#: ../templates/classic/html/issue.search.html:194 #: ../templates/classic/html/issue.search.html:177 msgid "Group Descending:" msgstr "Absteigend gruppieren:" +#: ../templates/classic/html/issue.search.html:201 #: ../templates/classic/html/issue.search.html:184 msgid "Query name**:" msgstr "Speichern unter**:" -#: ../templates/classic/html/issue.search.html:204 +#: ../templates/classic/html/issue.search.html:213 +#: ../templates/classic/html/page.html:43 +#: ../templates/classic/html/page.html:92 #: ../templates/classic/html/page.html:31 #: ../templates/classic/html/page.html:60 +#: ../templates/classic/html/user.help-search.html:69 +#: ../templates/classic/html/issue.search.html:204 +#: ../templates/minimal/html/page.html:43 +#: ../templates/minimal/html/page.html:91 #: ../templates/minimal/html/page.html:31 msgid "Search" msgstr "Suchen" +#: ../templates/classic/html/issue.search.html:218 #: ../templates/classic/html/issue.search.html:209 msgid "*: The \"all text\" field will look in message bodies and issue titles" msgstr "" "*: Das Feld \"Volltext\" durchsucht Titel von Aufgaben und Kommentartexte" +#: ../templates/classic/html/issue.search.html:221 #: ../templates/classic/html/issue.search.html:212 msgid "" "**: If you supply a name, the query will be saved off and available as a link " @@ -2806,31 +3498,22 @@ #: ../templates/classic/html/keyword.item.html:5 msgid "Keyword editing" msgstr "Schlagwörter bearbeiten" -# siehe die Anmerkung zu "Schlagwort" #: ../templates/classic/html/keyword.item.html:11 msgid "Existing Keywords" msgstr "Vorhandene Schlagwörter" -# siehe die Anmerkung zu "Schlagwort" #: ../templates/classic/html/keyword.item.html:20 msgid "" "To edit an existing keyword (for spelling or typing errors), click on its " "entry above." msgstr "Um ein bestehendes Schlagwort zu bearbeiten, klicken Sie darauf." -# siehe die Anmerkung zu "Schlagwort" #: ../templates/classic/html/keyword.item.html:27 msgid "To create a new keyword, enter it below and click \"Submit New Entry\"." msgstr "" "Um ein neues Schlagwort hinzufügen, tragen Sie es hier ein und klicken Sie " "auf \"Eintrag speichern\"." -# siehe die Anmerkung zu "Schlagwort" - -#: ../templates/classic/html/keyword.item.html:37 -msgid "Keyword" -msgstr "Schlagwort" -# siehe die Anmerkung zu "Schlagwort" ("Topic") #: ../templates/classic/html/msg.index.html:3 msgid "List of messages - ${tracker}" @@ -2864,39 +3547,56 @@ msgid "Message${id} Editing" msgstr "Kommentar ${id} bearbeiten" +#: ../templates/classic/html/msg.item.html:38 #: ../templates/classic/html/msg.item.html:28 msgid "Author" msgstr "Autor" +#: ../templates/classic/html/msg.item.html:43 #: ../templates/classic/html/msg.item.html:33 msgid "Recipients" msgstr "Empfänger" +#: ../templates/classic/html/msg.item.html:54 #: ../templates/classic/html/msg.item.html:44 msgid "Content" msgstr "Inhalt" +#: ../templates/classic/html/page.html:54 +#: ../templates/minimal/html/page.html:53 #: ../templates/classic/html/page.html:28 msgid "<b>Your Queries</b> (<a href=\"query?@template=edit\">edit</a>)" msgstr "<b>Abfragen</b> (<a href=\"query?@template=edit\">bearbeiten</a>)" +#: ../templates/classic/html/page.html:65 +#: ../templates/minimal/html/page.html:64 #: ../templates/classic/html/page.html:39 msgid "Issues" msgstr "Aufgaben" +#: ../templates/classic/html/page.html:67 +#: ../templates/classic/html/page.html:105 +#: ../templates/minimal/html/page.html:66 +#: ../templates/minimal/html/page.html:104 #: ../templates/classic/html/page.html:41 #: ../templates/classic/html/page.html:60 msgid "Create New" msgstr "neuer Eintrag" +#: ../templates/classic/html/page.html:69 +#: ../templates/minimal/html/page.html:68 #: ../templates/classic/html/page.html:43 msgid "Show Unassigned" msgstr "nicht zugewiesen" +#: ../templates/classic/html/page.html:81 +#: ../templates/minimal/html/page.html:80 #: ../templates/classic/html/page.html:45 msgid "Show All" msgstr "alle anzeigen" +#: ../templates/classic/html/page.html:93 +#: ../templates/minimal/html/page.html:92 #: ../templates/classic/html/page.html:48 msgid "Show issue:" msgstr "Aufgabe anzeigen:" @@ -3036,6 +3736,7 @@ msgstr "[Abfrage ist verborgen]" #: ../templates/classic/html/query.edit.html:67 +#: ../templates/classic/html/query.edit.html:94 #: ../templates/classic/html/query.edit.html:92 msgid "edit" msgstr "bearbeiten" @@ -3052,10 +3753,12 @@ msgid "Delete" msgstr "Löschen" +#: ../templates/classic/html/query.edit.html:96 #: ../templates/classic/html/query.edit.html:90 msgid "[not yours to edit]" msgstr "[nicht Ihr Eintrag]" +#: ../templates/classic/html/query.edit.html:104 #: ../templates/classic/html/query.edit.html:96 msgid "Save Selection" msgstr "Auswahl speichern" @@ -3097,6 +3800,16 @@ "within it to complete the reset process." msgstr "Danach wird eine Bestätigungs-E-Mail verschickt. Bitte folgen Sie den Anweisungen darin, um ihr Passwort zurückzusetzen." +#: ../templates/classic/html/user.help-search.html:73 +msgid "Pagesize" +msgstr "Einträge/Seite" + +#: ../templates/classic/html/user.help.html:43 +msgid "" +"Your browser is not capable of using frames; you should be redirected " +"immediately, or visit ${link}." +msgstr "" + #: ../templates/classic/html/user.index.html:3 #: ../templates/minimal/html/user.index.html:3 msgid "User listing - ${tracker}" @@ -3237,6 +3950,45 @@ msgid "Registering with ${tracker}" msgstr "Registrieren für ${tracker}" +#: ../templates/classic/html/user.register.html:21 +#: ../templates/minimal/html/user.register.html:29 +#: ../templates/classic/html/user.item.html:43 +#: ../templates/classic/html/user.register.html:21 +#: ../templates/minimal/html/user.item.html:40 +#: ../templates/minimal/html/user.register.html:26 +msgid "Login Name" +msgstr "Benutzername" + +#: ../templates/classic/html/user.item.html:42 +#: ../templates/classic/html/user.register.html:25 +#: ../templates/minimal/html/user.register.html:33 +#: ../templates/minimal/html/user.item.html:31 +#: ../templates/minimal/html/user.register.html:30 +msgid "Login Password" +msgstr "Paßwort" + +#: ../templates/classic/html/user.item.html:46 +#: ../templates/classic/html/user.register.html:29 +#: ../templates/minimal/html/user.register.html:37 +#: ../templates/minimal/html/user.item.html:35 +#: ../templates/minimal/html/user.register.html:34 +msgid "Confirm Password" +msgstr "Paßwort bestätigen" + +#: ../templates/classic/html/user.register.html:41 +#: ../templates/classic/html/user.item.html:61 +#: ../templates/classic/html/user.register.html:41 +msgid "Phone" +msgstr "Telefon" + +#: ../templates/classic/html/user.item.html:83 +#: ../templates/classic/html/user.register.html:49 +#: ../templates/minimal/html/user.register.html:49 +#: ../templates/minimal/html/user.item.html:63 +#: ../templates/minimal/html/user.register.html:46 +msgid "E-mail address" +msgstr "Email-Adresse" + #: ../templates/classic/html/user.rego_progress.html:4 #: ../templates/minimal/html/user.rego_progress.html:4 msgid "Registration in progress - ${tracker}" @@ -3254,22 +4006,6 @@ "the registration process, visit the link indicated in the email." msgstr "Sie werden in Kürze eine Bestätigungs-E-Mail erhalten. Um die Registrierung abzuschließen, klicken Sie auf den enthaltenen Link." -#: ../templates/minimal/html/home.html:2 -msgid "Tracker home - ${tracker}" -msgstr "Tracker-Start - ${tracker}" - -#: ../templates/minimal/html/home.html:4 -msgid "Tracker home" -msgstr "Tracker-Start" - -#: ../templates/minimal/html/home.html:16 -msgid "Please select from one of the menu options on the left." -msgstr "Bitte wählen Sie links eine Menu-Option." - -#: ../templates/minimal/html/home.html:19 -msgid "Please log in or register." -msgstr "Bitte anmelden oder registrieren" - #: ../templates/minimal/html/page.html:38 msgid "Hello,<br>${user}" msgstr "Hallo,<br>${user}" @@ -3310,10 +4046,6 @@ msgid "Paged Output:" msgstr "seitenweise ausgeben:" -#: ../templates/classic(th)/html/issue.search.html:XXX -msgid "Pagesize" -msgstr "Einträge/Seite" - #: ../templates/classic/html/user.item.html:XXX msgid "username" msgstr "Benutzername" @@ -3323,6 +4055,14 @@ msgstr "Name" #: ../templates/classic/html/user.item.html:XXX +msgid "firstname" +msgstr "Vorname" + +#: ../templates/classic/html/user.item.html:XXX +msgid "lastname" +msgstr "Nachname" + +#: ../templates/classic/html/user.item.html:XXX msgid "address" msgstr "Mail-Adresse" @@ -3361,13 +4101,15 @@ msgstr "in Diskussion" #: ../templates/classic/initial_data.py:15 -msgid "in-progress" -msgstr "in Arbeit" - #: ../templates/classic/initial_data.py:16 msgid "need-eg" msgstr "Beispiel erbeten" +#: ../templates/classic/initial_data.py:16 +#: ../templates/classic/initial_data.py:15 +msgid "in-progress" +msgstr "in Arbeit" + #: ../templates/classic/initial_data.py:17 msgid "testing" msgstr "im Test" @@ -3380,9 +4122,21 @@ msgid "resolved" msgstr "erledigt" -#: ../scripts/roundup_mailgw.py:36 -msgid "try %(prog)s --help for usage info" -msgstr "%(prog)s --help gibt eine Hilfe aus" +#: ../templates/minimal/html/home.html:2 +msgid "Tracker home - ${tracker}" +msgstr "Tracker-Start - ${tracker}" + +#: ../templates/minimal/html/home.html:4 +msgid "Tracker home" +msgstr "Tracker-Start" + +#: ../templates/minimal/html/home.html:16 +msgid "Please select from one of the menu options on the left." +msgstr "Bitte wählen Sie links eine Menu-Option." + +#: ../templates/minimal/html/home.html:19 +msgid "Please log in or register." +msgstr "Bitte anmelden oder registrieren" #: ../templates/classic(th)/html/issue.item.html msgid "(cal)"
--- a/roundup/roundupdb.py Thu Aug 07 06:21:07 2008 +0000 +++ b/roundup/roundupdb.py Thu Aug 07 06:31:16 2008 +0000 @@ -16,7 +16,7 @@ # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. # -# $Id: roundupdb.py,v 1.138 2008-01-08 20:58:31 richard Exp $ +# $Id: roundupdb.py,v 1.139 2008-08-07 06:31:16 richard Exp $ """Extending hyperdb with types specific to issue-tracking. """ @@ -422,7 +422,9 @@ # Default the reply to the first message msgs = self.get(nodeid, 'messages') # Assume messages are sorted by increasing message number here - if msgs[0] != nodeid: + # If the issue is just being created, and the submitter didn't + # provide a message, then msgs will be empty. + if msgs and msgs[0] != nodeid: inreplyto = messages.get(msgs[0], 'messageid') if inreplyto: writer.addheader('In-Reply-To', inreplyto)
