diff locale/de.po @ 6942:e09095701620

update for latest flake8 changes
author John Rouillard <rouilj@ieee.org>
date Thu, 08 Sep 2022 20:21:35 -0400
parents 8c9ee2d64639
children 5a84ddf7aa8b
line wrap: on
line diff
--- a/locale/de.po	Thu Sep 08 18:49:46 2022 -0400
+++ b/locale/de.po	Thu Sep 08 20:21:35 2022 -0400
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: Roundup 1.5.0\n"
 "Report-Msgid-Bugs-To: roundup-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2022-07-12 19:10-0400\n"
+"POT-Creation-Date: 2022-09-08 20:19-0400\n"
 "PO-Revision-Date: 2016-04-11 09:13+0200\n"
 "Last-Translator: Tobias Herp <tobias.herp@gmx.de>\n"
 "Language-Team: German Translators <roundup-devel@lists.sourceforge.net>\n"
@@ -26,7 +26,7 @@
 "Sie sind nicht berechtigt, die Aktion(en) %(action)s auf die Klasse "
 "%(classname)s anzuwenden."
 
-#: ../roundup/actions.py:64 ../roundup/cgi/actions.py:242
+#: ../roundup/actions.py:64 ../roundup/cgi/actions.py:240
 msgid "You may not retire the admin or anonymous user"
 msgstr "Sie können den Administrator oder den Gast-Benutzer nicht löschen"
 
@@ -339,8 +339,8 @@
 #: ../roundup/admin.py:917 ../roundup/admin.py:944 ../roundup/admin.py:971
 #: ../roundup/admin.py:1046 ../roundup/admin.py:1113 ../roundup/admin.py:1199
 #: ../roundup/admin.py:1260 ../roundup/admin.py:1287 ../roundup/admin.py:1323
-#: ../roundup/admin.py:1451 ../roundup/admin.py:1538
-#: ../roundup/admin.py:420:552 :1113 :1199:1260 :1287:1323 :1451:1538 :625:716
+#: ../roundup/admin.py:1451 ../roundup/admin.py:1535
+#: ../roundup/admin.py:420:552 :1113 :1199:1260 :1287:1323 :1451:1535 :625:716
 #: :774:858 :917:944 :971:1046
 msgid "Not enough arguments supplied"
 msgstr "Zu wenig Parameter übergeben"
@@ -1039,7 +1039,7 @@
 "        verbergen).\n"
 "        "
 
-#: ../roundup/admin.py:1513
+#: ../roundup/admin.py:1510
 msgid ""
 "Usage: importtables export_dir\n"
 "\n"
@@ -1047,7 +1047,7 @@
 "        "
 msgstr ""
 
-#: ../roundup/admin.py:1520
+#: ../roundup/admin.py:1517
 msgid ""
 "Usage: pack period | date\n"
 "\n"
@@ -1086,11 +1086,11 @@
 "\n"
 "        "
 
-#: ../roundup/admin.py:1548
+#: ../roundup/admin.py:1545
 msgid "Invalid format"
 msgstr "Ungültiges Format"
 
-#: ../roundup/admin.py:1559
+#: ../roundup/admin.py:1556
 msgid ""
 "Usage: reindex [classname|designator]*\n"
 "        Re-generate a tracker's search indexes.\n"
@@ -1106,12 +1106,12 @@
 "        normalerweise automatisch.\n"
 "        "
 
-#: ../roundup/admin.py:1573
+#: ../roundup/admin.py:1570
 #, python-format
 msgid "no such item \"%(designator)s\""
 msgstr "Der Eintrag \"%(designator)s\" existiert nicht"
 
-#: ../roundup/admin.py:1583
+#: ../roundup/admin.py:1580
 #, fuzzy
 msgid ""
 "Usage: security [Role name]\n"
@@ -1123,48 +1123,48 @@
 "        Zeigt die Berechtigungen einer oder aller Rollen an.\n"
 "        "
 
-#: ../roundup/admin.py:1592
+#: ../roundup/admin.py:1589
 #, fuzzy, python-format
 msgid "No such Role \"%(role)s\"\n"
 msgstr "Die Rolle \"%(role)s\" existiert nicht "
 
-#: ../roundup/admin.py:1598
+#: ../roundup/admin.py:1595
 #, fuzzy, python-format
 msgid "New Web users get the Roles \"%(role)s\"\n"
 msgstr "Neue Web-Benutzer erhalten die Rollen \"%(role)s\""
 
-#: ../roundup/admin.py:1601
+#: ../roundup/admin.py:1598
 #, fuzzy, python-format
 msgid "New Web users get the Role \"%(role)s\"\n"
 msgstr "Neue Web-Benutzer erhalten die Rolle \"%(role)s\""
 
-#: ../roundup/admin.py:1605
+#: ../roundup/admin.py:1602
 #, fuzzy, python-format
 msgid "New Email users get the Roles \"%(role)s\"\n"
 msgstr "Neue E-Mail-Benutzer erhalten die Rollen \"%(role)s\""
 
-#: ../roundup/admin.py:1607
+#: ../roundup/admin.py:1604
 #, fuzzy, python-format
 msgid "New Email users get the Role \"%(role)s\"\n"
 msgstr "Neue E-Mail-Benutzer erhalten die Rolle \"%(role)s\""
 
-#: ../roundup/admin.py:1610
+#: ../roundup/admin.py:1607
 #, fuzzy, python-format
 msgid "Role \"%(name)s\":\n"
 msgstr "Rolle \"%(name)s\":"
 
-#: ../roundup/admin.py:1615
+#: ../roundup/admin.py:1612
 #, fuzzy
 msgid " %(description)s (%(name)s for \"%(klass)s\""
 msgstr "%(description)s (%(name)s einzig für \"%(klass)s\")"
 
-#: ../roundup/admin.py:1615
+#: ../roundup/admin.py:1612
 #, fuzzy, python-format
 msgid " %(description)s (%(name)s for \"%(klass)s\": %(properties)s only)\n"
 msgstr ""
 " %(description)s (%(name)s für \"%(klass)s\": ausschließlich %(properties)s)"
 
-#: ../roundup/admin.py:1627
+#: ../roundup/admin.py:1624
 #, python-format
 msgid ""
 "\n"
@@ -1172,17 +1172,17 @@
 "\n"
 msgstr ""
 
-#: ../roundup/admin.py:1630
+#: ../roundup/admin.py:1627
 #, fuzzy, python-format
 msgid " %(description)s (%(name)s for \"%(klass)s\" only)\n"
 msgstr "%(description)s (%(name)s einzig für \"%(klass)s\")"
 
-#: ../roundup/admin.py:1633
+#: ../roundup/admin.py:1630
 #, fuzzy, python-format
 msgid " %(description)s (%(name)s)\n"
 msgstr " %(description)s (%(name)s)"
 
-#: ../roundup/admin.py:1637
+#: ../roundup/admin.py:1634
 #, fuzzy
 msgid ""
 "Usage: migrate\n"
@@ -1226,42 +1226,42 @@
 "        es nicht nötig ist; also gewöhnen Sie es sich einfach an.\n"
 "        "
 
-#: ../roundup/admin.py:1658
+#: ../roundup/admin.py:1655
 msgid "Tracker updated"
 msgstr "Tracker aktualisiert"
 
-#: ../roundup/admin.py:1661
+#: ../roundup/admin.py:1658
 msgid "No migration action required"
 msgstr "Keine Migration notwendig"
 
-#: ../roundup/admin.py:1687
+#: ../roundup/admin.py:1684
 #, python-format
 msgid "Unknown command \"%(command)s\" (\"help commands\" for a list)"
 msgstr "Der Befehl \"%(command)s\" existiert nicht (siehe \"help commands\")"
 
-#: ../roundup/admin.py:1693
+#: ../roundup/admin.py:1690
 #, python-format
 msgid "Multiple commands match \"%(command)s\": %(list)s"
 msgstr "Zur Abkürzung \"%(command)s\" passen mehrere Befehle: %(list)s"
 
-#: ../roundup/admin.py:1702
+#: ../roundup/admin.py:1699
 msgid "Enter tracker home: "
 msgstr "Tracker-Verzeichnis: "
 
 # ../roundup/admin.py:1263 :1269 :1289
-#: ../roundup/admin.py:1711 ../roundup/admin.py:1717 ../roundup/admin.py:1751
-#: ../roundup/admin.py:1711:1717:1751
+#: ../roundup/admin.py:1708 ../roundup/admin.py:1714 ../roundup/admin.py:1748
+#: ../roundup/admin.py:1708:1714:1748
 #, python-format
 msgid "Error: %(message)s"
 msgstr "Fehler: %(message)s"
 
-#: ../roundup/admin.py:1725 ../roundup/admin.py:1729
-#: ../roundup/admin.py:1725:1729
+#: ../roundup/admin.py:1722 ../roundup/admin.py:1726
+#: ../roundup/admin.py:1722:1726
 #, python-format
 msgid "Error: Couldn't open tracker: %(message)s"
 msgstr "Fehler: Die Tracker-Instanz konnte nicht geöffnet werden: %(message)s"
 
-#: ../roundup/admin.py:1764
+#: ../roundup/admin.py:1761
 #, python-format
 msgid ""
 "Roundup %s ready for input.\n"
@@ -1270,34 +1270,34 @@
 "Roundup %s ist bereit.\n"
 "Schreiben Sie \"help\", um zur Hilfe zu gelangen."
 
-#: ../roundup/admin.py:1769
+#: ../roundup/admin.py:1766
 msgid "Note: command history and editing not available"
 msgstr "Bemerkung: Befehlsverlauf/-bearbeitung möglicherweise nicht verfügbar"
 
-#: ../roundup/admin.py:1773
+#: ../roundup/admin.py:1770
 msgid "roundup> "
 msgstr "roundup> "
 
-#: ../roundup/admin.py:1775
+#: ../roundup/admin.py:1772
 msgid "exit..."
 msgstr "beenden..."
 
-#: ../roundup/admin.py:1788
+#: ../roundup/admin.py:1785
 msgid "There are unsaved changes. Commit them (y/N)? "
 msgstr "Es gibt noch ungespeicherte Änderungen. Änderungen speichern (y/N)?"
 
-#: ../roundup/backends/back_anydbm.py:174
-#: ../roundup/backends/rdbms_common.py:888
+#: ../roundup/backends/back_anydbm.py:193 ../roundup/backends/back_lmdb.py:251
+#: ../roundup/backends/rdbms_common.py:920
 #, python-format
 msgid "Class \"%s\" already defined."
 msgstr ""
 
-#: ../roundup/backends/back_anydbm.py:235
-#: ../roundup/backends/sessions_dbm.py:55
+#: ../roundup/backends/back_anydbm.py:254 ../roundup/backends/back_lmdb.py:312
+#: ../roundup/backends/sessions_dbm.py:56
 msgid "Couldn't identify database type"
 msgstr "Konnte den Datenbanktyp nicht ermitteln"
 
-#: ../roundup/backends/back_anydbm.py:269
+#: ../roundup/backends/back_anydbm.py:288 ../roundup/backends/back_lmdb.py:346
 #, fuzzy, python-format
 msgid ""
 "Couldn't open database - the required module '%s' (as dbm.gnu) is not "
@@ -1306,220 +1306,241 @@
 "Konnte die Datenbank nicht öffnen - das erforderliche Modul '%s' ist nicht "
 "verfügbar"
 
-#: ../roundup/backends/back_anydbm.py:272
+#: ../roundup/backends/back_anydbm.py:291 ../roundup/backends/back_lmdb.py:349
 #, 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:828
-#: ../roundup/backends/back_anydbm.py:841
-#: ../roundup/backends/back_anydbm.py:1114
-#: ../roundup/backends/back_anydbm.py:1149
-#: ../roundup/backends/back_anydbm.py:1375
-#: ../roundup/backends/back_anydbm.py:1393
-#: ../roundup/backends/back_anydbm.py:1439
-#: ../roundup/backends/back_anydbm.py:2064
-#: ../roundup/backends/back_anydbm.py:828:841
-#: ../roundup/backends/rdbms_common.py:1657
-#: ../roundup/backends/rdbms_common.py:1904
-#: ../roundup/backends/rdbms_common.py:2139
-#: ../roundup/backends/rdbms_common.py:2159
-#: ../roundup/backends/rdbms_common.py:2212
-#: ../roundup/backends/rdbms_common.py:3158
-#: ../roundup/backends/rdbms_common.py:1657:1904 :1114:1149 :1375:1393:1439
-#: :2064 :2139:2159 :2212:3158
+#: ../roundup/backends/back_anydbm.py:847
+#: ../roundup/backends/back_anydbm.py:860
+#: ../roundup/backends/back_anydbm.py:1133
+#: ../roundup/backends/back_anydbm.py:1168
+#: ../roundup/backends/back_anydbm.py:1394
+#: ../roundup/backends/back_anydbm.py:1412
+#: ../roundup/backends/back_anydbm.py:1458
+#: ../roundup/backends/back_anydbm.py:2083
+#: ../roundup/backends/back_anydbm.py:847:860
+#: ../roundup/backends/back_lmdb.py:905 ../roundup/backends/back_lmdb.py:918
+#: ../roundup/backends/back_lmdb.py:1191 ../roundup/backends/back_lmdb.py:1226
+#: ../roundup/backends/back_lmdb.py:1452 ../roundup/backends/back_lmdb.py:1470
+#: ../roundup/backends/back_lmdb.py:1516 ../roundup/backends/back_lmdb.py:2138
+#: ../roundup/backends/back_lmdb.py:905:918
+#: ../roundup/backends/rdbms_common.py:1689
+#: ../roundup/backends/rdbms_common.py:1936
+#: ../roundup/backends/rdbms_common.py:2171
+#: ../roundup/backends/rdbms_common.py:2191
+#: ../roundup/backends/rdbms_common.py:2244
+#: ../roundup/backends/rdbms_common.py:3190
+#: ../roundup/backends/rdbms_common.py:1689:1936 :1133:1168 :1191:1226
+#: :1394:1412 :1452:1470:1458 :1516:2138:2083 :2171:2191:2244 :3190
 msgid "Database open read-only"
 msgstr "Datenbank nur zum Lesen geöffnet"
 
-#: ../roundup/backends/indexer_postgresql_fts.py:108
+#: ../roundup/backends/indexer_postgresql_fts.py:113
 msgid ""
 "You have non-word/operator characters \"<>!&|()*\" in your query. Did you "
 "want to do a tsquery search and forgot to start it with \"ts:\"?"
 msgstr ""
 
-#: ../roundup/backends/indexer_postgresql_fts.py:135
+#: ../roundup/backends/indexer_postgresql_fts.py:145
 #, python-format
 msgid ""
 "Check tracker config.ini for a bad indexer_language setting. Error is: %s"
 msgstr ""
 
-#: ../roundup/backends/indexer_sqlite_fts.py:117
+#: ../roundup/backends/indexer_sqlite_fts.py:133
 msgid ""
 "Search failed. Try quoting any terms that include a '-' and retry the search."
 msgstr ""
 
-#: ../roundup/backends/rdbms_common.py:591
+#: ../roundup/backends/rdbms_common.py:623
 #, python-format
 msgid "ALTER operation disallowed: %(old)r -> %(new)r."
 msgstr ""
 
-#: ../roundup/backends/rdbms_common.py:827
+#: ../roundup/backends/rdbms_common.py:859
 #, python-format
 msgid "CREATE operation disallowed: \"%s\"."
 msgstr ""
 
-#: ../roundup/backends/rdbms_common.py:844
+#: ../roundup/backends/rdbms_common.py:876
 #, python-format
 msgid "DROP operation disallowed: \"%s\"."
 msgstr ""
 
-#: ../roundup/backends/rdbms_common.py:1800
+#: ../roundup/backends/rdbms_common.py:1832
 msgid "create"
 msgstr "erstellt"
 
-#: ../roundup/backends/rdbms_common.py:1974
+#: ../roundup/backends/rdbms_common.py:2006
 msgid "unlink"
 msgstr "Link gelöscht"
 
-#: ../roundup/backends/rdbms_common.py:1978
+#: ../roundup/backends/rdbms_common.py:2010
 msgid "link"
 msgstr "verlinkt"
 
-#: ../roundup/backends/rdbms_common.py:2120
+#: ../roundup/backends/rdbms_common.py:2152
 msgid "set"
 msgstr "geändert"
 
-#: ../roundup/backends/rdbms_common.py:2149
+#: ../roundup/backends/rdbms_common.py:2181
 msgid "retired"
 msgstr "verborgen"
 
-#: ../roundup/backends/rdbms_common.py:2179
+#: ../roundup/backends/rdbms_common.py:2211
 msgid "restored"
 msgstr "wiederhergestellt"
 
-#: ../roundup/cgi/actions.py:99
+#: ../roundup/backends/sessions_redis.py:76
+#: ../roundup/backends/sessions_redis.py:95
+#: ../roundup/backends/sessions_redis.py:76:95
+#, python-format
+msgid "Key %(key)s not found in %(name)s database."
+msgstr ""
+
+#: ../roundup/backends/sessions_redis.py:191
+#, python-format
+msgid "Key %(key)s changed in %(name)s db"
+msgstr ""
+
+#: ../roundup/backends/sessions_redis.py:195
+msgid "Redis set failed afer 3 retries"
+msgstr ""
+
+#: ../roundup/cgi/actions.py:97
 msgid "Base url not set. Check configuration."
 msgstr ""
 
-#: ../roundup/cgi/actions.py:115
+#: ../roundup/cgi/actions.py:113
 #, python-format
 msgid "Base url %(base_url)s requires https. Redirect url %(url)s uses http."
 msgstr ""
 
-#: ../roundup/cgi/actions.py:120
+#: ../roundup/cgi/actions.py:118
 #, fuzzy, python-format
 msgid "Unrecognized scheme in %(url)s"
 msgstr "Zeichensatz nicht erkannt: %r"
 
-#: ../roundup/cgi/actions.py:124
+#: ../roundup/cgi/actions.py:122
 #, python-format
 msgid "Net location in %(url)s does not match base: %(base_netloc)s"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:128
+#: ../roundup/cgi/actions.py:126
 #, python-format
 msgid "Base path %(base_path)s is not a prefix for url %(url)s"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:142
+#: ../roundup/cgi/actions.py:140
 #, python-format
 msgid "Path component (%(url_path)s) in %(url)s is not properly escaped"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:146
+#: ../roundup/cgi/actions.py:144
 #, python-format
 msgid "Params component (%(url_params)s) in %(url)s is not properly escaped"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:149
+#: ../roundup/cgi/actions.py:147
 #, python-format
 msgid "Query component (%(url_query)s) in %(url)s is not properly escaped"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:152
+#: ../roundup/cgi/actions.py:150
 #, python-format
 msgid ""
 "Fragment component (%(url_fragment)s) in %(url)s is not properly escaped"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:174
+#: ../roundup/cgi/actions.py:172
 #, python-format
 msgid "You do not have permission to %(action)s the %(classname)s class."
 msgstr ""
 "Sie sind nicht berechtigt, die Aktion(en) %(action)s auf die Klasse "
 "%(classname)s anzuwenden."
 
-#: ../roundup/cgi/actions.py:209
+#: ../roundup/cgi/actions.py:207
 msgid "No type specified"
 msgstr "Typ nicht spezifiziert"
 
-#: ../roundup/cgi/actions.py:211
+#: ../roundup/cgi/actions.py:209
 msgid "No ID entered"
 msgstr "keine ID spezifiziert"
 
-#: ../roundup/cgi/actions.py:217
+#: ../roundup/cgi/actions.py:215
 #, python-format
 msgid "\"%(input)s\" is not an ID (%(classname)s ID required)"
 msgstr "\"%(input)s\" ist keine ID (%(classname)s ID wird erwartet)"
 
-#: ../roundup/cgi/actions.py:230 ../roundup/cgi/actions.py:268
-#: ../roundup/cgi/actions.py:494 ../roundup/cgi/actions.py:833
-#: ../roundup/cgi/actions.py:880 ../roundup/cgi/actions.py:1085
-#: ../roundup/cgi/actions.py:1242 ../roundup/cgi/actions.py:230:268:1242
-#: :494:833 :880:1085
+#: ../roundup/cgi/actions.py:228 ../roundup/cgi/actions.py:266
+#: ../roundup/cgi/actions.py:493 ../roundup/cgi/actions.py:833
+#: ../roundup/cgi/actions.py:880 ../roundup/cgi/actions.py:1084
+#: ../roundup/cgi/actions.py:1243 ../roundup/cgi/actions.py:228:266:1243
+#: :493:833 :880:1084
 msgid "Invalid request"
 msgstr "Ungültige Anforderung"
 
-#: ../roundup/cgi/actions.py:248 ../roundup/cgi/actions.py:604
-#: ../roundup/cgi/actions.py:248:604
+#: ../roundup/cgi/actions.py:246 ../roundup/cgi/actions.py:604
+#: ../roundup/cgi/actions.py:246:604
 #, python-format
 msgid "You do not have permission to retire %(class)s"
 msgstr ""
 "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu löschen"
 
-#: ../roundup/cgi/actions.py:256
+#: ../roundup/cgi/actions.py:254
 #, python-format
 msgid "%(classname)s %(itemid)s has been retired"
 msgstr "%(classname)s %(itemid)s wurde gelöscht"
 
-#: ../roundup/cgi/actions.py:280
+#: ../roundup/cgi/actions.py:278
 #, fuzzy, python-format
 msgid "You do not have permission to restore %(class)s"
 msgstr ""
 "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu löschen"
 
-#: ../roundup/cgi/actions.py:288
+#: ../roundup/cgi/actions.py:286
 #, fuzzy, python-format
 msgid "%(classname)s %(itemid)s has been restored"
 msgstr "%(classname)s %(itemid)s wurde gelöscht"
 
 # ../roundup/cgi/actions.py:174 :202
-#: ../roundup/cgi/actions.py:331 ../roundup/cgi/actions.py:381
-#: ../roundup/cgi/actions.py:331:381
+#: ../roundup/cgi/actions.py:329 ../roundup/cgi/actions.py:380
+#: ../roundup/cgi/actions.py:329:380
 msgid "You do not have permission to edit queries"
 msgstr "Sie haben keine Berechtigung, Abfragen zu bearbeiten."
 
 # ../roundup/cgi/actions.py:180 :209
-#: ../roundup/cgi/actions.py:337 ../roundup/cgi/actions.py:388
-#: ../roundup/cgi/actions.py:337:388
+#: ../roundup/cgi/actions.py:335 ../roundup/cgi/actions.py:387
+#: ../roundup/cgi/actions.py:335:387
 msgid "You do not have permission to store queries"
 msgstr "Sie haben keine Berechtigung, Abfragen zu speichern."
 
-#: ../roundup/cgi/actions.py:358
+#: ../roundup/cgi/actions.py:357
 #, python-format
 msgid "You already own a query named '%s'. Please choose another name."
 msgstr ""
 
-#: ../roundup/cgi/actions.py:441
+#: ../roundup/cgi/actions.py:440
 #, fuzzy
 msgid "Invalid number: "
 msgstr "Ungültige Anforderung"
 
-#: ../roundup/cgi/actions.py:451
+#: ../roundup/cgi/actions.py:450
 #, fuzzy
 msgid "Invalid integer: "
 msgstr "Ungültiger Benutzername"
 
-#: ../roundup/cgi/actions.py:532 ../roundup/cgi/actions.py:735
-#: ../roundup/cgi/actions.py:532:735
+#: ../roundup/cgi/actions.py:531 ../roundup/cgi/actions.py:735
+#: ../roundup/cgi/actions.py:531:735
 #, python-format
 msgid "You do not have permission to create %(class)s"
 msgstr ""
 "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu erstellen"
 
-#: ../roundup/cgi/actions.py:545
+#: ../roundup/cgi/actions.py:544
 #, python-format
 msgid "Not enough values on line %(line)s"
 msgstr "Nicht genügend Werte in Zeile %(line)s"
@@ -1562,8 +1583,8 @@
 
 # ../roundup/cgi/actions.py:546 :556
 #: ../roundup/cgi/actions.py:886 ../roundup/cgi/actions.py:897
-#: ../roundup/cgi/actions.py:1100 ../roundup/cgi/actions.py:1113
-#: ../roundup/cgi/actions.py:886:897 :1100:1113
+#: ../roundup/cgi/actions.py:1099 ../roundup/cgi/actions.py:1113
+#: ../roundup/cgi/actions.py:886:897 :1099:1113
 #, python-format
 msgid "Error: %s"
 msgstr "Fehler: %s"
@@ -1609,12 +1630,12 @@
 msgid "You need to specify a username or address"
 msgstr "Sie müssen einen Benutzernamen oder eine E-Mail-Adresse angeben"
 
-#: ../roundup/cgi/actions.py:1016
+#: ../roundup/cgi/actions.py:1015
 #, fuzzy, python-format
 msgid "Confirm reset of password for %s"
 msgstr "Passwort bestätigen"
 
-#: ../roundup/cgi/actions.py:1017
+#: ../roundup/cgi/actions.py:1016
 #, python-format
 msgid ""
 "\n"
@@ -1628,21 +1649,21 @@
 "You should then receive another email with the new password.\n"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1030
+#: ../roundup/cgi/actions.py:1029
 #, python-format
 msgid "Email sent to primary notification address for %s."
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1032
+#: ../roundup/cgi/actions.py:1031
 #, fuzzy, python-format
 msgid "Email sent to %s."
 msgstr "Eine E-Mail wurde an %s versandt"
 
-#: ../roundup/cgi/actions.py:1047
+#: ../roundup/cgi/actions.py:1046
 msgid "You are now registered, welcome!"
 msgstr "Sie sind nun registriert. Willkommen!"
 
-#: ../roundup/cgi/actions.py:1137
+#: ../roundup/cgi/actions.py:1139
 #, python-format
 msgid "Username '%s' is already used."
 msgstr ""
@@ -1668,12 +1689,12 @@
 "\n"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1177
+#: ../roundup/cgi/actions.py:1178
 #, python-format
 msgid "Complete your registration to %s"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1178
+#: ../roundup/cgi/actions.py:1179
 #, python-format
 msgid ""
 "To complete your registration of the user \"%(name)s\" with\n"
@@ -1683,44 +1704,44 @@
 "\n"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1202
+#: ../roundup/cgi/actions.py:1203
 msgid "It is not permitted to supply roles at registration."
 msgstr "Bei der Registrierung dürfen keine Rollen angegeben werden"
 
-#: ../roundup/cgi/actions.py:1216
+#: ../roundup/cgi/actions.py:1217
 msgid "You are logged out"
 msgstr "Sie wurden vom System abgemeldet"
 
-#: ../roundup/cgi/actions.py:1246
+#: ../roundup/cgi/actions.py:1247
 msgid "Username required"
 msgstr "Benutzername notwendig"
 
-#: ../roundup/cgi/actions.py:1325
+#: ../roundup/cgi/actions.py:1326
 #, python-format
 msgid "Logins occurring too fast. Please wait: %s seconds."
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1357
+#: ../roundup/cgi/actions.py:1359
 #, python-format
 msgid "Welcome %(username)s!"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1377 ../roundup/cgi/actions.py:1381
-#: ../roundup/cgi/actions.py:1377:1381
+#: ../roundup/cgi/actions.py:1380 ../roundup/cgi/actions.py:1384
+#: ../roundup/cgi/actions.py:1380:1384
 msgid "Invalid login"
 msgstr "Ungültiger Benutzername"
 
-#: ../roundup/cgi/actions.py:1387
+#: ../roundup/cgi/actions.py:1390
 msgid "You do not have permission to login"
 msgstr "Sie sind nicht berechtigt, sich anzumelden"
 
-#: ../roundup/cgi/actions.py:1431 ../roundup/cgi/actions.py:1610
-#: ../roundup/cgi/actions.py:1431:1610
+#: ../roundup/cgi/actions.py:1434 ../roundup/cgi/actions.py:1613
+#: ../roundup/cgi/actions.py:1434:1613
 #, python-format
 msgid "Column \"%(column)s\" not found in %(class)s"
 msgstr ""
 
-#: ../roundup/cgi/actions.py:1681
+#: ../roundup/cgi/actions.py:1684
 #, python-format
 msgid "You do not have permission to view %(class)s"
 msgstr "Sie sind nicht berechtigt, Einträge der Klasse \"%(class)s\" zu lesen"
@@ -1826,159 +1847,159 @@
 "Admistratoren wurden benachrichtigt.</p>\n"
 "</body></html>"
 
-#: ../roundup/cgi/client.py:635
+#: ../roundup/cgi/client.py:636
 #, fuzzy
 msgid "Client is not allowed to use Rest Interface."
 msgstr "Gast-Benutzer sind nicht berechtigt, das Web-Interface zu benutzen."
 
-#: ../roundup/cgi/client.py:877
+#: ../roundup/cgi/client.py:878
 msgid "Form Error: "
 msgstr "Formular-Fehler: "
 
-#: ../roundup/cgi/client.py:967
+#: ../roundup/cgi/client.py:968
 #, python-format
 msgid "Unrecognized charset: %r"
 msgstr "Zeichensatz nicht erkannt: %r"
 
-#: ../roundup/cgi/client.py:1230
+#: ../roundup/cgi/client.py:1231
 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:1353
+#: ../roundup/cgi/client.py:1354
 msgid "Referer header not available."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1357
+#: ../roundup/cgi/client.py:1358
 #, python-format
 msgid "csrf key used with wrong method from: %s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1385
-#, python-format
-msgid "csrf header %s required but missing for user%s."
-msgstr ""
-
 #: ../roundup/cgi/client.py:1386
 #, python-format
+msgid "csrf header %s required but missing for user%s."
+msgstr ""
+
+#: ../roundup/cgi/client.py:1387
+#, python-format
 msgid "Missing header: %s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1394 ../roundup/cgi/client.py:1397
-#: ../roundup/cgi/client.py:1394:1397
+#: ../roundup/cgi/client.py:1395 ../roundup/cgi/client.py:1398
+#: ../roundup/cgi/client.py:1395:1398
 #, python-format
 msgid "csrf Referer header check failed for user%s. Value=%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1395
+#: ../roundup/cgi/client.py:1396
 #, fuzzy, python-format
 msgid "Invalid Referer: %s"
 msgstr "Ungültiger Benutzername"
 
-#: ../roundup/cgi/client.py:1409 ../roundup/cgi/client.py:1412
-#: ../roundup/cgi/client.py:1409:1412
+#: ../roundup/cgi/client.py:1410 ../roundup/cgi/client.py:1413
+#: ../roundup/cgi/client.py:1410:1413
 #, python-format
 msgid "csrf Origin header check failed for user%s. Value=%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1410
+#: ../roundup/cgi/client.py:1411
 #, fuzzy, python-format
 msgid "Invalid Origin %s"
 msgstr "Ungültiger Benutzername"
 
-#: ../roundup/cgi/client.py:1424 ../roundup/cgi/client.py:1427
-#: ../roundup/cgi/client.py:1424:1427
+#: ../roundup/cgi/client.py:1425 ../roundup/cgi/client.py:1428
+#: ../roundup/cgi/client.py:1425:1428
 #, python-format
 msgid "csrf X-FORWARDED-HOST header check failed for user%s. Value=%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1425
+#: ../roundup/cgi/client.py:1426
 #, python-format
 msgid "Invalid X-FORWARDED-HOST %s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1444 ../roundup/cgi/client.py:1447
-#: ../roundup/cgi/client.py:1444:1447
+#: ../roundup/cgi/client.py:1445 ../roundup/cgi/client.py:1448
+#: ../roundup/cgi/client.py:1445:1448
 #, python-format
 msgid "csrf HOST header check failed for user%s. Value=%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1445
+#: ../roundup/cgi/client.py:1446
 #, fuzzy, python-format
 msgid "Invalid HOST %s"
 msgstr "Ungültige Anforderung"
 
-#: ../roundup/cgi/client.py:1453
+#: ../roundup/cgi/client.py:1454
 msgid "Csrf: unable to verify sufficient headers"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1454
+#: ../roundup/cgi/client.py:1455
 msgid "Unable to verify sufficient headers"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1467
-#, python-format
-msgid "csrf X-REQUESTED-WITH xmlrpc required header check failed for user%s."
-msgstr ""
-
 #: ../roundup/cgi/client.py:1468
+#, python-format
+msgid "csrf X-REQUESTED-WITH xmlrpc required header check failed for user%s."
+msgstr ""
+
+#: ../roundup/cgi/client.py:1469
 msgid "Required Header Missing"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1505
+#: ../roundup/cgi/client.py:1506
 #, python-format
 msgid "Required csrf field missing for user%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1506 ../roundup/cgi/client.py:1558
-#: ../roundup/cgi/client.py:1568 ../roundup/cgi/client.py:1506:1558:1568
+#: ../roundup/cgi/client.py:1507 ../roundup/cgi/client.py:1559
+#: ../roundup/cgi/client.py:1569 ../roundup/cgi/client.py:1507:1559:1569
 msgid ""
 "We can't validate your session (csrf failure). Re-enter any unsaved data and "
 "try again."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1509
+#: ../roundup/cgi/client.py:1510
 #, python-format
 msgid "csrf field not supplied by user%s"
 msgstr ""
 
-#: ../roundup/cgi/client.py:1556
+#: ../roundup/cgi/client.py:1557
 #, python-format
 msgid ""
 "Csrf mismatch user: current user %s != stored user %s, current session, "
 "stored session: %s,%s for key %s."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1561
+#: ../roundup/cgi/client.py:1562
 #, python-format
 msgid ""
 "logged only: Csrf mismatch user: current user %s != stored user %s, current "
 "session, stored session: %s,%s for key %s."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1566
+#: ../roundup/cgi/client.py:1567
 #, python-format
 msgid ""
 "Csrf mismatch user: current session %s != stored session %s, current user/"
 "stored user is: %s for key %s."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1571
+#: ../roundup/cgi/client.py:1572
 #, python-format
 msgid ""
 "logged only: Csrf mismatch user: current session %s != stored session %s, "
 "current user/stored user is: %s for key %s."
 msgstr ""
 
-#: ../roundup/cgi/client.py:1743
+#: ../roundup/cgi/client.py:1744
 msgid "You are not allowed to view this file."
 msgstr "Sie sind nicht berechtigt, diese Seite anzuzeigen."
 
-#: ../roundup/cgi/client.py:2032
+#: ../roundup/cgi/client.py:2033
 #, 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:2036
+#: ../roundup/cgi/client.py:2037
 #, python-format
 msgid ""
 "%(starttag)sCache hits: %(cache_hits)d, misses %(cache_misses)d. Loading "
@@ -1987,33 +2008,33 @@
 "%(starttag)sCache benutzt: %(cache_hits)d, verfehlt: %(cache_misses)d. "
 "Einträge laden: %(get_items)fs; filtern: %(filtering)fs.%(endtag)s\n"
 
-#: ../roundup/cgi/client.py:2566
+#: ../roundup/cgi/client.py:2567
 #, python-format
 msgid ""
 "Cache failure: compressed file %(compressed)s is older than its source file "
 "%(filename)s"
 msgstr ""
 
-#: ../roundup/cgi/form_parser.py:290
+#: ../roundup/cgi/form_parser.py:292
 #, python-format
 msgid "link \"%(key)s\" value \"%(entry)s\" not a designator"
 msgstr ""
 "Der Wert \"%(entry)s\" ist kein gültiger Bezeichner für die Verknüpfung "
 "\"%(key)s\""
 
-#: ../roundup/cgi/form_parser.py:308
+#: ../roundup/cgi/form_parser.py:311
 #, 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:320
+#: ../roundup/cgi/form_parser.py:324
 #, python-format
 msgid ""
 "The form action claims to require property \"%(property)s\" which doesn't "
 "exist"
 msgstr "Die Aktion erfordert die fehlende Angabe \"%(property)s\""
 
-#: ../roundup/cgi/form_parser.py:342
+#: ../roundup/cgi/form_parser.py:347
 #, python-format
 msgid ""
 "You have submitted a %(action)s action for the property \"%(property)s\" "
@@ -2021,28 +2042,28 @@
 msgstr "Die Aktion %(action)s gilt nicht für die Eigenschaft \"%(property)s\" "
 
 # ../roundup/cgi/form_parser.py:331 :357
-#: ../roundup/cgi/form_parser.py:367 ../roundup/cgi/form_parser.py:395
-#: ../roundup/cgi/form_parser.py:367:395
+#: ../roundup/cgi/form_parser.py:373 ../roundup/cgi/form_parser.py:402
+#: ../roundup/cgi/form_parser.py:373:402
 #, python-format
 msgid "You have submitted more than one value for the %s property"
 msgstr "Sie haben mehr als einen Wert für die Eigenschaft \"%s\" übermittelt"
 
 # ../roundup/cgi/form_parser.py:354 :360
-#: ../roundup/cgi/form_parser.py:392 ../roundup/cgi/form_parser.py:398
-#: ../roundup/cgi/form_parser.py:392:398
+#: ../roundup/cgi/form_parser.py:398 ../roundup/cgi/form_parser.py:405
+#: ../roundup/cgi/form_parser.py:398:405
 msgid "Password and confirmation text do not match"
 msgstr "Die beiden Passwortfelder stimmen nicht überein"
 
-#: ../roundup/cgi/form_parser.py:416
+#: ../roundup/cgi/form_parser.py:423
 msgid "Not a file attachment"
 msgstr ""
 
-#: ../roundup/cgi/form_parser.py:460
+#: ../roundup/cgi/form_parser.py:468
 #, python-format
 msgid "property \"%(propname)s\": \"%(value)s\" not currently in list"
 msgstr "Der Wert \"%(value)s\" ist nicht in der Liste für \"%(propname)s\""
 
-#: ../roundup/cgi/form_parser.py:582
+#: ../roundup/cgi/form_parser.py:590
 #, python-format
 msgid "Required %(class)s property %(property)s not supplied"
 msgid_plural "Required %(class)s properties %(property)s not supplied"
@@ -2053,77 +2074,77 @@
 "Die Eigenschaften \"%(property)s\" müssen für die Klasse \"%(class)s\" "
 "angegeben werden"
 
-#: ../roundup/cgi/templating.py:249
+#: ../roundup/cgi/templating.py:238
 #, python-format
 msgid "You are not allowed to %(action)s items of class %(class)s"
 msgstr ""
 "Sie sind nicht berechtigt, die Aktion  \"%(action)s\" auf Einträge der "
 "Klasse \"%(class)s\" anzuwenden"
 
-#: ../roundup/cgi/templating.py:862
+#: ../roundup/cgi/templating.py:851
 msgid "(list)"
 msgstr "(Liste)"
 
-#: ../roundup/cgi/templating.py:935
+#: ../roundup/cgi/templating.py:924
 msgid "Submit New Entry"
 msgstr "Eintrag speichern"
 
-#: ../roundup/cgi/templating.py:957 ../roundup/cgi/templating.py:1128
-#: ../roundup/cgi/templating.py:1747 ../roundup/cgi/templating.py:1776
-#: ../roundup/cgi/templating.py:1796 ../roundup/cgi/templating.py:1809
-#: ../roundup/cgi/templating.py:1846 ../roundup/cgi/templating.py:1899
-#: ../roundup/cgi/templating.py:1922 ../roundup/cgi/templating.py:1929
-#: ../roundup/cgi/templating.py:1965 ../roundup/cgi/templating.py:2002
-#: ../roundup/cgi/templating.py:2035 ../roundup/cgi/templating.py:2124
-#: ../roundup/cgi/templating.py:2145 ../roundup/cgi/templating.py:2235
-#: ../roundup/cgi/templating.py:2255 ../roundup/cgi/templating.py:2277
-#: ../roundup/cgi/templating.py:2316 ../roundup/cgi/templating.py:2326
-#: ../roundup/cgi/templating.py:2390 ../roundup/cgi/templating.py:2689
-#: ../roundup/cgi/templating.py:957:1128 :1747:1776 :1796:1809 :1846:1899
-#: :1922:1929 :1965:2002 :2035:2124 :2145:2235 :2255:2277 :2316:2326 :2390:2689
+#: ../roundup/cgi/templating.py:946 ../roundup/cgi/templating.py:1117
+#: ../roundup/cgi/templating.py:1736 ../roundup/cgi/templating.py:1765
+#: ../roundup/cgi/templating.py:1785 ../roundup/cgi/templating.py:1798
+#: ../roundup/cgi/templating.py:1835 ../roundup/cgi/templating.py:1888
+#: ../roundup/cgi/templating.py:1911 ../roundup/cgi/templating.py:1918
+#: ../roundup/cgi/templating.py:1954 ../roundup/cgi/templating.py:2006
+#: ../roundup/cgi/templating.py:2039 ../roundup/cgi/templating.py:2128
+#: ../roundup/cgi/templating.py:2149 ../roundup/cgi/templating.py:2239
+#: ../roundup/cgi/templating.py:2259 ../roundup/cgi/templating.py:2281
+#: ../roundup/cgi/templating.py:2320 ../roundup/cgi/templating.py:2330
+#: ../roundup/cgi/templating.py:2394 ../roundup/cgi/templating.py:2693
+#: ../roundup/cgi/templating.py:946:1117 :1736:1765 :1785:1798 :1835:1888
+#: :1911:1918 :1954:2006 :2039:2128 :2149:2239 :2259:2281 :2320:2330 :2394:2693
 msgid "[hidden]"
 msgstr "[verborgen]"
 
-#: ../roundup/cgi/templating.py:958
+#: ../roundup/cgi/templating.py:947
 msgid "New node - no history"
 msgstr "Neuer Eintrag - Noch kein Verlauf"
 
-#: ../roundup/cgi/templating.py:1093
+#: ../roundup/cgi/templating.py:1082
 msgid "Submit Changes"
 msgstr "Speichern"
 
-#: ../roundup/cgi/templating.py:1171
+#: ../roundup/cgi/templating.py:1160
 msgid "<em>The indicated property no longer exists</em>"
 msgstr "<em>Die gewählte Eigenschaft existiert nicht mehr</em>"
 
-#: ../roundup/cgi/templating.py:1172
+#: ../roundup/cgi/templating.py:1161
 #, python-format
 msgid "<em>%s: %s</em>\n"
 msgstr "<em>%s: %s</em>\n"
 
-#: ../roundup/cgi/templating.py:1207
+#: ../roundup/cgi/templating.py:1196
 #, python-format
 msgid "The linked class %(classname)s no longer exists"
 msgstr "Die verlinkte Klasse \"%(classname)s\" existiert nicht mehr"
 
-#: ../roundup/cgi/templating.py:1243 ../roundup/cgi/templating.py:1271
-#: ../roundup/cgi/templating.py:2399 ../roundup/cgi/templating.py:2698
-#: ../roundup/cgi/templating.py:1243:1271 :2399:2698
+#: ../roundup/cgi/templating.py:1232 ../roundup/cgi/templating.py:1260
+#: ../roundup/cgi/templating.py:2403 ../roundup/cgi/templating.py:2702
+#: ../roundup/cgi/templating.py:1232:1260 :2403:2702
 msgid "[label is missing]"
 msgstr ""
 
 # ../roundup/cgi/templating.py:905 :926
-#: ../roundup/cgi/templating.py:1247 ../roundup/cgi/templating.py:1274
-#: ../roundup/cgi/templating.py:1247:1274
+#: ../roundup/cgi/templating.py:1236 ../roundup/cgi/templating.py:1263
+#: ../roundup/cgi/templating.py:1236:1263
 msgid "<strike>The linked node no longer exists</strike>"
 msgstr "<strike>Der verknüpfte Eintrag existiert nicht mehr</strike>"
 
-#: ../roundup/cgi/templating.py:1335
+#: ../roundup/cgi/templating.py:1324
 #, python-format
 msgid "%s: (no value)"
 msgstr "%s: (kein Wert)"
 
-#: ../roundup/cgi/templating.py:1351
+#: ../roundup/cgi/templating.py:1340
 #, fuzzy, python-format
 msgid ""
 "<strong><em>This event %s is not handled by the history display!</em></"
@@ -2132,46 +2153,46 @@
 "<strong><em>Dieses Ereignis kann nicht im Verlauf angezeigt werden!</em></"
 "strong>"
 
-#: ../roundup/cgi/templating.py:1364
+#: ../roundup/cgi/templating.py:1353
 msgid "<tr><td colspan=4><strong>Note:</strong></td></tr>"
 msgstr "<tr><td colspan=\"4\"><strong>Bitte beachten:</strong></td></tr>"
 
-#: ../roundup/cgi/templating.py:1373
+#: ../roundup/cgi/templating.py:1362
 msgid "History"
 msgstr "Verlauf"
 
-#: ../roundup/cgi/templating.py:1375
+#: ../roundup/cgi/templating.py:1364
 msgid "<th>Date</th>"
 msgstr "<th>Datum</th>"
 
-#: ../roundup/cgi/templating.py:1376
+#: ../roundup/cgi/templating.py:1365
 msgid "<th>User</th>"
 msgstr "<th>Benutzer</th>"
 
-#: ../roundup/cgi/templating.py:1377
+#: ../roundup/cgi/templating.py:1366
 msgid "<th>Action</th>"
 msgstr "<th>Aktion</th>"
 
-#: ../roundup/cgi/templating.py:1378
+#: ../roundup/cgi/templating.py:1367
 msgid "<th>Args</th>"
 msgstr "<th>Argumente</th>"
 
-#: ../roundup/cgi/templating.py:1429
+#: ../roundup/cgi/templating.py:1418
 #, python-format
 msgid "Copy of %(class)s %(id)s"
 msgstr "Kopie von %(class)s %(id)s"
 
-#: ../roundup/cgi/templating.py:2039 ../roundup/cgi/templating.py:2072
-#: ../roundup/cgi/templating.py:1317:2039:2072
+#: ../roundup/cgi/templating.py:2043 ../roundup/cgi/templating.py:2076
+#: ../roundup/cgi/templating.py:1306:2043:2076
 msgid "No"
 msgstr "Nein"
 
-#: ../roundup/cgi/templating.py:2039 ../roundup/cgi/templating.py:2067
-#: ../roundup/cgi/templating.py:1317:2039:2067
+#: ../roundup/cgi/templating.py:2043 ../roundup/cgi/templating.py:2071
+#: ../roundup/cgi/templating.py:1306:2043:2071
 msgid "Yes"
 msgstr "Ja"
 
-#: ../roundup/cgi/templating.py:2193
+#: ../roundup/cgi/templating.py:2197
 msgid ""
 "default value for DateHTMLProperty must be either DateHTMLProperty or string "
 "date representation."
@@ -2179,19 +2200,19 @@
 "Der voreingestellte Wert einer DateHTML-Eigenschaft muss entweder ein\n"
 "DateHTML-Objekt sein oder ein Datum repräsentieren."
 
-#: ../roundup/cgi/templating.py:2370
+#: ../roundup/cgi/templating.py:2374
 #, 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:2381
+#: ../roundup/cgi/templating.py:2385
 #, fuzzy, python-format
 msgid "Attempt to look up %(item)s on a missing value"
 msgstr ""
 "Versuch, das Attribut %(attr)s eines nicht vorhandenen Werts abzufragen"
 
-#: ../roundup/cgi/templating.py:2485
+#: ../roundup/cgi/templating.py:2489
 #, python-format
 msgid "<option %svalue=\"-1\">- no selection -</option>"
 msgstr "<option %svalue=\"-1\">- nichts ausgewählt -</option>"
@@ -2226,7 +2247,7 @@
 msgid "Expected languages: "
 msgstr "Ungültige Anforderung"
 
-#: ../roundup/date.py:395
+#: ../roundup/date.py:398
 #, fuzzy, python-format
 msgid ""
 "Not a date spec: %r (\"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" or "
@@ -2235,11 +2256,11 @@
 "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:418
+#: ../roundup/date.py:421
 msgid "Could not determine granularity"
 msgstr "Konnte Körnigkeit nicht ermitteln"
 
-#: ../roundup/date.py:470
+#: ../roundup/date.py:473
 #, python-format
 msgid ""
 "%r not a date / time spec \"yyyy-mm-dd\", \"mm-dd\", \"HH:MM\", \"HH:MM:SS\" "
@@ -2248,7 +2269,7 @@
 "%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:842
+#: ../roundup/date.py:845
 #, fuzzy, python-format
 msgid ""
 "Not an interval spec: \"%s\" ([+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS] [date "
@@ -2257,106 +2278,106 @@
 "Keine gültige Intervall-Angabe: [+-] [#y] [#m] [#w] [#d] [[[H]H:MM]:SS] "
 "[Datum]"
 
-#: ../roundup/date.py:865
+#: ../roundup/date.py:868
 #, fuzzy, python-format
 msgid "Not an interval spec: \"%s\" ([+-] [#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:1042
+#: ../roundup/date.py:1045
 #, python-format
 msgid "%(number)s year"
 msgid_plural "%(number)s years"
 msgstr[0] "%(number)s Jahr"
 msgstr[1] "%(number)s Jahren"
 
-#: ../roundup/date.py:1046
+#: ../roundup/date.py:1049
 #, python-format
 msgid "%(number)s month"
 msgid_plural "%(number)s months"
 msgstr[0] "%(number)s Monat"
 msgstr[1] "%(number)s Monaten"
 
-#: ../roundup/date.py:1050
+#: ../roundup/date.py:1053
 #, python-format
 msgid "%(number)s week"
 msgid_plural "%(number)s weeks"
 msgstr[0] "%(number)s Woche"
 msgstr[1] "%(number)s Wochen"
 
-#: ../roundup/date.py:1054
+#: ../roundup/date.py:1057
 #, python-format
 msgid "%(number)s day"
 msgid_plural "%(number)s days"
 msgstr[0] "%(number)s Tag"
 msgstr[1] "%(number)s Tagen"
 
-#: ../roundup/date.py:1058
+#: ../roundup/date.py:1061
 msgid "tomorrow"
 msgstr "morgen"
 
-#: ../roundup/date.py:1060
+#: ../roundup/date.py:1063
 msgid "yesterday"
 msgstr "gestern"
 
-#: ../roundup/date.py:1063
+#: ../roundup/date.py:1066
 #, python-format
 msgid "%(number)s hour"
 msgid_plural "%(number)s hours"
 msgstr[0] "%(number)s Stunde"
 msgstr[1] "%(number)s Stunden"
 
-#: ../roundup/date.py:1067
+#: ../roundup/date.py:1070
 msgid "an hour"
 msgstr "einer Stunde"
 
-#: ../roundup/date.py:1069
+#: ../roundup/date.py:1072
 msgid "1 1/2 hours"
 msgstr "1 1/2 Stunden"
 
-#: ../roundup/date.py:1071
+#: ../roundup/date.py:1074
 #, python-format
 msgid "1 %(number)s/4 hours"
 msgid_plural "1 %(number)s/4 hours"
 msgstr[0] "1 %(number)s/4 Stunde"
 msgstr[1] "1 %(number)s/4 Stunden"
 
-#: ../roundup/date.py:1076
+#: ../roundup/date.py:1079
 msgid "in a moment"
 msgstr "in Kürze"
 
-#: ../roundup/date.py:1078
+#: ../roundup/date.py:1081
 msgid "just now"
 msgstr "soeben"
 
-#: ../roundup/date.py:1081
+#: ../roundup/date.py:1084
 msgid "1 minute"
 msgstr "1 Minute"
 
-#: ../roundup/date.py:1084
+#: ../roundup/date.py:1087
 #, python-format
 msgid "%(number)s minute"
 msgid_plural "%(number)s minutes"
 msgstr[0] "%(number)s Minute"
 msgstr[1] "%(number)s Minuten"
 
-#: ../roundup/date.py:1087
+#: ../roundup/date.py:1090
 msgid "1/2 an hour"
 msgstr "1/2 Stunde"
 
-#: ../roundup/date.py:1089
+#: ../roundup/date.py:1092
 #, python-format
 msgid "%(number)s/4 hour"
 msgid_plural "%(number)s/4 hours"
 msgstr[0] "%(number)s/4 Stunde"
 msgstr[1] "%(number)s/4 Stunden"
 
-#: ../roundup/date.py:1093
+#: ../roundup/date.py:1096
 #, python-format
 msgid "%s ago"
 msgstr "vor %s"
 
-#: ../roundup/date.py:1095
+#: ../roundup/date.py:1098
 #, python-format
 msgid "in %s"
 msgstr "in %s"
@@ -2421,44 +2442,44 @@
 "WARNUNG: Das Verzeichnis '%s'\n"
 "\tenthält Vorlagen im alten Format, die ignoriert werden."
 
-#: ../roundup/mailgw.py:199 ../roundup/mailgw.py:212
-#: ../roundup/mailgw.py:199:212
+#: ../roundup/mailgw.py:205 ../roundup/mailgw.py:218
+#: ../roundup/mailgw.py:205:218
 #, python-format
 msgid "Message signed with unknown key: %s"
 msgstr "Nachricht signiert mit unbekanntem Schlüssel: %s"
 
-#: ../roundup/mailgw.py:202
+#: ../roundup/mailgw.py:208
 #, python-format
 msgid "Message signed with an expired key: %s"
 msgstr "Nachricht signiert mit abgelaufenem Schlüssel: %s"
 
-#: ../roundup/mailgw.py:205
+#: ../roundup/mailgw.py:211
 #, python-format
 msgid "Message signed with a revoked key: %s"
 msgstr "Nachricht signiert mit zurückgezogenem Schlüssel: %s"
 
-#: ../roundup/mailgw.py:208
+#: ../roundup/mailgw.py:214
 msgid "Invalid PGP signature detected."
 msgstr "Ungültige PGP-Signatur festgestellt."
 
-#: ../roundup/mailgw.py:215
+#: ../roundup/mailgw.py:221
 #, fuzzy
 msgid "Unsigned Message"
 msgstr "Neuer Kommentar"
 
-#: ../roundup/mailgw.py:465
+#: ../roundup/mailgw.py:471
 msgid "Unknown multipart/encrypted version."
 msgstr "Unbekannte Version von multipart/encrypted."
 
-#: ../roundup/mailgw.py:474
+#: ../roundup/mailgw.py:480
 msgid "Unable to decrypt your message."
 msgstr "Kann Ihre Nachricht nicht entschlüsseln"
 
-#: ../roundup/mailgw.py:501
+#: ../roundup/mailgw.py:507
 msgid "No PGP signature found in message."
 msgstr "Keine PGP-Signatur in Nachricht gefunden"
 
-#: ../roundup/mailgw.py:582
+#: ../roundup/mailgw.py:589
 msgid ""
 "\n"
 "Emails to Roundup trackers must include a Subject: line!\n"
@@ -2466,7 +2487,7 @@
 "\n"
 "Mails an Roundup müssen eine Subject-Zeile haben (Betreff)!\n"
 
-#: ../roundup/mailgw.py:695
+#: ../roundup/mailgw.py:702
 #, python-format
 msgid ""
 "\n"
@@ -2495,7 +2516,7 @@
 "\n"
 "Der Betreff war: '%(subject)s'\n"
 
-#: ../roundup/mailgw.py:733
+#: ../roundup/mailgw.py:740
 #, python-format
 msgid ""
 "\n"
@@ -2511,7 +2532,7 @@
 "Gültige Klassen sind: %(validname)s\n"
 "Die Betreffzeile war: \"%(subject)s\"\n"
 
-#: ../roundup/mailgw.py:741
+#: ../roundup/mailgw.py:748
 #, python-format
 msgid ""
 "\n"
@@ -2541,7 +2562,7 @@
 "Die Betreffzeile (Subject) war:\n"
 "   '%(subject)s'\n"
 
-#: ../roundup/mailgw.py:777
+#: ../roundup/mailgw.py:808
 #, python-format
 msgid ""
 "\n"
@@ -2560,7 +2581,7 @@
 "Die Betreffzeile (Subject) war:\n"
 "   '%(subject)s'\n"
 
-#: ../roundup/mailgw.py:810
+#: ../roundup/mailgw.py:841
 #, python-format
 msgid ""
 "\n"
@@ -2576,7 +2597,7 @@
 "Die Betreffzeile (Subject) war:\n"
 "   '%(subject)s'\n"
 
-#: ../roundup/mailgw.py:855
+#: ../roundup/mailgw.py:886
 #, python-format
 msgid ""
 "\n"
@@ -2589,21 +2610,21 @@
 "\n"
 "Unbekannte Adresse: %(from_address)s\n"
 
-#: ../roundup/mailgw.py:863
+#: ../roundup/mailgw.py:894
 msgid "You are not permitted to access this tracker."
 msgstr "Sie haben keinen Zugriff auf diesen Tracker."
 
-#: ../roundup/mailgw.py:874
+#: ../roundup/mailgw.py:906
 #, python-format
 msgid "You are not permitted to edit %(classname)s."
 msgstr "Sie sind nicht berechtigt, die Klasse \"%(classname)s\" zu bearbeiten"
 
-#: ../roundup/mailgw.py:880
+#: ../roundup/mailgw.py:912
 #, python-format
 msgid "You are not permitted to create %(classname)s."
 msgstr "Sie sind nicht berechtigt, ein \"%(classname)s\" zu erzeugen"
 
-#: ../roundup/mailgw.py:962
+#: ../roundup/mailgw.py:994
 #, python-format
 msgid ""
 "\n"
@@ -2618,7 +2639,7 @@
 "\n"
 "Die Betreffzeile war: \"%(subject)s\"\n"
 
-#: ../roundup/mailgw.py:1014
+#: ../roundup/mailgw.py:1047
 #, fuzzy
 msgid "This tracker has been configured to require all email be PGP encrypted."
 msgstr ""
@@ -2626,7 +2647,7 @@
 "Dieser Tracker wurde konfiguriert, E-Mail-Nachrichten nur PGP-signiert oder\n"
 "verschlüsselt entgegenzunehmen."
 
-#: ../roundup/mailgw.py:1051
+#: ../roundup/mailgw.py:1085
 msgid ""
 "\n"
 "This tracker has been configured to require all email be PGP signed or\n"
@@ -2636,16 +2657,16 @@
 "Dieser Tracker wurde konfiguriert, E-Mail-Nachrichten nur PGP-signiert oder\n"
 "verschlüsselt entgegenzunehmen."
 
-#: ../roundup/mailgw.py:1082
+#: ../roundup/mailgw.py:1116
 msgid "You are not permitted to create files."
 msgstr "Sie sind nicht berechtigt, Dateien zu erzeugen."
 
-#: ../roundup/mailgw.py:1096
+#: ../roundup/mailgw.py:1133
 #, 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:1126
+#: ../roundup/mailgw.py:1164
 msgid ""
 "\n"
 "Roundup requires the submission to be plain text. The message parser could\n"
@@ -2656,11 +2677,11 @@
 "konnte\n"
 "keinen entsprechenden Teil (\"text/plain\") finden.\n"
 
-#: ../roundup/mailgw.py:1139
+#: ../roundup/mailgw.py:1177
 msgid "You are not permitted to create messages."
 msgstr "Sie sind nicht berechtigt, Nachrichten zu erzeugen"
 
-#: ../roundup/mailgw.py:1147
+#: ../roundup/mailgw.py:1186
 #, python-format
 msgid ""
 "\n"
@@ -2671,12 +2692,12 @@
 "Die Mail-Nachricht wurde von einem Detektor zurückgewiesen.\n"
 "%(error)s\n"
 
-#: ../roundup/mailgw.py:1155
+#: ../roundup/mailgw.py:1197
 #, 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:1177
+#: ../roundup/mailgw.py:1220
 #, python-format
 msgid "You are not permitted to edit property %(prop)s of class %(classname)s."
 msgstr ""
@@ -2684,7 +2705,7 @@
 "%(classname)s\n"
 "zu bearbeiten."
 
-#: ../roundup/mailgw.py:1186
+#: ../roundup/mailgw.py:1232
 #, fuzzy, python-format
 msgid "You are not permitted to set property %(prop)s of class %(classname)s."
 msgstr ""
@@ -2692,7 +2713,7 @@
 "%(classname)s\n"
 "zu bearbeiten."
 
-#: ../roundup/mailgw.py:1194
+#: ../roundup/mailgw.py:1240
 #, python-format
 msgid ""
 "\n"
@@ -2703,7 +2724,7 @@
 "Es gab ein Problem mit Ihrer Nachricht:\n"
 "   %(message)s\n"
 
-#: ../roundup/mailgw.py:1673
+#: ../roundup/mailgw.py:1720
 #, fuzzy, python-format
 msgid ""
 "\n"
@@ -2716,7 +2737,7 @@
 "Sie sich an %(mailadmin)s und bitten Sie um Korrektur der\n"
 "fehlerhaften Klasse:  %(current_class)s\n"
 
-#: ../roundup/mailgw.py:1704
+#: ../roundup/mailgw.py:1752
 #, python-format
 msgid ""
 "\n"
@@ -2729,33 +2750,33 @@
 "Sie sich an %(mailadmin)s und bitten Sie um Korrektur der\n"
 "fehlerhaften Eigenschaften:  %(errors)s\n"
 
-#: ../roundup/mailgw.py:1725
+#: ../roundup/mailgw.py:1773
 msgid "not of form [arg=value,value,...;arg=value,value,...]"
 msgstr "entspricht nicht der Form [arg=wert,wert,...;arg=wert,wert,...]"
 
-#: ../roundup/rest.py:406
+#: ../roundup/rest.py:398
 #, python-format
 msgid "Method %(m)s not allowed. Allowed: %(a)s"
 msgstr ""
 
-#: ../roundup/rest.py:1104
+#: ../roundup/rest.py:1097
 #, fuzzy, python-format
 msgid "Invalid attribute %s"
 msgstr "Ungültiger Benutzername"
 
-#: ../roundup/rest.py:2085
+#: ../roundup/rest.py:2078
 #, python-format
 msgid "Api rate limits exceeded. Please wait: %s seconds."
 msgstr ""
 
-#: ../roundup/rest.py:2120
+#: ../roundup/rest.py:2113
 #, python-format
 msgid ""
 "Unable to parse Accept Header. %(error)s. Acceptable types: "
 "%(acceptable_types)s"
 msgstr ""
 
-#: ../roundup/rest.py:2269
+#: ../roundup/rest.py:2262
 #, python-format
 msgid ""
 "Unrecognized api version: %s. See /rest without specifying api version for "
@@ -2863,12 +2884,12 @@
 "Vorher:\n"
 "%(old)s"
 
-#: ../roundup/scripts/roundup_demo.py:49
+#: ../roundup/scripts/roundup_demo.py:121
 #, python-format
 msgid "Enter directory path to create demo tracker [%s]: "
 msgstr "Verzeichnis für Tracker-Demo eingeben [%s]: "
 
-#: ../roundup/scripts/roundup_demo.py:54
+#: ../roundup/scripts/roundup_demo.py:127
 #, python-format
 msgid "Enter tracker template to use (one of (%s)) [%s]: "
 msgstr ""
@@ -3059,7 +3080,7 @@
 msgid "WARNING: generating temporary SSL certificate"
 msgstr "WARNUNG: erzeuge temporäres SSL-Zertifikat"
 
-#: ../roundup/scripts/roundup_server.py:293
+#: ../roundup/scripts/roundup_server.py:327
 msgid ""
 "<html><head><title>Roundup trackers index</title></head>\n"
 "<body><h1>Roundup trackers index</h1><ol>\n"
@@ -3067,62 +3088,62 @@
 "<html><head><title>Roundup Tracker-Liste</title></head>\n"
 "<body><h1>Roundup Tracker-Liste</h1><ol>\n"
 
-#: ../roundup/scripts/roundup_server.py:513
+#: ../roundup/scripts/roundup_server.py:547
 #, fuzzy, python-format
 msgid "Error: %(type)s: %(value)s"
 msgstr "%(key)s: %(value)s"
 
-#: ../roundup/scripts/roundup_server.py:525
+#: ../roundup/scripts/roundup_server.py:559
 msgid "WARNING: ignoring \"-g\" argument, not root"
 msgstr ""
 "WARNUNG: die Option \"-g\" wird ignoriert, da Sie nicht Administrator sind"
 
-#: ../roundup/scripts/roundup_server.py:531
+#: ../roundup/scripts/roundup_server.py:565
 msgid "Can't change groups - no grp module"
 msgstr "Die Gruppe kann nicht gewechselt werden - das Modul grp fehlt"
 
-#: ../roundup/scripts/roundup_server.py:540
+#: ../roundup/scripts/roundup_server.py:574
 #, python-format
 msgid "Group %(group)s doesn't exist"
 msgstr "Die Gruppe %(group)s existiert nicht"
 
-#: ../roundup/scripts/roundup_server.py:552
+#: ../roundup/scripts/roundup_server.py:586
 msgid "Can't run as root!"
 msgstr ""
 "Dieser Prozess kann nicht unter dem Administrator-Konto (\"root\") laufen!"
 
-#: ../roundup/scripts/roundup_server.py:555
+#: ../roundup/scripts/roundup_server.py:589
 msgid "WARNING: ignoring \"-u\" argument, not root"
 msgstr ""
 "WARNUNG: die Option \"-u\" wird ignoriert, da Sie nicht Administrator sind"
 
-#: ../roundup/scripts/roundup_server.py:561
+#: ../roundup/scripts/roundup_server.py:595
 msgid "Can't change users - no pwd module"
 msgstr "Der Benutzer kann nicht gewechselt werden - das Modul pwd fehlt"
 
-#: ../roundup/scripts/roundup_server.py:570
+#: ../roundup/scripts/roundup_server.py:604
 #, python-format
 msgid "User %(user)s doesn't exist"
 msgstr "Der Benutzer %(user)s existiert nicht"
 
-#: ../roundup/scripts/roundup_server.py:766
+#: ../roundup/scripts/roundup_server.py:800
 #, python-format
 msgid "Multiprocess mode \"%s\" is not available, switching to single-process"
 msgstr ""
 "Der Multiprozessmodus \"%s\" ist nicht verfügbar, Einprozessmodus aktiviert"
 
-#: ../roundup/scripts/roundup_server.py:793
+#: ../roundup/scripts/roundup_server.py:827
 #, python-format
 msgid "Unable to bind to port %s, port already in use."
 msgstr "Start des Servers auf Port %s schlug fehl. Port bereits verwendet."
 
-#: ../roundup/scripts/roundup_server.py:796
+#: ../roundup/scripts/roundup_server.py:830
 #, fuzzy, python-format
 msgid ""
 "Unable to bind to port %(port)s, access not allowed, errno: %(errno)s %(msg)s"
 msgstr "Start des Servers auf Port %s schlug fehl. Port bereits verwendet."
 
-#: ../roundup/scripts/roundup_server.py:874
+#: ../roundup/scripts/roundup_server.py:908
 msgid ""
 " -c <Command>  Windows Service options.\n"
 "               If you want to run the server as a Windows Service, you\n"
@@ -3138,7 +3159,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:881
+#: ../roundup/scripts/roundup_server.py:915
 msgid ""
 " -u <UID>      runs the Roundup web server as this UID\n"
 " -g <GID>      runs the Roundup web server as this GID\n"
@@ -3152,7 +3173,7 @@
 "               die Prozess-ID in die Datei PIDDatei.\n"
 "               Die Option -l muss dann auch angegeben werden."
 
-#: ../roundup/scripts/roundup_server.py:888
+#: ../roundup/scripts/roundup_server.py:922
 #, fuzzy, python-format
 msgid ""
 "\n"
@@ -3272,21 +3293,21 @@
 "   URLs Probleme bereiten könnten. Am besten verwenden Sie nur Buchstaben, \n"
 "   Zahlen und \"-_\".\n"
 
-#: ../roundup/scripts/roundup_server.py:1064
+#: ../roundup/scripts/roundup_server.py:1098
 msgid "Instances must be name=home"
 msgstr "Instanzen müssen als Tracker-Name=Tracker-Verzeichnis angegeben werden"
 
-#: ../roundup/scripts/roundup_server.py:1078
+#: ../roundup/scripts/roundup_server.py:1112
 #, python-format
 msgid "Configuration saved to %s"
 msgstr "Konfiguration in der Datei %s gespeichert"
 
-#: ../roundup/scripts/roundup_server.py:1096
+#: ../roundup/scripts/roundup_server.py:1130
 msgid "Sorry, you can't run the server as a daemon on this Operating System"
 msgstr ""
 "Auf diesem Betriebssystem kann der Server nicht als Hintergrundprozess laufen"
 
-#: ../roundup/scripts/roundup_server.py:1116
+#: ../roundup/scripts/roundup_server.py:1150
 #, python-format
 msgid "Roundup server started on %(HOST)s:%(PORT)s"
 msgstr "Der Roundup-Server wurde unter %(HOST)s:%(PORT)s gestartet"

Roundup Issue Tracker: http://roundup-tracker.org/