From 1caa50d6f2a62b04c7ac889a7db2592cf06ff9e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Mon, 18 Dec 2023 21:59:18 +0100 Subject: [PATCH] update german translations --- src/c3nav/locale/de/LC_MESSAGES/django.po | 2107 ++++++++++++++------- 1 file changed, 1374 insertions(+), 733 deletions(-) diff --git a/src/c3nav/locale/de/LC_MESSAGES/django.po b/src/c3nav/locale/de/LC_MESSAGES/django.po index 58529f1f..7adf82d6 100644 --- a/src/c3nav/locale/de/LC_MESSAGES/django.po +++ b/src/c3nav/locale/de/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-12-28 17:16+0100\n" -"PO-Revision-Date: 2019-12-28 17:16+0100\n" +"POT-Creation-Date: 2023-12-18 21:39+0100\n" +"PO-Revision-Date: 2023-12-18 21:58+0100\n" "Last-Translator: Jenny Danzmayr \n" "Language-Team: \n" "Language: de\n" @@ -16,46 +16,63 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 2.2.4\n" +"X-Generator: Poedit 3.4.1\n" -#: c3nav/api/api.py:36 -msgid "Log out first." -msgstr "Bitte zuerst abmelden." +#: c3nav/api/models.py:23 c3nav/mapdata/models/locations.py:581 +#: c3nav/mesh/models.py:245 +msgid "name" +msgstr "Name" -#: c3nav/api/api.py:44 -msgid "This token does not exist or is no longer valid." -msgstr "Dieser Token existiert nicht oder ist nicht mehr gültig." +#: c3nav/api/models.py:24 +msgid "creation date" +msgstr "Erstellungsdatum" -#: c3nav/api/api.py:52 -msgid "You need to send a token or username and password." -msgstr "Du musst einen Token oder Benutzername und Passwort senden." +#: c3nav/api/models.py:25 c3nav/api/models.py:41 +msgid "API secret" +msgstr "API secret" -#: c3nav/api/api.py:57 -msgid "Login successful." -msgstr "Login erfogreich." +#: c3nav/api/models.py:26 +msgid "readonly" +msgstr "readonly" -#: c3nav/api/api.py:84 -msgid "Not logged in." -msgstr "Nich angemeldet." +#: c3nav/api/models.py:27 +msgid "grant map access permissions" +msgstr "Zugangserlaubnisse erteilen" -#: c3nav/api/api.py:89 -msgid "Logout successful." -msgstr "Login erfolgreich." +#: c3nav/api/models.py:28 +msgid "editor access" +msgstr "Editor-Zugriff" -#: c3nav/api/models.py:14 c3nav/mapdata/models/locations.py:567 +#: c3nav/api/models.py:29 +msgid "mesh access" +msgstr "Mesh-Zugriff" + +#: c3nav/api/models.py:30 +msgid "valid_until" +msgstr "gültig bis" + +#: c3nav/api/models.py:38 +msgid "(readonly)" +msgstr "(readonly)" + +#: c3nav/api/models.py:42 +msgid "API secrets" +msgstr "API secrets" + +#: c3nav/api/models.py:53 c3nav/mapdata/models/locations.py:582 #: c3nav/mapdata/models/report.py:55 msgid "secret" msgstr "secret" -#: c3nav/api/models.py:15 +#: c3nav/api/models.py:54 msgid "session auth hash" msgstr "session auth hash" -#: c3nav/api/models.py:18 c3nav/api/models.py:19 +#: c3nav/api/models.py:57 c3nav/api/models.py:58 msgid "login tokens" msgstr "Login-Tokens" -#: c3nav/control/admin.py:18 +#: c3nav/control/admin.py:18 c3nav/site/templates/site/api_secret_list.html:16 msgid "Permissions" msgstr "Befugnisse" @@ -63,97 +80,105 @@ msgstr "Befugnisse" msgid "Important dates" msgstr "Wichtige Daten" -#: c3nav/control/forms.py:83 +#: c3nav/control/forms.py:88 msgid "choose permissions…" msgstr "Erlaubnsise auswählen…" -#: c3nav/control/forms.py:84 +#: c3nav/control/forms.py:89 #, python-format msgid "everything possible (%d permission)" msgid_plural "everything possible (%d permissions)" msgstr[0] "alles mögliche (%d Erlaubnis)" msgstr[1] "alles mögliche (%d Erlaubnisse)" -#: c3nav/control/forms.py:88 +#: c3nav/control/forms.py:93 msgid "Access Permission Groups" msgstr "Zugangserlaubnisgruppen" -#: c3nav/control/forms.py:92 c3nav/control/templates/control/access.html:4 -#: c3nav/control/templates/control/user.html:64 +#: c3nav/control/forms.py:97 c3nav/control/templates/control/access.html:4 +#: c3nav/control/templates/control/user.html:34 #: c3nav/mapdata/models/access.py:149 msgid "Access Permissions" msgstr "Zugangserlaubnisse" -#: c3nav/control/forms.py:101 c3nav/control/templates/control/user.html:95 -#: c3nav/control/templates/control/user.html:138 +#: c3nav/control/forms.py:106 c3nav/control/templates/control/user.html:65 +#: c3nav/control/templates/control/user.html:108 msgid "never" msgstr "nie" -#: c3nav/control/forms.py:105 +#: c3nav/control/forms.py:110 #, python-format msgid "in %d minute" msgid_plural "in %d minutes" msgstr[0] "in %d Minute" msgstr[1] "in %d Minuten" -#: c3nav/control/forms.py:109 +#: c3nav/control/forms.py:114 #, python-format msgid "in %d hour" msgid_plural "in %d hours" msgstr[0] "in %d Stunde" msgstr[1] "in %d Stunden" -#: c3nav/control/forms.py:112 +#: c3nav/control/forms.py:117 msgid "in 1½ hour" msgstr "in 1½ Stunden" -#: c3nav/control/forms.py:116 +#: c3nav/control/forms.py:121 #, python-format msgid "in %d day" msgid_plural "in %d days" msgstr[0] "in %d Tag" msgstr[1] "in %d Tagen" -#: c3nav/control/forms.py:123 +#: c3nav/control/forms.py:128 msgid "can pass on" msgstr "kann weitergeben" -#: c3nav/control/forms.py:256 +#: c3nav/control/forms.py:265 msgid "no" msgstr "nein" -#: c3nav/control/forms.py:256 +#: c3nav/control/forms.py:265 msgid "yes" msgstr "ja" -#: c3nav/control/forms.py:276 +#: c3nav/control/forms.py:285 msgid "any type" msgstr "beliebiger Typ" -#: c3nav/control/forms.py:280 c3nav/control/forms.py:284 +#: c3nav/control/forms.py:289 c3nav/control/forms.py:293 msgid "any" msgstr "beliebig" -#: c3nav/control/forms.py:280 +#: c3nav/control/forms.py:289 msgid "geometries changed" msgstr "geometrien geändert" -#: c3nav/control/forms.py:280 +#: c3nav/control/forms.py:289 msgid "no geometries changed" msgstr "keine geometrien geändert" -#: c3nav/control/forms.py:284 +#: c3nav/control/forms.py:293 msgid "processed" msgstr "verarbeitet" -#: c3nav/control/forms.py:284 +#: c3nav/control/forms.py:293 msgid "not processed" msgstr "nicht verarbeitet" -#: c3nav/control/forms.py:291 +#: c3nav/control/forms.py:300 msgid "user id" msgstr "User ID" +#: c3nav/control/forms.py:313 +msgid "message types" +msgstr "Nachrichtentypen" + +#: c3nav/control/forms.py:318 c3nav/mesh/forms.py:51 +msgid "nodes" +msgstr "Nodes" + #: c3nav/control/models.py:20 msgid "can review changesets" msgstr "kann Änderungssets überprüfen" @@ -206,16 +231,15 @@ msgstr "kann alle Meldungen überprüfen" msgid "can review reports belonging to" msgstr "can Meldungen überprüfen die zu diesen Gruppen gehören" -#: c3nav/control/models.py:38 c3nav/control/templates/control/user.html:34 -#: c3nav/site/templates/site/position_detail.html:22 -msgid "API secret" -msgstr "API secret" +#: c3nav/control/models.py:38 +msgid "can access mesh control" +msgstr "kann auf das Mesh Control Panel zugreifen" #: c3nav/control/models.py:41 c3nav/control/models.py:42 msgid "User Permissions" msgstr "Benutzerbefugnisse" -#: c3nav/control/models.py:116 c3nav/control/templates/control/user.html:169 +#: c3nav/control/models.py:116 c3nav/control/templates/control/user.html:139 msgid "can edit" msgstr "kann bearbeiten" @@ -253,6 +277,7 @@ msgid "Edit announcement" msgstr "Ankündigung bearbeiten" #: c3nav/control/templates/control/announcement.html:10 +#: c3nav/control/templates/control/form.html:12 #: c3nav/control/templates/control/user.html:21 #: c3nav/editor/templates/editor/changeset_edit.html:25 #: c3nav/editor/templates/editor/edit.html:32 @@ -268,7 +293,8 @@ msgstr "Benutzer" #: c3nav/control/templates/control/announcements.html:9 #: c3nav/control/templates/control/map_updates.html:59 #: c3nav/control/templates/control/users.html:15 -#: c3nav/mapdata/models/base.py:43 c3nav/mapdata/utils/locations.py:327 +#: c3nav/mapdata/models/base.py:43 c3nav/mapdata/utils/locations.py:340 +#: c3nav/mesh/templates/mesh/ota_list.html:23 #: c3nav/site/templates/site/report_list.html:18 msgid "ID" msgstr "ID" @@ -295,6 +321,7 @@ msgstr "Aktiv bis" #: c3nav/editor/templates/editor/changeset.html:91 #: c3nav/editor/templates/editor/changeset.html:136 #: c3nav/editor/templates/editor/list.html:28 +#: c3nav/mesh/templates/mesh/node_detail.html:46 msgid "Edit" msgstr "Bearbeiten" @@ -304,7 +331,6 @@ msgid "Create new announcement" msgstr "Neue Ankündigung erstellen" #: c3nav/control/templates/control/base.html:6 -#: c3nav/site/templates/site/account.html:22 msgid "c3nav control panel" msgstr "c3nav control panel" @@ -314,6 +340,7 @@ msgstr "control panel" #: c3nav/control/templates/control/base.html:13 #: c3nav/editor/templates/editor/fragment_nav.html:5 +#: c3nav/mesh/templates/mesh/base.html:13 #: c3nav/site/templates/site/about.html:7 msgid "back to c3nav" msgstr "zurück zu c3nav" @@ -335,6 +362,12 @@ msgstr "Ankündigungen" msgid "Map Updates" msgstr "Kartenänderungen" +#: c3nav/control/templates/control/base.html:27 +#: c3nav/mesh/templates/mesh/firmware_build_detail.html:4 +#: c3nav/mesh/templates/mesh/firmware_detail.html:4 +msgid "Mesh" +msgstr "Mesh" + #: c3nav/control/templates/control/fragment_pagination.html:5 #: c3nav/site/templates/site/fragment_pagination.html:5 msgid "first" @@ -443,26 +476,27 @@ msgid "" "Changeset #%(changeset_id)s by %(author_name)s applied by %(user_name)s" msgstr "" -"Änderungsset #%(changeset_id)s von " -"%(author_name)s angewendet von %(user_name)s" +"Änderungsset #%(changeset_id)s von %(author_name)s angewendet von %(user_name)s" #: c3nav/control/templates/control/map_updates.html:89 #: c3nav/control/templates/control/map_updates.html:96 -#: c3nav/control/templates/control/user.html:101 -#: c3nav/control/templates/control/user.html:144 -#: c3nav/control/templates/control/user.html:177 -#: c3nav/mapdata/models/geometry/level.py:142 -#: c3nav/mapdata/models/locations.py:134 c3nav/mapdata/models/locations.py:135 +#: c3nav/control/templates/control/user.html:71 +#: c3nav/control/templates/control/user.html:114 +#: c3nav/control/templates/control/user.html:147 +#: c3nav/mapdata/models/geometry/level.py:144 +#: c3nav/mapdata/models/locations.py:137 c3nav/mapdata/models/locations.py:138 msgid "Yes" msgstr "Ja" #: c3nav/control/templates/control/map_updates.html:91 #: c3nav/control/templates/control/map_updates.html:98 -#: c3nav/control/templates/control/user.html:103 -#: c3nav/control/templates/control/user.html:146 -#: c3nav/control/templates/control/user.html:179 -#: c3nav/mapdata/models/geometry/level.py:142 -#: c3nav/mapdata/models/locations.py:134 c3nav/mapdata/models/locations.py:135 +#: c3nav/control/templates/control/user.html:73 +#: c3nav/control/templates/control/user.html:116 +#: c3nav/control/templates/control/user.html:149 +#: c3nav/mapdata/models/geometry/level.py:144 +#: c3nav/mapdata/models/locations.py:137 c3nav/mapdata/models/locations.py:138 msgid "No" msgstr "Nein" @@ -475,120 +509,85 @@ msgid "General Permissions" msgstr "Generelle Befugnisse" #: c3nav/control/templates/control/user.html:28 -#: c3nav/control/templates/control/user.html:115 -#: c3nav/control/templates/control/user.html:155 +#: c3nav/control/templates/control/user.html:85 +#: c3nav/control/templates/control/user.html:125 msgid "none" msgstr "keine" #: c3nav/control/templates/control/user.html:38 -msgid "This user has an API secret." -msgstr "Dieser Benutzer hat ein API Secret." - -#: c3nav/control/templates/control/user.html:40 -msgid "You have an API secret." -msgstr "Du hast ein API Secret." - -#: c3nav/control/templates/control/user.html:42 -msgid "You can not see it, but generate a new one." -msgstr "Du kannst es nich sehen, aber ein neues generieren." - -#: c3nav/control/templates/control/user.html:44 -msgid "This user has not an API secret." -msgstr "Dieser Benutzer hat kein API Secret." - -#: c3nav/control/templates/control/user.html:45 -msgid "You can create one." -msgstr "Du kannst eins erstellen." - -#: c3nav/control/templates/control/user.html:53 -msgid "Regenerate API secret" -msgstr "API Secret neu generieren" - -#: c3nav/control/templates/control/user.html:54 -msgid "Delete API secret" -msgstr "API Secret löschen" - -#: c3nav/control/templates/control/user.html:56 -msgid "Generate API secret" -msgstr "API Secret generieren" - -#: c3nav/control/templates/control/user.html:59 -msgid "Update API secret" -msgstr "API Secret updaten" - -#: c3nav/control/templates/control/user.html:68 #, python-format msgid "for %(restriction_title)s" msgstr "für %(restriction_title)s" -#: c3nav/control/templates/control/user.html:70 +#: c3nav/control/templates/control/user.html:40 #: c3nav/editor/templates/editor/account_form.html:11 -#: c3nav/site/templates/site/account_form.html:12 +#: c3nav/site/templates/site/account_form.html:13 #: c3nav/site/templates/site/confirm.html:19 msgid "back" msgstr "zurück" -#: c3nav/control/templates/control/user.html:77 -#: c3nav/mapdata/models/access.py:77 c3nav/mapdata/models/geometry/space.py:385 +#: c3nav/control/templates/control/user.html:47 +#: c3nav/mapdata/models/access.py:77 c3nav/mapdata/models/geometry/space.py:402 #: c3nav/mapdata/models/report.py:34 c3nav/mapdata/models/report.py:174 #: c3nav/site/models.py:17 msgid "author" msgstr "Autor" -#: c3nav/control/templates/control/user.html:78 -#: c3nav/control/templates/control/user.html:126 +#: c3nav/control/templates/control/user.html:48 +#: c3nav/control/templates/control/user.html:96 #: c3nav/mapdata/models/access.py:139 msgid "expires" msgstr "läuft ab" -#: c3nav/control/templates/control/user.html:79 -#: c3nav/control/templates/control/user.html:127 +#: c3nav/control/templates/control/user.html:49 +#: c3nav/control/templates/control/user.html:97 #: c3nav/mapdata/models/access.py:82 c3nav/mapdata/models/access.py:140 msgid "can grant" msgstr "kann erteilen" -#: c3nav/control/templates/control/user.html:80 +#: c3nav/control/templates/control/user.html:50 msgid "key" msgstr "key" -#: c3nav/control/templates/control/user.html:108 -#: c3nav/control/templates/control/user.html:183 +#: c3nav/control/templates/control/user.html:78 +#: c3nav/control/templates/control/user.html:153 #: c3nav/editor/templates/editor/changeset.html:124 #: c3nav/editor/templates/editor/delete.html:17 #: c3nav/editor/templates/editor/edit.html:27 +#: c3nav/site/templates/site/api_secret_list.html:18 msgid "Delete" msgstr "Löschen" -#: c3nav/control/templates/control/user.html:118 -#: c3nav/control/templates/control/user.html:201 +#: c3nav/control/templates/control/user.html:88 +#: c3nav/control/templates/control/user.html:171 msgid "Add" msgstr "Hinzufügen" -#: c3nav/control/templates/control/user.html:125 +#: c3nav/control/templates/control/user.html:95 #: c3nav/mapdata/models/access.py:27 c3nav/mapdata/models/access.py:243 #: c3nav/mapdata/models/access.py:256 msgid "Access Restriction" msgstr "Zugangs­beschränkung" -#: c3nav/control/templates/control/user.html:149 +#: c3nav/control/templates/control/user.html:119 #: c3nav/editor/templates/editor/fragment_changesets.html:10 #: c3nav/editor/templates/editor/list.html:26 -#: c3nav/site/templates/site/map.html:125 -#: c3nav/site/templates/site/map.html:159 -#: c3nav/site/templates/site/map.html:168 -#: c3nav/site/templates/site/map.html:189 +#: c3nav/site/templates/site/map.html:128 +#: c3nav/site/templates/site/map.html:162 +#: c3nav/site/templates/site/map.html:171 +#: c3nav/site/templates/site/map.html:192 msgid "Details" msgstr "Details" -#: c3nav/control/templates/control/user.html:161 +#: c3nav/control/templates/control/user.html:131 msgid "Space Access" msgstr "Raumzugriffserlaubnis" -#: c3nav/control/templates/control/user.html:168 +#: c3nav/control/templates/control/user.html:138 #: c3nav/editor/templates/editor/space.html:9 #: c3nav/mapdata/models/geometry/level.py:124 -#: c3nav/mapdata/models/geometry/space.py:81 -#: c3nav/mapdata/utils/locations.py:335 +#: c3nav/mapdata/models/geometry/space.py:88 +#: c3nav/mapdata/utils/locations.py:348 msgid "Space" msgstr "Raum" @@ -600,241 +599,156 @@ msgstr "Suchen" msgid "Username" msgstr "Benutzername" -#: c3nav/control/views.py:82 -msgid "Unknown access permission." -msgstr "Unbekannte Zugangserlaubnis." - -#: c3nav/control/views.py:86 -msgid "Access Permission successfully deleted." -msgstr "Zugangserlaubnis erfolgreich gelöscht." - -#: c3nav/control/views.py:88 -msgid "You cannot delete this Access Permission." -msgstr "Du kannst diese Zugangsberechtigung nicht löschen." - -#: c3nav/control/views.py:98 -msgid "This user already has an API secret." -msgstr "Dieser Benutzer hat bereis ein API Secret." - -#: c3nav/control/views.py:102 -msgid "This user does not have an API secret." -msgstr "Dieser Benutzer hat kein API Secret." - -#: c3nav/control/views.py:111 -#, python-format -msgid "" -"The new API secret is: %s – be sure to note it down now, it won't be shown " -"again." -msgstr "" -"Das neue API Secret ist: %s – notier es dir sofort, denn es wird nicht " -"erneut angezeigt." - -#: c3nav/control/views.py:118 -msgid "API secret successfully deleted!" -msgstr "API secret erfolgreich gelöscht!" - -#: c3nav/control/views.py:142 -msgid "General permissions successfully updated." -msgstr "Generelle Befugnisse erfolgreich gespeichert." - -#: c3nav/control/views.py:169 -msgid "Access permissions successfully granted." -msgstr "Zugangserlaubnis erfolgreich erteilt." - -#: c3nav/control/views.py:209 -msgid "User space access could not be granted because it already exists." -msgstr "" -"Benutzer-Raumzugriffserlaubnis konnte nicht gewährt werden weil sie bereits " -"existiert." - -#: c3nav/control/views.py:211 -msgid "User space access successfully granted." -msgstr "Benutzer-Raumzugriffserlaubnis erfolgreich gewährt." - -#: c3nav/control/views.py:222 -msgid "Unknown space access." -msgstr "Unbekannte Raumzugriffserlaubnis." - -#: c3nav/control/views.py:226 -msgid "Space access successfully deleted." -msgstr "Raumzugriffserlaubnis erfolgreich gelöscht." - -#: c3nav/control/views.py:228 -msgid "You cannot delete this space access." -msgstr "Du kannst diese Raumzugriffserlaubnis nicht löschen." - -#: c3nav/control/views.py:271 +#: c3nav/control/views/access.py:44 msgid "Access successfully granted." msgstr "Zugangserlaubnis erfolgreich erteilt." -#: c3nav/control/views.py:275 +#: c3nav/control/views/access.py:48 msgid "Token successfully revoked." msgstr "Token erfolgreich invalidiert." -#: c3nav/control/views.py:286 +#: c3nav/control/views/access.py:59 msgid "You can only display your most recently created token." msgstr "Du kannst nur deinen zuletzt erstellten Code anzeigen." -#: c3nav/control/views.py:364 +#: c3nav/control/views/mapupdates.py:35 msgid "Map update successfully created." msgstr "Kartenänderung erfolgreich erstellt." -#: c3nav/control/views.py:369 +#: c3nav/control/views/mapupdates.py:40 msgid "Map update processing successfully queued." msgstr "Kartenänderungsverarbeitung erfolgreich veranlasst." -#: c3nav/control/views.py:371 +#: c3nav/control/views/mapupdates.py:42 msgid "" "Map update processing was not be queued because celery is not configured." msgstr "" "Kartenänderungsverarbeitung konnte nicht veranlasst werden da Celery nicht " "konfiguriert ist." -#: c3nav/editor/api.py:414 +#: c3nav/control/views/users.py:51 +msgid "Unknown access permission." +msgstr "Unbekannte Zugangserlaubnis." + +#: c3nav/control/views/users.py:55 +msgid "Access Permission successfully deleted." +msgstr "Zugangserlaubnis erfolgreich gelöscht." + +#: c3nav/control/views/users.py:57 +msgid "You cannot delete this Access Permission." +msgstr "Du kannst diese Zugangsberechtigung nicht löschen." + +#: c3nav/control/views/users.py:80 +msgid "General permissions successfully updated." +msgstr "Generelle Befugnisse erfolgreich gespeichert." + +#: c3nav/control/views/users.py:109 +msgid "Access permissions successfully granted." +msgstr "Zugangserlaubnis erfolgreich erteilt." + +#: c3nav/control/views/users.py:149 +msgid "User space access could not be granted because it already exists." +msgstr "" +"Benutzer-Raumzugriffserlaubnis konnte nicht gewährt werden weil sie bereits " +"existiert." + +#: c3nav/control/views/users.py:151 +msgid "User space access successfully granted." +msgstr "Benutzer-Raumzugriffserlaubnis erfolgreich gewährt." + +#: c3nav/control/views/users.py:162 +msgid "Unknown space access." +msgstr "Unbekannte Raumzugriffserlaubnis." + +#: c3nav/control/views/users.py:166 +msgid "Space access successfully deleted." +msgstr "Raumzugriffserlaubnis erfolgreich gelöscht." + +#: c3nav/control/views/users.py:168 +msgid "You cannot delete this space access." +msgstr "Du kannst diese Raumzugriffserlaubnis nicht löschen." + +#: c3nav/editor/api/endpoints.py:128 msgid "No matching editor view endpoint found." msgstr "Es wurde keine passende Editor-Endpunkt gefunden." -#: c3nav/editor/api.py:417 +#: c3nav/editor/api/endpoints.py:131 msgid "Matching editor view point does not provide an API." msgstr "Der entsprechende Editor-Endpunkt bietet diese API nicht an." -#: c3nav/editor/api.py:500 -msgid "You don't have the permission to activate direct editing." -msgstr "Du darfst direktes Bearbeiten nicht aktivieren." - -#: c3nav/editor/api.py:504 -msgid "You cannot activate direct editing if you have an active changeset." -msgstr "" -"Du kannst direktes Bearbeiten nicht aktivieren, wenn du ein aktives " -"Änderungsset hast." - -#: c3nav/editor/api.py:535 c3nav/editor/views/changes.py:66 -msgid "You can not activate this change set." -msgstr "Du kannst dieses Änderungsset nicht aktivieren." - -#: c3nav/editor/api.py:545 c3nav/editor/views/changes.py:400 -msgid "You cannot edit this change set." -msgstr "Du kannst dieses Änderungsset nicht bearbeiten." - -#: c3nav/editor/api.py:574 c3nav/editor/views/changes.py:56 -msgid "You can not edit changes on this change set." -msgstr "Du kannst keine Änderungen dieses Änderungssets bearbeiten." - -#: c3nav/editor/api.py:584 c3nav/editor/views/changes.py:52 -msgid "" -"You cannot restore this object, because it depends on a deleted object or it " -"would violate a unique contraint." -msgstr "" -"Du kannst dieses Objekt nicht wiederherstellen weil es ein anderes Objekt " -"benötigt oder weil es einer Eindeutigen Beschränkung wiedersprechen würde." - -#: c3nav/editor/api.py:592 c3nav/editor/views/changes.py:72 -msgid "You need to log in to propose changes." -msgstr "Du musst dich anmelden um Änderungen vorzuschlagen." - -#: c3nav/editor/api.py:597 c3nav/editor/views/changes.py:77 -msgid "You need to add a title an a description to propose this change set." -msgstr "" -"Du musst einen Titel und eine Beschreibung hinzufügen, um dieses " -"Änderungsset vorzuschlagen." - -#: c3nav/editor/api.py:600 c3nav/editor/views/changes.py:84 -msgid "You cannot propose this change set." -msgstr "Du kannst dieses Änderungsset nicht vorschlagen." - -#: c3nav/editor/api.py:610 c3nav/editor/views/changes.py:94 -msgid "You cannot unpropose this change set." -msgstr "Du kannst diesen Änderungsvorschlag nicht zurücknehmen." - -#: c3nav/editor/api.py:620 c3nav/editor/views/changes.py:104 -msgid "You cannot review these changes." -msgstr "Du kannst diese Änderungen nicht überprüfen." - -#: c3nav/editor/api.py:630 c3nav/editor/views/changes.py:111 -msgid "You cannot reject these changes." -msgstr "Du kannst diese Änderungen nicht ablehnen." - -#: c3nav/editor/api.py:644 c3nav/editor/views/changes.py:131 -msgid "You cannot unreject these changes." -msgstr "Du kannst diese Änderungsablehnung nicht zurücknehmen." - -#: c3nav/editor/api.py:654 c3nav/editor/views/changes.py:142 -msgid "You cannot accept and apply these changes." -msgstr "Du kannst diese Änderungen nicht akzeptieren und anwenden." - -#: c3nav/editor/api.py:664 c3nav/editor/views/changes.py:155 -msgid "You cannot delete this change set." -msgstr "Du kannst dieses Änderungsset nicht löschen." - -#: c3nav/editor/forms.py:191 +#: c3nav/editor/forms.py:199 msgid "Redirecting Slugs (comma separated)" msgstr "Umleitungs-Slugs (mit Komma getrennt)" -#: c3nav/editor/forms.py:230 +#: c3nav/editor/forms.py:238 #, python-format msgid "Can not add redirecting slug “%s”: it's the slug of this object." msgstr "" "Umleitungs-Slug „%s“ kann nicht hinzugefügt werden: Es ist der Slug dieses " "Objects." -#: c3nav/editor/forms.py:237 +#: c3nav/editor/forms.py:245 #, python-format msgid "Can not add redirecting slug “%s”: it is already used elsewhere." msgstr "" "Umleitungs-Slug „%s“ kann nicht hinzugefügt werden: Er wird bereits an " "anderer Stelle verwendet." -#: c3nav/editor/forms.py:244 +#: c3nav/editor/forms.py:252 msgid "Invalid JSON." msgstr "Invalides JSON." -#: c3nav/editor/forms.py:310 +#: c3nav/editor/forms.py:255 +msgid "Scan data is not a list." +msgstr "Scanliste ist keine Liste." + +#: c3nav/editor/forms.py:321 msgid "Final rejection" msgstr "Endgültige Ablehnung" -#: c3nav/editor/forms.py:318 +#: c3nav/editor/forms.py:329 msgid "create one way edges" msgstr "Kante nur in eine Richtung erstellen" -#: c3nav/editor/forms.py:319 +#: c3nav/editor/forms.py:330 msgid "activate next node after connecting" msgstr "nächsten Knoten nach dem Verbinden aktivieren" -#: c3nav/editor/models/changedobject.py:34 c3nav/editor/models/changeset.py:58 +#: c3nav/editor/models/changedobject.py:35 c3nav/editor/models/changeset.py:58 msgid "Change Set" msgstr "Änderungsset" -#: c3nav/editor/models/changedobject.py:35 c3nav/editor/models/changeset.py:39 -#: c3nav/editor/views/changes.py:266 c3nav/mapdata/models/report.py:32 +#: c3nav/editor/models/changedobject.py:36 c3nav/editor/models/changeset.py:39 +#: c3nav/editor/views/changes.py:276 c3nav/mapdata/models/report.py:32 #: c3nav/site/models.py:14 c3nav/site/models.py:54 msgid "created" msgstr "erstellt" -#: c3nav/editor/models/changedobject.py:37 +#: c3nav/editor/models/changedobject.py:38 msgid "id of existing object" msgstr "ID eines existierenden Objects" -#: c3nav/editor/models/changedobject.py:38 +#: c3nav/editor/models/changedobject.py:39 msgid "updated fields" msgstr "geänderte Felder" -#: c3nav/editor/models/changedobject.py:39 +#: c3nav/editor/models/changedobject.py:41 msgid "added m2m values" msgstr "hinzugefügte m2m-Werte" -#: c3nav/editor/models/changedobject.py:40 +#: c3nav/editor/models/changedobject.py:42 msgid "removed m2m values" msgstr "entfernte m2m-Werte" -#: c3nav/editor/models/changedobject.py:41 +#: c3nav/editor/models/changedobject.py:43 msgid "object was deleted" msgstr "Object wurde gelöscht" -#: c3nav/editor/models/changedobject.py:46 +#: c3nav/editor/models/changedobject.py:48 msgid "Changed object" msgstr "Geändertes Objekt" -#: c3nav/editor/models/changedobject.py:47 +#: c3nav/editor/models/changedobject.py:49 msgid "Changed objects" msgstr "Geänderte Objekte" @@ -879,8 +793,8 @@ msgid "last state update" msgstr "letzte Statusänderung" #: c3nav/editor/models/changeset.py:48 c3nav/mapdata/models/base.py:64 -#: c3nav/mapdata/models/graph.py:38 c3nav/mapdata/models/locations.py:272 -#: c3nav/mapdata/models/locations.py:440 c3nav/mapdata/utils/locations.py:363 +#: c3nav/mapdata/models/graph.py:38 c3nav/mapdata/models/locations.py:275 +#: c3nav/mapdata/models/locations.py:458 c3nav/mapdata/utils/locations.py:376 #: c3nav/site/templates/site/report_list.html:19 msgid "Title" msgstr "Titel" @@ -918,6 +832,7 @@ msgstr[0] "%(num)d Objekt geändert" msgstr[1] "%(num)d Objekte geändert" #: c3nav/editor/models/changesetupdate.py:12 c3nav/mapdata/models/report.py:173 +#: c3nav/mesh/models.py:374 msgid "datetime" msgstr "Zeitpunkt" @@ -997,8 +912,8 @@ msgstr "" #: c3nav/editor/templates/editor/changeset.html:48 #, python-format msgid "" -"These changes are currently being reviewed by " -"%(user)s." +"These changes are currently being reviewed by %(user)s." msgstr "" "Diese Änderungen werden aktuell von %(user)s " "überprüft." @@ -1015,8 +930,8 @@ msgstr "" #: c3nav/editor/templates/editor/changeset.html:56 #, python-format msgid "" -"These changes were finally rejected by %(user)s with the followed comment:" +"These changes were finally rejected by %(user)s with the followed comment:" msgstr "" "Diese Änderungen wurden von %(user)s mit der " "folgenden Begründung endgültig zurückgewiesen:" @@ -1042,17 +957,17 @@ msgid "" "In the meantime, if you want to create a new change set, you can do so in your profile." msgstr "" -"Bis dahin kannst du wenn du möchtest ein neues Änderungsset in deinem Profil erstellen." +"Bis dahin kannst du wenn du möchtest ein neues Änderungsset in deinem Profil erstellen." #: c3nav/editor/templates/editor/changeset.html:74 #, python-format msgid "" -"If you want to create a new change set, you can do so in your profile." +"If you want to create a new change set, you can do so in your profile." msgstr "" -"Wenn du ein neues Änderungsset erstellen möchtest, kannst du das in deinem Profil tun." +"Wenn du ein neues Änderungsset erstellen möchtest, kannst du das in deinem Profil tun." #: c3nav/editor/templates/editor/changeset.html:95 msgid "Restore" @@ -1164,12 +1079,13 @@ msgid "close dialog" msgstr "Dialog schließen" #: c3nav/editor/templates/editor/fragment_nav.html:21 -#: c3nav/site/templates/site/account.html:55 +#: c3nav/site/templates/site/account.html:53 +#: c3nav/site/templates/site/account_manage.html:23 msgid "Log out" msgstr "Abmelden" #: c3nav/editor/templates/editor/fragment_nav.html:23 -#: c3nav/editor/views/account.py:27 c3nav/site/views.py:238 +#: c3nav/editor/views/account.py:27 c3nav/site/views.py:241 msgid "Log in" msgstr "Anmelden" @@ -1212,12 +1128,13 @@ msgstr "Einstellungen für neue Kanten" #: c3nav/editor/templates/editor/index.html:10 #: c3nav/editor/templates/editor/level.html:16 #: c3nav/mapdata/models/geometry/level.py:58 c3nav/mapdata/models/level.py:29 -#: c3nav/mapdata/utils/locations.py:329 +#: c3nav/mapdata/utils/locations.py:342 msgid "Level" msgstr "Etage" #: c3nav/editor/templates/editor/level.html:22 -#: c3nav/editor/templates/editor/space.html:14 c3nav/editor/views/edit.py:496 +#: c3nav/editor/templates/editor/space.html:14 c3nav/editor/views/edit.py:513 +#: c3nav/site/templates/site/api_secret_create.html:8 #: c3nav/site/templates/site/position_create.html:8 #: c3nav/site/templates/site/position_detail.html:8 msgid "back to overview" @@ -1253,8 +1170,8 @@ msgid "" "Your active change set is %(changeset_title)s." msgstr "" -"Dein aktives Änderungsset ist " -"%(changeset_title)s." +"Dein aktives Änderungsset ist %(changeset_title)s." #: c3nav/editor/templates/editor/user.html:17 #, python-format @@ -1298,7 +1215,7 @@ msgid "Activate direct editing" msgstr "Direktes Bearbeiten aktivieren" #: c3nav/editor/templates/editor/user.html:54 c3nav/editor/views/account.py:85 -#: c3nav/site/templates/site/account.html:56 c3nav/site/views.py:303 +#: c3nav/site/templates/site/account_manage.html:17 c3nav/site/views.py:306 msgid "Change password" msgstr "Passwort ändern" @@ -1319,15 +1236,15 @@ msgid "All recent change sets" msgstr "Alle kürzlichen Änderungssets" #: c3nav/editor/views/account.py:30 c3nav/editor/views/account.py:61 -#: c3nav/site/views.py:245 c3nav/site/views.py:280 +#: c3nav/site/views.py:248 c3nav/site/views.py:283 msgid "Create new account" msgstr "Neues Konto erstellen" -#: c3nav/editor/views/account.py:75 c3nav/site/views.py:294 +#: c3nav/editor/views/account.py:75 c3nav/site/views.py:297 msgid "Password successfully changed." msgstr "Passwort erfolgreich geändert." -#: c3nav/editor/views/base.py:138 +#: c3nav/editor/views/base.py:137 msgid "Log in required." msgstr "Login erforderlich." @@ -1335,168 +1252,231 @@ msgstr "Login erforderlich." msgid "Object has been successfully restored." msgstr "Objekt wurde erfolgreich wiederhergestellt." +#: c3nav/editor/views/changes.py:52 +msgid "" +"You cannot restore this object, because it depends on a deleted object or it " +"would violate a unique contraint." +msgstr "" +"Du kannst dieses Objekt nicht wiederherstellen weil es ein anderes Objekt " +"benötigt oder weil es einer Eindeutigen Beschränkung wiedersprechen würde." + +#: c3nav/editor/views/changes.py:56 +msgid "You can not edit changes on this change set." +msgstr "Du kannst keine Änderungen dieses Änderungssets bearbeiten." + #: c3nav/editor/views/changes.py:64 msgid "You activated this change set." msgstr "Du hast dieses Änderungsset aktiviert." +#: c3nav/editor/views/changes.py:66 +msgid "You can not activate this change set." +msgstr "Du kannst dieses Änderungsset nicht aktivieren." + +#: c3nav/editor/views/changes.py:72 +msgid "You need to log in to propose changes." +msgstr "Du musst dich anmelden um Änderungen vorzuschlagen." + +#: c3nav/editor/views/changes.py:77 +msgid "You need to add a title an a description to propose this change set." +msgstr "" +"Du musst einen Titel und eine Beschreibung hinzufügen, um dieses " +"Änderungsset vorzuschlagen." + #: c3nav/editor/views/changes.py:82 msgid "You proposed your changes." msgstr "Du hast deine Änderungen vorgeschlagen." +#: c3nav/editor/views/changes.py:84 +msgid "You cannot propose this change set." +msgstr "Du kannst dieses Änderungsset nicht vorschlagen." + #: c3nav/editor/views/changes.py:92 msgid "You unproposed your changes." msgstr "Du hast deinen Änderungsvorschlag zurückgenommen." +#: c3nav/editor/views/changes.py:94 +msgid "You cannot unpropose this change set." +msgstr "Du kannst diesen Änderungsvorschlag nicht zurücknehmen." + #: c3nav/editor/views/changes.py:102 msgid "You are now reviewing these changes." msgstr "Du überprüfst jetzt diese Änderungen." +#: c3nav/editor/views/changes.py:104 +msgid "You cannot review these changes." +msgstr "Du kannst diese Änderungen nicht überprüfen." + +#: c3nav/editor/views/changes.py:111 +msgid "You cannot reject these changes." +msgstr "Du kannst diese Änderungen nicht ablehnen." + #: c3nav/editor/views/changes.py:118 msgid "You rejected these changes." msgstr "Du hast diese Änderungen abgelehnt." +#: c3nav/editor/views/changes.py:131 +msgid "You cannot unreject these changes." +msgstr "Du kannst diese Änderungsablehnung nicht zurücknehmen." + #: c3nav/editor/views/changes.py:135 msgid "You unrejected these changes." msgstr "Du hast die Änderungsablehnung zurückgenommen." +#: c3nav/editor/views/changes.py:142 +msgid "You cannot accept and apply these changes." +msgstr "Du kannst diese Änderungen nicht akzeptieren und anwenden." + #: c3nav/editor/views/changes.py:147 msgid "You accepted and applied these changes." msgstr "Du hast diese Änderungen akzeptiert und angewendet." +#: c3nav/editor/views/changes.py:155 +msgid "You cannot delete this change set." +msgstr "Du kannst dieses Änderungsset nicht löschen." + #: c3nav/editor/views/changes.py:159 msgid "You deleted this change set." msgstr "Du hast dieses Änderungsset gelöscht." -#: c3nav/editor/views/changes.py:222 +#: c3nav/editor/views/changes.py:222 c3nav/editor/views/changes.py:231 #, python-brace-format msgid "{model} #{id}" msgstr "{model} Nr. {id}" -#: c3nav/editor/views/changes.py:281 +#: c3nav/editor/views/changes.py:234 +#, python-brace-format +msgid "{model} #{id} (deleted outside this changeset)" +msgstr "{model} #{id} (außerhalb dieses Änderungssets gelöscht)" + +#: c3nav/editor/views/changes.py:291 msgid "created geometry" msgstr "Geometrie erstellt" -#: c3nav/editor/views/changes.py:281 +#: c3nav/editor/views/changes.py:291 msgid "edited geometry" msgstr "Geometrie bearbeitet" -#: c3nav/editor/views/changes.py:289 +#: c3nav/editor/views/changes.py:299 msgid "created scan data" msgstr "Scandaten erstellt" -#: c3nav/editor/views/changes.py:289 +#: c3nav/editor/views/changes.py:299 msgid "edited scan data" msgstr "Scandaten bearbeitet" -#: c3nav/editor/views/changes.py:297 c3nav/mapdata/forms.py:40 +#: c3nav/editor/views/changes.py:307 c3nav/mapdata/forms.py:38 #, python-brace-format msgid "{field_name} ({lang})" msgstr "{field_name} ({lang})" -#: c3nav/editor/views/changes.py:336 +#: c3nav/editor/views/changes.py:349 #, python-brace-format msgid "remove {field_title}" msgstr "{field_title} entfernt" -#: c3nav/editor/views/changes.py:364 c3nav/editor/views/changes.py:371 +#: c3nav/editor/views/changes.py:377 c3nav/editor/views/changes.py:384 msgid "Redirect slugs" msgstr "Umleitungs-Slugs" -#: c3nav/editor/views/changes.py:380 +#: c3nav/editor/views/changes.py:393 msgid "deleted" msgstr "gelöscht" -#: c3nav/editor/views/edit.py:264 +#: c3nav/editor/views/changes.py:413 +msgid "You cannot edit this change set." +msgstr "Du kannst dieses Änderungsset nicht bearbeiten." + +#: c3nav/editor/views/edit.py:266 msgid "You can not create new objects because your changeset is full." msgstr "" "Du kannst keine neuen Objekte erstellen weil dein Änderungsset voll ist." -#: c3nav/editor/views/edit.py:268 c3nav/editor/views/edit.py:289 +#: c3nav/editor/views/edit.py:270 c3nav/editor/views/edit.py:291 msgid "You can not edit this object because your changeset is full." msgstr "Du kannst diese Objekt nicht löschen weil dein Änderungsset voll ist." -#: c3nav/editor/views/edit.py:282 +#: c3nav/editor/views/edit.py:284 msgid "You need to log in to create Wifi Measurements." msgstr "Du musst dich anmelden um WLAN Messungen zu erstellen." -#: c3nav/editor/views/edit.py:295 c3nav/editor/views/edit.py:318 -#: c3nav/editor/views/edit.py:378 c3nav/editor/views/edit.py:636 -#: c3nav/editor/views/edit.py:673 c3nav/editor/views/edit.py:691 +#: c3nav/editor/views/edit.py:297 c3nav/editor/views/edit.py:320 +#: c3nav/editor/views/edit.py:380 c3nav/editor/views/edit.py:653 +#: c3nav/editor/views/edit.py:690 c3nav/editor/views/edit.py:708 msgid "You can not edit changes on this changeset." msgstr "Du kannst keine Änderungen dieses Änderungssets bearbeiten." -#: c3nav/editor/views/edit.py:307 +#: c3nav/editor/views/edit.py:309 msgid "" "You can not delete this object because other objects still depend on it." msgstr "" "Du kannst dieses Objekt nicht löschen weil andere Objekte sich darauf " "beziehen." -#: c3nav/editor/views/edit.py:333 +#: c3nav/editor/views/edit.py:335 msgid "Object was successfully deleted." msgstr "Objekt wurde erfolgreich gelöscht." -#: c3nav/editor/views/edit.py:362 +#: c3nav/editor/views/edit.py:364 msgid "Duplicate entry." msgstr "Doppelter Eintrag." -#: c3nav/editor/views/edit.py:374 +#: c3nav/editor/views/edit.py:376 msgid "Object was successfully saved." msgstr "Objekt wurde erfolgreich gespeichert." -#: c3nav/editor/views/edit.py:450 c3nav/editor/views/edit.py:596 +#: c3nav/editor/views/edit.py:452 c3nav/editor/views/edit.py:613 msgid "back to level" msgstr "zurück zur Etage" -#: c3nav/editor/views/edit.py:480 c3nav/editor/views/edit.py:608 +#: c3nav/editor/views/edit.py:487 c3nav/editor/views/edit.py:625 msgid "back to space" msgstr "zurück zum Raum" -#: c3nav/editor/views/edit.py:552 +#: c3nav/editor/views/edit.py:569 msgid "Could not edit edge because your changeset is full." msgstr "Kante konnte nicht bearbeitet werden weil dein Änderungsset voll ist." -#: c3nav/editor/views/edit.py:559 +#: c3nav/editor/views/edit.py:576 msgid "Reverse edge created." msgstr "Umgekehrte Kante erstellt." -#: c3nav/editor/views/edit.py:559 +#: c3nav/editor/views/edit.py:576 msgid "Edge created." msgstr "Kante erstellt." -#: c3nav/editor/views/edit.py:562 +#: c3nav/editor/views/edit.py:579 msgid "Reverse edge deleted." msgstr "Umgekehrte Kante gelöscht." -#: c3nav/editor/views/edit.py:562 +#: c3nav/editor/views/edit.py:579 msgid "Edge deleted." msgstr "Kante gelöscht." -#: c3nav/editor/views/edit.py:567 +#: c3nav/editor/views/edit.py:584 msgid "Reverse edge overwritten." msgstr "Umgekehrte Kante überschrieben." -#: c3nav/editor/views/edit.py:567 +#: c3nav/editor/views/edit.py:584 msgid "Edge overwritten." msgstr "Kante überschrieben." -#: c3nav/editor/views/edit.py:610 +#: c3nav/editor/views/edit.py:627 msgid "to level graph" msgstr "zum Etagengraph" -#: c3nav/editor/views/edit.py:626 +#: c3nav/editor/views/edit.py:643 msgid "You can not delete this graph node because your changeset is full." msgstr "Du kannst diesen Knoten nicht löschen weil dein Änderungsset voll ist." -#: c3nav/editor/views/edit.py:638 +#: c3nav/editor/views/edit.py:655 msgid "Graph Node was successfully deleted." msgstr "Graphknoten wurde erfolgreich gelöscht." -#: c3nav/editor/views/edit.py:679 +#: c3nav/editor/views/edit.py:696 msgid "You can not add graph nodes because your changeset is full." msgstr "Du kannst keine Graphknoten erstellen weil dein Änderungsset voll ist." -#: c3nav/editor/views/edit.py:686 +#: c3nav/editor/views/edit.py:703 msgid "New graph node created." msgstr "Neuer Graphknoten erstellt." @@ -1512,37 +1492,19 @@ msgstr "Du hast direktes Bearbeiten aktiviert." msgid "You deactivated direct editing." msgstr "Du hast direktes Bearbeiten deaktiviert." -#: c3nav/mapdata/api.py:203 -#, python-format -msgid "%(field)s is not an integer." -msgstr "%(field)s ist keine ganze Zahl." - -#: c3nav/mapdata/api.py:211 -#, python-format -msgid "%(model)s not found." -msgstr "%(model)s nicht gefunden." - -#: c3nav/mapdata/fields.py:63 +#: c3nav/mapdata/fields.py:64 msgid "Invalid GeoJSON." msgstr "Invalides GeoJSON." -#: c3nav/mapdata/fields.py:68 +#: c3nav/mapdata/fields.py:69 msgid "Could not clean geometry." msgstr "Konnte Geometrie nicht bereinigen." -#: c3nav/mapdata/forms.py:57 +#: c3nav/mapdata/forms.py:55 #, python-brace-format msgid "You have to choose a value for {field} in at least one language." msgstr "Du must das Feld {field} in mindestens einer Sprache ausfüllen." -#: c3nav/mapdata/forms.py:84 -msgid "Wrong API secret." -msgstr "Falsches API secret." - -#: c3nav/mapdata/forms.py:93 c3nav/mapdata/forms.py:97 -msgid "Invalid coordinates." -msgstr "Invalide Koordinaten." - #: c3nav/mapdata/management/commands/clearmapcache.py:17 msgid "incluce all history as well" msgstr "einschließlich der kompletten Versionsgeschichte" @@ -1580,60 +1542,73 @@ msgstr "graphite Adresse" msgid "graphite port (default 2003)" msgstr "graphite Port" +#: c3nav/mapdata/management/commands/importgeojson.py:24 #: c3nav/mapdata/management/commands/importsvg.py:24 msgid "unknown space" msgstr "Unbekannter Raum" +#: c3nav/mapdata/management/commands/importgeojson.py:29 #: c3nav/mapdata/management/commands/importsvg.py:29 msgid "svg file to import" msgstr "zu importierende svg-Datei" +#: c3nav/mapdata/management/commands/importgeojson.py:30 #: c3nav/mapdata/management/commands/importsvg.py:30 msgid "name of the import" msgstr "Name des Imports" +#: c3nav/mapdata/management/commands/importgeojson.py:32 #: c3nav/mapdata/management/commands/importsvg.py:32 msgid "type of objects to create" msgstr "Objekttyp, der erstellt werden soll" +#: c3nav/mapdata/management/commands/importgeojson.py:34 #: c3nav/mapdata/management/commands/importsvg.py:34 msgid "space to add the objects to" msgstr "Space zu dem das Objekt hinzugefügt werden soll" +#: c3nav/mapdata/management/commands/importgeojson.py:36 #: c3nav/mapdata/management/commands/importsvg.py:36 -#: c3nav/mapdata/management/commands/rendermap.py:78 +#: c3nav/mapdata/management/commands/rendermap.py:77 msgid "minimum x coordinate, everthing left of it will be cropped" msgstr "minimale X-Koordinate, alles links davon wird abgeschnitten" +#: c3nav/mapdata/management/commands/importgeojson.py:38 #: c3nav/mapdata/management/commands/importsvg.py:38 -#: c3nav/mapdata/management/commands/rendermap.py:80 +#: c3nav/mapdata/management/commands/rendermap.py:79 msgid "minimum y coordinate, everthing below it will be cropped" msgstr "minimale Y-Koordinate, alles unterhalb davon wird abgeschnitten" +#: c3nav/mapdata/management/commands/importgeojson.py:40 #: c3nav/mapdata/management/commands/importsvg.py:40 -#: c3nav/mapdata/management/commands/rendermap.py:82 +#: c3nav/mapdata/management/commands/rendermap.py:81 msgid "maximum x coordinate, everthing right of it will be cropped" msgstr "maximale X-Koordinate, alles rechts davon wird abgeschnitten" +#: c3nav/mapdata/management/commands/importgeojson.py:42 #: c3nav/mapdata/management/commands/importsvg.py:42 -#: c3nav/mapdata/management/commands/rendermap.py:84 +#: c3nav/mapdata/management/commands/rendermap.py:83 msgid "maximum y coordinate, everthing above it will be cropped" msgstr "maximale Y-Koordinate, alles oberhalb davon wird abgeschnitten" +#: c3nav/mapdata/management/commands/importgeojson.py:145 #: c3nav/mapdata/management/commands/importsvg.py:145 -#: c3nav/mapdata/management/commands/rendermap.py:102 +#: c3nav/mapdata/management/commands/rendermap.py:101 msgid "minx has to be lower than maxx" msgstr "minx muss kleiner als maxx sein" +#: c3nav/mapdata/management/commands/importgeojson.py:147 #: c3nav/mapdata/management/commands/importsvg.py:147 -#: c3nav/mapdata/management/commands/rendermap.py:104 +#: c3nav/mapdata/management/commands/rendermap.py:103 msgid "miny has to be lower than maxy" msgstr "miny muss kleiner als maxy sein" +#: c3nav/mapdata/management/commands/importgeojson.py:175 #: c3nav/mapdata/management/commands/importsvg.py:175 msgid "svg contains transform attributes. Use inkscape apply transforms." msgstr "Die SVG enthält transform attribute. Benutze inkscape apply transform." +#: c3nav/mapdata/management/commands/importgeojson.py:178 #: c3nav/mapdata/management/commands/importsvg.py:178 msgid "objects with this import tag already exist in this space." msgstr "Objekte mit diesem Import tag existieren bereits in diesem Space." @@ -1642,74 +1617,74 @@ msgstr "Objekte mit diesem Import tag existieren bereits in diesem Space." msgid "There is already map update processing in progress." msgstr "Es läuft bereits eine Mapmap update ." -#: c3nav/mapdata/management/commands/rendermap.py:28 +#: c3nav/mapdata/management/commands/rendermap.py:27 #, python-format msgid "Unknown level: %s" msgid_plural "Unknown levels: %s" msgstr[0] "Unbekannte Etage: %s" msgstr[1] "Unbekannte Etagen: %s" -#: c3nav/mapdata/management/commands/rendermap.py:46 +#: c3nav/mapdata/management/commands/rendermap.py:45 #, python-format msgid "Unknown access restriction: %s" msgid_plural "Unknown access restrictions: %s" msgstr[0] "Unbekannte Zugangsbeschränkung: %s" msgstr[1] "Unbekannte Zugangsbeschränkungen: %s" -#: c3nav/mapdata/management/commands/rendermap.py:57 +#: c3nav/mapdata/management/commands/rendermap.py:56 msgid "Invalid zoom" msgstr "Invalider zoom" -#: c3nav/mapdata/management/commands/rendermap.py:60 +#: c3nav/mapdata/management/commands/rendermap.py:59 msgid "Zoom has to be between 0 and 32" msgstr "Zoom muss zwischen 0 und 32 liegen" -#: c3nav/mapdata/management/commands/rendermap.py:66 +#: c3nav/mapdata/management/commands/rendermap.py:65 msgid "filetype to render" msgstr "Dateityp, der gerendert werden soll" -#: c3nav/mapdata/management/commands/rendermap.py:68 +#: c3nav/mapdata/management/commands/rendermap.py:67 msgid "levels to render, e.g. 0,1,2 or * for all levels (default)" msgstr "" "Etagen, die gerendert werden sollen, z.b. 0,1,2 oder * für alle Etagen " "(Vorgabe)" -#: c3nav/mapdata/management/commands/rendermap.py:70 +#: c3nav/mapdata/management/commands/rendermap.py:69 msgid "permissions, e.g. 2,3 or * for all permissions or 0 for none (default)" msgstr "" "Zugangserlaubnisse, z.B. 2,3 oder * für alle Erlaubnisse oder 0 für keine " "Erlaubnisse (Vorgabe)" -#: c3nav/mapdata/management/commands/rendermap.py:72 +#: c3nav/mapdata/management/commands/rendermap.py:71 msgid "render all levels completely" msgstr "rendere alle Etagen vollständig" -#: c3nav/mapdata/management/commands/rendermap.py:74 +#: c3nav/mapdata/management/commands/rendermap.py:73 msgid "do not center the output" msgstr "Ausgabe nicht zentrieren" -#: c3nav/mapdata/management/commands/rendermap.py:76 +#: c3nav/mapdata/management/commands/rendermap.py:75 msgid "scale (from 1 to 32), only relevant for image renderers" msgstr "Zoomfaktor (von 1 bis 32), nur relevant für Bildrenderer" -#: c3nav/mapdata/management/commands/rendermap.py:86 +#: c3nav/mapdata/management/commands/rendermap.py:85 msgid "ensure that all objects are at least this thick" msgstr "stelle sicher, dass alle Objekte mindestens diese Dicke haben" -#: c3nav/mapdata/management/commands/rendermap.py:88 +#: c3nav/mapdata/management/commands/rendermap.py:87 msgid "override filename" msgstr "Dateinamen überschreiben" -#: c3nav/mapdata/management/commands/statssnapshot.py:16 +#: c3nav/mapdata/management/commands/statssnapshot.py:15 msgid "reset the values" msgstr "Werte zurücksetzen" -#: c3nav/mapdata/management/commands/statssnapshot.py:18 +#: c3nav/mapdata/management/commands/statssnapshot.py:17 msgid "save result to the stats directory" msgstr "Ergebnis im stats-Ordner speichern" #: c3nav/mapdata/models/access.py:23 c3nav/mapdata/models/report.py:35 -#: c3nav/mapdata/models/report.py:175 c3nav/site/forms.py:35 +#: c3nav/mapdata/models/report.py:175 c3nav/site/forms.py:44 #: c3nav/site/templates/site/report_detail.html:15 #: c3nav/site/templates/site/report_list.html:28 msgid "open" @@ -1755,8 +1730,8 @@ msgstr "Zugangserlaubnis-Token" msgid "Access Permission Tokens" msgstr "Zugangserlaubnis-Token" -#: c3nav/mapdata/models/access.py:133 c3nav/site/views.py:86 -#: c3nav/site/views.py:339 +#: c3nav/mapdata/models/access.py:133 c3nav/site/views.py:87 +#: c3nav/site/views.py:369 msgid "Area successfully unlocked." msgid_plural "Areas successfully unlocked." msgstr[0] "Bereich erfolgreich freigeschaltet." @@ -1770,7 +1745,28 @@ msgstr "Zugangserlaubnis-Token" msgid "Access Permission" msgstr "Zugangserlaubnis" -#: c3nav/mapdata/models/base.py:42 c3nav/mapdata/utils/locations.py:326 +#: c3nav/mapdata/models/altitudes.py:9 c3nav/mapdata/models/locations.py:273 +#: c3nav/mapdata/models/source.py:13 +#: c3nav/site/templates/site/api_secret_list.html:14 +msgid "Name" +msgstr "Name" + +#: c3nav/mapdata/models/altitudes.py:10 +#: c3nav/mapdata/models/geometry/level.py:178 +#: c3nav/mapdata/models/geometry/space.py:302 +msgid "altitude" +msgstr "Bodenhöhe" + +#: c3nav/mapdata/models/altitudes.py:13 +msgid "Ground Altitude" +msgstr "Bodenhöhe" + +#: c3nav/mapdata/models/altitudes.py:14 +msgid "Ground altitudes" +msgstr "Bodenhöhen" + +#: c3nav/mapdata/models/base.py:42 c3nav/mapdata/utils/locations.py:339 +#: c3nav/mesh/templates/mesh/mesh_messages.html:47 msgid "Type" msgstr "Typ" @@ -1795,7 +1791,7 @@ msgstr "obere koordinate" msgid "right coordinate" msgstr "rechte koordinate" -#: c3nav/mapdata/models/geometry/base.py:24 +#: c3nav/mapdata/models/geometry/base.py:27 msgid "import tag" msgstr "import tag" @@ -1817,9 +1813,9 @@ msgid "Buildings" msgstr "Gebäude" #: c3nav/mapdata/models/geometry/level.py:116 -#: c3nav/mapdata/models/geometry/level.py:141 -#: c3nav/mapdata/models/geometry/space.py:171 -#: c3nav/mapdata/models/geometry/space.py:203 +#: c3nav/mapdata/models/geometry/level.py:143 +#: c3nav/mapdata/models/geometry/space.py:181 +#: c3nav/mapdata/models/geometry/space.py:213 msgid "height" msgstr "Höhe" @@ -1839,36 +1835,31 @@ msgstr "immer zugänglich (überschreibt Basiskartendaten-Einstellung)" msgid "Spaces" msgstr "Räume" -#: c3nav/mapdata/models/geometry/level.py:142 c3nav/mapdata/models/level.py:84 +#: c3nav/mapdata/models/geometry/level.py:144 c3nav/mapdata/models/level.py:84 msgid "outside only" msgstr "Nur draußen" -#: c3nav/mapdata/models/geometry/level.py:156 +#: c3nav/mapdata/models/geometry/level.py:158 msgid "Door" msgstr "Tür" -#: c3nav/mapdata/models/geometry/level.py:157 +#: c3nav/mapdata/models/geometry/level.py:159 msgid "Doors" msgstr "Türen" -#: c3nav/mapdata/models/geometry/level.py:176 -#: c3nav/mapdata/models/geometry/space.py:289 -msgid "altitude" -msgstr "Bodenhöhe" - -#: c3nav/mapdata/models/geometry/level.py:177 +#: c3nav/mapdata/models/geometry/level.py:179 msgid "second altitude" msgstr "zweite Bodenhöhe" -#: c3nav/mapdata/models/geometry/level.py:182 +#: c3nav/mapdata/models/geometry/level.py:184 msgid "Altitude Area" msgstr "Höhenbereich" -#: c3nav/mapdata/models/geometry/level.py:183 +#: c3nav/mapdata/models/geometry/level.py:185 msgid "Altitude Areas" msgstr "Höhenbereiche" -#: c3nav/mapdata/models/geometry/level.py:289 +#: c3nav/mapdata/models/geometry/level.py:296 #, python-format msgid "" "AltitudeMarker #%(marker_id)d in Space #%(space_id)d on Level " @@ -1877,12 +1868,12 @@ msgstr "" "Höhenmarker #%(marker_id)d in Raum #%(space_id)d auf Etage %(level_label)s " "ist nicht in einem begehbaren Bereich platziert" -#: c3nav/mapdata/models/geometry/level.py:624 +#: c3nav/mapdata/models/geometry/level.py:635 #, python-format msgid "%d altitude areas built." msgstr "%d Höhenbereiche gebaut." -#: c3nav/mapdata/models/geometry/level.py:625 +#: c3nav/mapdata/models/geometry/level.py:636 #, python-format msgid "" "%(num_modified)d modified, %(num_deleted)d deleted, %(num_created)d created." @@ -1890,165 +1881,179 @@ msgstr "" "%(num_modified)d geändert, %(num_deleted)d entfernt, %(num_created)d " "erstellt." -#: c3nav/mapdata/models/geometry/space.py:25 -#: c3nav/mapdata/models/geometry/space.py:305 -#: c3nav/mapdata/models/geometry/space.py:342 +#: c3nav/mapdata/models/geometry/space.py:26 +#: c3nav/mapdata/models/geometry/space.py:322 +#: c3nav/mapdata/models/geometry/space.py:359 msgid "space" msgstr "Raum" -#: c3nav/mapdata/models/geometry/space.py:54 +#: c3nav/mapdata/models/geometry/space.py:61 #, python-brace-format msgid "{category}, {space}, {level}" msgstr "{category}, {space}, {level}" -#: c3nav/mapdata/models/geometry/space.py:58 +#: c3nav/mapdata/models/geometry/space.py:65 #, python-brace-format msgid "{category}, {space}" msgstr "{category}, {space}" -#: c3nav/mapdata/models/geometry/space.py:108 +#: c3nav/mapdata/models/geometry/space.py:115 msgid "Column" msgstr "Säule" -#: c3nav/mapdata/models/geometry/space.py:109 +#: c3nav/mapdata/models/geometry/space.py:116 msgid "Columns" msgstr "Säulen" -#: c3nav/mapdata/models/geometry/space.py:118 +#: c3nav/mapdata/models/geometry/space.py:125 msgid "slow down factor" msgstr "Verlangsamungsfaktor" -#: c3nav/mapdata/models/geometry/space.py:120 +#: c3nav/mapdata/models/geometry/space.py:127 msgid "values of overlapping areas get multiplied!" msgstr "Werte von überlappenden Bereichen werden multipliziert!" -#: c3nav/mapdata/models/geometry/space.py:123 +#: c3nav/mapdata/models/geometry/space.py:130 msgid "Area" msgstr "Bereich" -#: c3nav/mapdata/models/geometry/space.py:124 -#: c3nav/mapdata/utils/locations.py:341 +#: c3nav/mapdata/models/geometry/space.py:131 +#: c3nav/mapdata/utils/locations.py:354 msgid "Areas" msgstr "Bereiche" -#: c3nav/mapdata/models/geometry/space.py:149 +#: c3nav/mapdata/models/geometry/space.py:159 msgid "Stair" msgstr "Stufe" -#: c3nav/mapdata/models/geometry/space.py:150 +#: c3nav/mapdata/models/geometry/space.py:160 msgid "Stairs" msgstr "Stufen" -#: c3nav/mapdata/models/geometry/space.py:161 +#: c3nav/mapdata/models/geometry/space.py:171 msgid "Ramp" msgstr "Rampe" -#: c3nav/mapdata/models/geometry/space.py:162 +#: c3nav/mapdata/models/geometry/space.py:172 msgid "Ramps" msgstr "Rampen" -#: c3nav/mapdata/models/geometry/space.py:173 -#: c3nav/mapdata/models/geometry/space.py:205 +#: c3nav/mapdata/models/geometry/space.py:183 +#: c3nav/mapdata/models/geometry/space.py:215 +#: c3nav/mapdata/models/geometry/space.py:431 msgid "altitude above ground" msgstr "Höhe über Grund" -#: c3nav/mapdata/models/geometry/space.py:175 -#: c3nav/mapdata/models/geometry/space.py:207 +#: c3nav/mapdata/models/geometry/space.py:185 +#: c3nav/mapdata/models/geometry/space.py:217 msgid "color (optional)" msgstr "Farbe (optional)" -#: c3nav/mapdata/models/geometry/space.py:178 +#: c3nav/mapdata/models/geometry/space.py:188 msgid "Obstacle" msgstr "Hindernis" -#: c3nav/mapdata/models/geometry/space.py:179 +#: c3nav/mapdata/models/geometry/space.py:189 msgid "Obstacles" msgstr "Hindernisse" -#: c3nav/mapdata/models/geometry/space.py:202 +#: c3nav/mapdata/models/geometry/space.py:212 msgid "width" msgstr "Breite" -#: c3nav/mapdata/models/geometry/space.py:210 +#: c3nav/mapdata/models/geometry/space.py:220 msgid "Line Obstacle" msgstr "Linienhindernis" -#: c3nav/mapdata/models/geometry/space.py:211 +#: c3nav/mapdata/models/geometry/space.py:221 msgid "Line Obstacles" msgstr "Linienhindernisse" -#: c3nav/mapdata/models/geometry/space.py:249 +#: c3nav/mapdata/models/geometry/space.py:259 msgid "Point of Interest" msgstr "Ort von Interesse" -#: c3nav/mapdata/models/geometry/space.py:250 +#: c3nav/mapdata/models/geometry/space.py:260 msgid "Points of Interest" msgstr "Orte von Interesse" -#: c3nav/mapdata/models/geometry/space.py:279 +#: c3nav/mapdata/models/geometry/space.py:291 msgid "Hole" msgstr "Loch" -#: c3nav/mapdata/models/geometry/space.py:280 +#: c3nav/mapdata/models/geometry/space.py:292 msgid "Holes" msgstr "Löcher" -#: c3nav/mapdata/models/geometry/space.py:292 +#: c3nav/mapdata/models/geometry/space.py:305 msgid "Altitude Marker" msgstr "Höhenmarker" -#: c3nav/mapdata/models/geometry/space.py:293 +#: c3nav/mapdata/models/geometry/space.py:306 msgid "Altitude Markers" msgstr "Höhenmarker" -#: c3nav/mapdata/models/geometry/space.py:306 -#: c3nav/mapdata/models/geometry/space.py:345 +#: c3nav/mapdata/models/geometry/space.py:323 +#: c3nav/mapdata/models/geometry/space.py:362 msgid "target space" msgstr "Zielraum" -#: c3nav/mapdata/models/geometry/space.py:308 -#: c3nav/mapdata/models/geometry/space.py:347 c3nav/mapdata/models/graph.py:48 +#: c3nav/mapdata/models/geometry/space.py:325 +#: c3nav/mapdata/models/geometry/space.py:364 c3nav/mapdata/models/graph.py:48 #: c3nav/mapdata/models/report.py:39 msgid "description" msgstr "Beschreibung" -#: c3nav/mapdata/models/geometry/space.py:311 +#: c3nav/mapdata/models/geometry/space.py:328 msgid "Leave description" msgstr "Verlassensbeschreibung" -#: c3nav/mapdata/models/geometry/space.py:312 +#: c3nav/mapdata/models/geometry/space.py:329 msgid "Leave descriptions" msgstr "Verlassensbeschreibungen" -#: c3nav/mapdata/models/geometry/space.py:343 +#: c3nav/mapdata/models/geometry/space.py:360 msgid "origin space" msgstr "Ursprungsraum" -#: c3nav/mapdata/models/geometry/space.py:350 +#: c3nav/mapdata/models/geometry/space.py:367 msgid "Cross description" msgstr "Durchschreitungsbeschreibung" -#: c3nav/mapdata/models/geometry/space.py:351 +#: c3nav/mapdata/models/geometry/space.py:368 msgid "Cross descriptions" msgstr "Durchschreitungsbeschreibungen" -#: c3nav/mapdata/models/geometry/space.py:386 +#: c3nav/mapdata/models/geometry/space.py:403 +#: c3nav/mapdata/models/geometry/space.py:433 #: c3nav/mapdata/models/report.py:176 msgid "comment" msgstr "Kommentar" -#: c3nav/mapdata/models/geometry/space.py:387 +#: c3nav/mapdata/models/geometry/space.py:404 msgid "Measurement list" msgstr "Messungsliste" -#: c3nav/mapdata/models/geometry/space.py:390 +#: c3nav/mapdata/models/geometry/space.py:407 msgid "Wi-Fi Measurement" msgstr "WLAN Messung" -#: c3nav/mapdata/models/geometry/space.py:391 +#: c3nav/mapdata/models/geometry/space.py:408 msgid "Wi-Fi Measurements" msgstr "WLAN Messungen" +#: c3nav/mapdata/models/geometry/space.py:425 +msgid "BSSID" +msgstr "BSSID" + +#: c3nav/mapdata/models/geometry/space.py:436 +msgid "Ranging beacon" +msgstr "Ranging beacon" + +#: c3nav/mapdata/models/geometry/space.py:437 +msgid "Ranging beacons" +msgstr "Ranging beacons" + #: c3nav/mapdata/models/graph.py:21 msgid "Graph Node" msgstr "Graphknoten" @@ -2057,7 +2062,7 @@ msgstr "Graphknoten" msgid "Graph Nodes" msgstr "Graphknoten" -#: c3nav/mapdata/models/graph.py:39 c3nav/mapdata/models/locations.py:273 +#: c3nav/mapdata/models/graph.py:39 c3nav/mapdata/models/locations.py:276 msgid "Title (Plural)" msgstr "Titel (Plural)" @@ -2154,7 +2159,7 @@ msgid "default height" msgstr "Standarddeckenhöhe" #. Translators: "letters" means latin letters: a-z and A-Z. -#: c3nav/mapdata/models/locations.py:54 +#: c3nav/mapdata/models/locations.py:55 msgid "" "Enter a valid location slug consisting of lowercase letters, numbers or " "hyphens, not starting or ending with hyphens or containing consecutive " @@ -2164,224 +2169,212 @@ msgstr "" "Bindestrichen besteht und nicht mit einem Bindestrich beginnt oder endet " "oder aufeinanderfolgende Bindestriche enthält." -#: c3nav/mapdata/models/locations.py:69 c3nav/mapdata/models/locations.py:89 -#: c3nav/mapdata/utils/locations.py:328 +#: c3nav/mapdata/models/locations.py:70 c3nav/mapdata/models/locations.py:91 +#: c3nav/mapdata/utils/locations.py:341 msgid "Slug" msgstr "Slug" -#: c3nav/mapdata/models/locations.py:97 c3nav/mapdata/models/locations.py:98 +#: c3nav/mapdata/models/locations.py:99 c3nav/mapdata/models/locations.py:100 msgid "Location with Slug" msgstr "Ort mit Slug" -#: c3nav/mapdata/models/locations.py:103 +#: c3nav/mapdata/models/locations.py:105 msgid "can be searched" msgstr "zur Suche zugelassen" -#: c3nav/mapdata/models/locations.py:104 c3nav/mapdata/models/locations.py:135 +#: c3nav/mapdata/models/locations.py:106 c3nav/mapdata/models/locations.py:138 msgid "can describe" msgstr "beschreibend" -#: c3nav/mapdata/models/locations.py:105 c3nav/mapdata/models/locations.py:136 +#: c3nav/mapdata/models/locations.py:107 c3nav/mapdata/models/locations.py:139 msgid "icon" msgstr "Icon" -#: c3nav/mapdata/models/locations.py:105 +#: c3nav/mapdata/models/locations.py:107 msgid "any material icons name" msgstr "name eines material icons" -#: c3nav/mapdata/models/locations.py:134 +#: c3nav/mapdata/models/locations.py:137 msgid "searchable" msgstr "suchbar" -#: c3nav/mapdata/models/locations.py:174 c3nav/mapdata/models/locations.py:340 +#: c3nav/mapdata/models/locations.py:177 c3nav/mapdata/models/locations.py:355 msgid "Location Groups" msgstr "Ortgruppen" -#: c3nav/mapdata/models/locations.py:176 c3nav/mapdata/models/locations.py:330 +#: c3nav/mapdata/models/locations.py:179 c3nav/mapdata/models/locations.py:345 msgid "label settings" msgstr "Labeleinstellungen" -#: c3nav/mapdata/models/locations.py:177 +#: c3nav/mapdata/models/locations.py:180 msgid "Label override" msgstr "Label überschreiben" -#: c3nav/mapdata/models/locations.py:223 +#: c3nav/mapdata/models/locations.py:226 msgid "Grid Squares" msgstr "Planquadrate" -#: c3nav/mapdata/models/locations.py:223 c3nav/mapdata/utils/locations.py:347 +#: c3nav/mapdata/models/locations.py:226 c3nav/mapdata/utils/locations.py:360 msgid "Grid Square" msgstr "Planquadrat" -#: c3nav/mapdata/models/locations.py:270 c3nav/mapdata/models/source.py:15 -msgid "Name" -msgstr "Name" - -#: c3nav/mapdata/models/locations.py:271 +#: c3nav/mapdata/models/locations.py:274 msgid "single selection" msgstr "nur eine Auswahl möglich" -#: c3nav/mapdata/models/locations.py:274 +#: c3nav/mapdata/models/locations.py:277 msgid "Help text" msgstr "Hilfehinweis" -#: c3nav/mapdata/models/locations.py:275 +#: c3nav/mapdata/models/locations.py:278 msgid "allow levels" msgstr "bei Etagen erlauben" -#: c3nav/mapdata/models/locations.py:276 +#: c3nav/mapdata/models/locations.py:279 msgid "allow spaces" msgstr "bei Räumen erlauben" -#: c3nav/mapdata/models/locations.py:277 +#: c3nav/mapdata/models/locations.py:280 msgid "allow areas" msgstr "bei Bereichen erlauben" -#: c3nav/mapdata/models/locations.py:278 +#: c3nav/mapdata/models/locations.py:281 msgid "allow pois" msgstr "bei POI erlauben" -#: c3nav/mapdata/models/locations.py:279 +#: c3nav/mapdata/models/locations.py:282 msgid "allow dynamic locations" msgstr "Dynamische Orte erlauben" -#: c3nav/mapdata/models/locations.py:287 +#: c3nav/mapdata/models/locations.py:290 msgid "Location Group Category" msgstr "Ortgruppenkategorie" -#: c3nav/mapdata/models/locations.py:288 +#: c3nav/mapdata/models/locations.py:291 msgid "Location Group Categories" msgstr "Ortgruppenkategorien" -#: c3nav/mapdata/models/locations.py:326 c3nav/mapdata/models/locations.py:361 +#: c3nav/mapdata/models/locations.py:341 c3nav/mapdata/models/locations.py:379 msgid "Category" msgstr "Kategorie" -#: c3nav/mapdata/models/locations.py:328 +#: c3nav/mapdata/models/locations.py:343 msgid "hierarchy" msgstr "Hierarchie" -#: c3nav/mapdata/models/locations.py:331 +#: c3nav/mapdata/models/locations.py:346 msgid "unless location specifies otherwise" msgstr "kann von Orten überschrieben werden" -#: c3nav/mapdata/models/locations.py:332 +#: c3nav/mapdata/models/locations.py:347 msgid "for missing locations" msgstr "für fehlende Orte" -#: c3nav/mapdata/models/locations.py:333 +#: c3nav/mapdata/models/locations.py:348 msgid "can be used when reporting a missing location" msgstr "kann beim melden eines fehlenden Ortges genutzt werden" -#: c3nav/mapdata/models/locations.py:334 +#: c3nav/mapdata/models/locations.py:349 msgid "background color" msgstr "Hintergrundfarbe" -#: c3nav/mapdata/models/locations.py:339 +#: c3nav/mapdata/models/locations.py:354 msgid "Location Group" msgstr "Ortgruppe" -#: c3nav/mapdata/models/locations.py:363 c3nav/mapdata/models/locations.py:378 +#: c3nav/mapdata/models/locations.py:381 c3nav/mapdata/models/locations.py:396 msgid "color" msgstr "Farbe" -#: c3nav/mapdata/models/locations.py:364 +#: c3nav/mapdata/models/locations.py:382 msgid "priority" msgstr "Priorität" -#: c3nav/mapdata/models/locations.py:374 +#: c3nav/mapdata/models/locations.py:392 msgid "search" msgstr "suchen" -#: c3nav/mapdata/models/locations.py:376 +#: c3nav/mapdata/models/locations.py:394 msgid "describe" msgstr "beschreiben" -#: c3nav/mapdata/models/locations.py:380 +#: c3nav/mapdata/models/locations.py:398 msgid "internal" msgstr "intern" -#: c3nav/mapdata/models/locations.py:397 +#: c3nav/mapdata/models/locations.py:415 #, python-brace-format msgid "{category_title}, {num_locations}" msgstr "{category_title}, {num_locations}" -#: c3nav/mapdata/models/locations.py:399 +#: c3nav/mapdata/models/locations.py:417 #, python-format msgid "%(num)d location" msgid_plural "%(num)d locations" msgstr[0] "%(num)d Ort" msgstr[1] "%(num)d Orte" -#: c3nav/mapdata/models/locations.py:422 +#: c3nav/mapdata/models/locations.py:440 msgid "target" msgstr "Ziel" -#: c3nav/mapdata/models/locations.py:441 +#: c3nav/mapdata/models/locations.py:459 msgid "min zoom" msgstr "Mindestzoom" -#: c3nav/mapdata/models/locations.py:444 +#: c3nav/mapdata/models/locations.py:462 msgid "max zoom" msgstr "Maximalzoom" -#: c3nav/mapdata/models/locations.py:447 +#: c3nav/mapdata/models/locations.py:465 msgid "font size" msgstr "Schriftgröße" -#: c3nav/mapdata/models/locations.py:463 c3nav/mapdata/models/locations.py:464 +#: c3nav/mapdata/models/locations.py:481 c3nav/mapdata/models/locations.py:482 msgid "Label Settings" msgstr "Labeleinstellungen" -#: c3nav/mapdata/models/locations.py:494 +#: c3nav/mapdata/models/locations.py:512 msgid "position secret" msgstr "position secret" -#: c3nav/mapdata/models/locations.py:497 +#: c3nav/mapdata/models/locations.py:515 msgid "Dynamic location" msgstr "Dynamischer Ort" -#: c3nav/mapdata/models/locations.py:498 +#: c3nav/mapdata/models/locations.py:516 msgid "Dynamic locations" msgstr "Dynamische Orte" -#: c3nav/mapdata/models/locations.py:522 c3nav/mapdata/models/locations.py:615 +#: c3nav/mapdata/models/locations.py:542 c3nav/mapdata/models/locations.py:629 msgid "currently unavailable" msgstr "z. Zt. nicht verfügbar" -#: c3nav/mapdata/models/locations.py:522 c3nav/mapdata/models/locations.py:533 +#: c3nav/mapdata/models/locations.py:542 c3nav/mapdata/models/locations.py:552 msgid "(moving)" msgstr "(beweglich)" -#: c3nav/mapdata/models/locations.py:566 -msgid "name" -msgstr "Name" - -#: c3nav/mapdata/models/locations.py:568 +#: c3nav/mapdata/models/locations.py:583 msgid "last coordinates update" msgstr "Letztes Koordinatenupdate" -#: c3nav/mapdata/models/locations.py:569 +#: c3nav/mapdata/models/locations.py:584 msgid "timeout (in seconds)" msgstr "Timeout (in Sekunden)" -#: c3nav/mapdata/models/locations.py:570 +#: c3nav/mapdata/models/locations.py:585 msgid "0 for no timeout" msgstr "0 für kein Timeout" -#: c3nav/mapdata/models/locations.py:571 c3nav/mapdata/models/report.py:45 +#: c3nav/mapdata/models/locations.py:586 c3nav/mapdata/models/report.py:45 msgid "coordinates" msgstr "Koordinaten" -#: c3nav/mapdata/models/locations.py:572 -msgid "api secret" -msgstr "API secret" - -#: c3nav/mapdata/models/locations.py:580 c3nav/mapdata/models/locations.py:581 +#: c3nav/mapdata/models/locations.py:594 c3nav/mapdata/models/locations.py:595 msgid "Dynamic position" msgstr "Dynamische Position" -#: c3nav/mapdata/models/locations.py:626 c3nav/mapdata/models/locations.py:644 +#: c3nav/mapdata/models/locations.py:639 c3nav/mapdata/models/locations.py:657 msgid "Position" msgstr "Position" @@ -2470,11 +2463,11 @@ msgstr "Meldungsupdate" msgid "Report updates" msgstr "Meldungsupdates" -#: c3nav/mapdata/models/source.py:18 +#: c3nav/mapdata/models/source.py:16 msgid "Source" msgstr "Vorlage" -#: c3nav/mapdata/models/source.py:19 +#: c3nav/mapdata/models/source.py:17 msgid "Sources" msgstr "Vorlagen" @@ -2506,60 +2499,60 @@ msgstr[1] "%d Kartenänderungen verarbeitet." msgid "Last processed update: %(date)s (#%(id)d)" msgstr "Letztes verarbeitetes Update: %(date)s (#%(id)d)" -#: c3nav/mapdata/utils/locations.py:326 +#: c3nav/mapdata/utils/locations.py:339 msgid "Coordinates" msgstr "Koordinaten" -#: c3nav/mapdata/utils/locations.py:348 +#: c3nav/mapdata/utils/locations.py:361 msgid "Near Area" msgstr "Naher Bereich" -#: c3nav/mapdata/utils/locations.py:354 +#: c3nav/mapdata/utils/locations.py:367 msgid "Near POI" msgstr "Naher POI" -#: c3nav/mapdata/utils/locations.py:360 +#: c3nav/mapdata/utils/locations.py:373 msgid "X Coordinate" msgstr "X-Koordinate" -#: c3nav/mapdata/utils/locations.py:361 +#: c3nav/mapdata/utils/locations.py:374 msgid "Y Coordinate" msgstr "Y-Koordinate" -#: c3nav/mapdata/utils/locations.py:362 +#: c3nav/mapdata/utils/locations.py:375 msgid "Altitude" msgstr "Höhe" -#: c3nav/mapdata/utils/locations.py:364 +#: c3nav/mapdata/utils/locations.py:377 msgid "Subtitle" msgstr "Untertitel" -#: c3nav/mapdata/utils/locations.py:413 +#: c3nav/mapdata/utils/locations.py:426 #, python-format msgid "In %(level)s" msgstr "In %(level)s" -#: c3nav/mapdata/utils/locations.py:419 +#: c3nav/mapdata/utils/locations.py:432 #, python-format msgid "Near %(poi)s" msgstr "Nahe %(poi)s" -#: c3nav/mapdata/utils/locations.py:423 +#: c3nav/mapdata/utils/locations.py:436 #, python-format msgid "near %(area)s" msgstr "nahe %(area)s" -#: c3nav/mapdata/utils/locations.py:425 +#: c3nav/mapdata/utils/locations.py:438 #, python-format msgid "In %(area)s" msgstr "In %(area)s" -#: c3nav/mapdata/utils/locations.py:429 +#: c3nav/mapdata/utils/locations.py:442 #, python-format msgid "Near %(area)s" msgstr "Nahe %(area)s" -#: c3nav/mapdata/utils/locations.py:431 +#: c3nav/mapdata/utils/locations.py:444 #, python-format msgid "In %(space)s" msgstr "In %(space)s" @@ -2579,22 +2572,539 @@ msgstr[1] "%d freigeschaltete Bereiche" msgid "Login" msgstr "Anmelden" -#: c3nav/routing/api.py:51 +#: c3nav/mesh/forms.py:39 +msgid "broadcast" +msgstr "broadcast" + +#: c3nav/mesh/forms.py:124 +msgid "enabled" +msgstr "aktiviert" + +#: c3nav/mesh/forms.py:125 +msgid "ssid" +msgstr "SSID" + +#: c3nav/mesh/forms.py:126 +msgid "password" +msgstr "Passwort" + +#: c3nav/mesh/forms.py:127 +msgid "channel" +msgstr "Channel" + +#: c3nav/mesh/forms.py:128 +msgid "udp" +msgstr "UDP" + +#: c3nav/mesh/forms.py:129 +msgid "ssl" +msgstr "SSL" + +#: c3nav/mesh/forms.py:130 +msgid "host" +msgstr "Host" + +#: c3nav/mesh/forms.py:131 +msgid "port" +msgstr "Port" + +#: c3nav/mesh/forms.py:138 c3nav/mesh/models.py:476 +msgid "board" +msgstr "Board" + +#: c3nav/mesh/forms.py:140 +msgid "LED type" +msgstr "LEDtyp" + +#: c3nav/mesh/forms.py:142 +msgid "serial LED type" +msgstr "Serieller LED-Typ" + +#: c3nav/mesh/forms.py:142 c3nav/mesh/forms.py:145 +msgid "serial LED only" +msgstr "nur für serielle LEDs" + +#: c3nav/mesh/forms.py:145 +msgid "serial LED GPIO pin" +msgstr "Serieller LED GPIO pin" + +#: c3nav/mesh/forms.py:147 +msgid "multpin LED GPIO red" +msgstr "Multipin GPIO PIN rot" + +#: c3nav/mesh/forms.py:147 c3nav/mesh/forms.py:149 c3nav/mesh/forms.py:151 +msgid "multipin LED only" +msgstr "nur für multipin LEDs" + +#: c3nav/mesh/forms.py:149 +msgid "multpin LED GPIO green" +msgstr "Multipin GPIO PIN grün" + +#: c3nav/mesh/forms.py:151 +msgid "multpin LED GPIO blue" +msgstr "Multipin GPIO PIN blau" + +#: c3nav/mesh/forms.py:153 +msgid "UWB enable" +msgstr "UWB aktivieren" + +#: c3nav/mesh/forms.py:155 +msgid "UWB GPIO MISO" +msgstr "UWB GPIO MIO" + +#: c3nav/mesh/forms.py:155 c3nav/mesh/forms.py:157 c3nav/mesh/forms.py:159 +#: c3nav/mesh/forms.py:161 c3nav/mesh/forms.py:163 c3nav/mesh/forms.py:165 +#: c3nav/mesh/forms.py:167 c3nav/mesh/forms.py:169 +msgid "UWB only" +msgstr "Nur für UWB" + +#: c3nav/mesh/forms.py:157 +msgid "UWB GPIO MOSI" +msgstr "UWB GPIO MOSI" + +#: c3nav/mesh/forms.py:159 +msgid "UWB GPIO CLK" +msgstr "UWB GPIO CLK" + +#: c3nav/mesh/forms.py:161 +msgid "UWB GPIO CS" +msgstr "UWB GPIO CS" + +#: c3nav/mesh/forms.py:163 +msgid "UWB GPIO IRQ" +msgstr "UWB GPIO IRQ" + +#: c3nav/mesh/forms.py:165 +msgid "UWB GPIO RST" +msgstr "UWB GPIO RST" + +#: c3nav/mesh/forms.py:167 +msgid "UWB GPIO WAKEUP" +msgstr "UWB GPIO WAKEUP" + +#: c3nav/mesh/forms.py:169 +msgid "UWB GPIO EXTON" +msgstr "UWB GPIO EXTON" + +#: c3nav/mesh/forms.py:244 c3nav/mesh/forms.py:254 +msgid "this field is required" +msgstr "Dieses Feld wird benötigt." + +#: c3nav/mesh/forms.py:265 +msgid "X" +msgstr "X" + +#: c3nav/mesh/forms.py:266 +msgid "Y" +msgstr "Y" + +#: c3nav/mesh/forms.py:267 +msgid "Z" +msgstr "Z" + +#: c3nav/mesh/forms.py:276 +msgid "content" +msgstr "Inhalt" + +#: c3nav/mesh/forms.py:281 +msgid "Update ID" +msgstr "Update-ID" + +#: c3nav/mesh/forms.py:282 +msgid "reboot" +msgstr "Reboot" + +#: c3nav/mesh/models.py:238 +msgid "mac address" +msgstr "Mac Adresse" + +#: c3nav/mesh/models.py:246 +msgid "first seen" +msgstr "Zuerst gesehen" + +#: c3nav/mesh/models.py:248 c3nav/mesh/models.py:373 +msgid "uplink" +msgstr "Uplink" + +#: c3nav/mesh/models.py:249 +msgid "last signin" +msgstr "Letzte Anmeldung" + +#: c3nav/mesh/models.py:351 c3nav/site/forms.py:45 +#: c3nav/site/templates/site/report_detail.html:17 +#: c3nav/site/templates/site/report_list.html:30 +msgid "closed" +msgstr "geschlossen" + +#: c3nav/mesh/models.py:352 c3nav/mesh/models.py:498 +msgid "replaced" +msgstr "ersetzt" + +#: c3nav/mesh/models.py:353 +msgid "new (timeout)" +msgstr "neu (Timeout)" + +#: c3nav/mesh/models.py:355 +msgid "channel name" +msgstr "Channelname" + +#: c3nav/mesh/models.py:356 +msgid "started" +msgstr "gestartet" + +#: c3nav/mesh/models.py:358 c3nav/mesh/models.py:371 c3nav/mesh/models.py:507 +msgid "node" +msgstr "Modus" + +#: c3nav/mesh/models.py:359 +msgid "last ping from consumer" +msgstr "letzter ping vom Consumer" + +#: c3nav/mesh/models.py:360 +msgid "end reason" +msgstr "Beendigungsgrund" + +#: c3nav/mesh/models.py:375 +msgid "message type" +msgstr "Nachrichtentyp" + +#: c3nav/mesh/models.py:376 +msgid "message data" +msgstr "Nachrichtendaten" + +#: c3nav/mesh/models.py:387 +msgid "project name" +msgstr "Projektname" + +#: c3nav/mesh/models.py:388 +msgid "firmware version" +msgstr "Firmwareversion" + +#: c3nav/mesh/models.py:389 c3nav/mesh/templates/mesh/firmwares.html:18 +#: c3nav/mesh/templates/mesh/firmwares_current.html:16 +msgid "IDF version" +msgstr "IDF-Version" + +#: c3nav/mesh/models.py:391 +msgid "creation/upload date" +msgstr "Erstellungs-/Hochladedatum" + +#: c3nav/mesh/models.py:418 +msgid "variant name" +msgstr "Variantenname" + +#: c3nav/mesh/models.py:419 +msgid "chip" +msgstr "Chip" + +#: c3nav/mesh/models.py:420 +msgid "SHA256 hash" +msgstr "SHA256-Hash" + +#: c3nav/mesh/models.py:421 +msgid "project_description.json" +msgstr "project_description.json" + +#: c3nav/mesh/models.py:422 +msgid "firmware file" +msgstr "Firmwaredatei" + +#: c3nav/mesh/models.py:486 +msgid "creation" +msgstr "Erstellung" + +#: c3nav/mesh/models.py:497 +msgid "running" +msgstr "läuft" + +#: c3nav/mesh/models.py:499 +msgid "canceled" +msgstr "abgebrochen" + +#: c3nav/mesh/models.py:500 +msgid "failed" +msgstr "fehlgeschlagen" + +#: c3nav/mesh/models.py:501 +msgid "success" +msgstr "erfolgreich" + +#: c3nav/mesh/models.py:509 +msgid "status" +msgstr "Status" + +#: c3nav/mesh/templates/mesh/base.html:6 +msgid "c3nav mesh control" +msgstr "c3nav Meshverwaltung" + +#: c3nav/mesh/templates/mesh/base.html:7 +msgid "mesh control" +msgstr "Meshverwaltung" + +#: c3nav/mesh/templates/mesh/firmware_build_detail.html:7 +#: c3nav/mesh/templates/mesh/ota_detail.html:10 +msgid "Firmware Build" +msgstr "Firmware Build" + +#: c3nav/mesh/templates/mesh/firmware_detail.html:7 +#: c3nav/mesh/templates/mesh/firmwares.html:17 +#: c3nav/mesh/templates/mesh/firmwares_current.html:14 +#: c3nav/mesh/templates/mesh/nodes.html:11 +#: c3nav/mesh/templates/mesh/ota_list.html:25 +msgid "Firmware" +msgstr "Firmware" + +#: c3nav/mesh/templates/mesh/firmware_detail.html:22 +#: c3nav/mesh/templates/mesh/firmwares_current.html:15 +msgid "Build" +msgstr "Build" + +#: c3nav/mesh/templates/mesh/firmware_detail.html:23 +#: c3nav/mesh/templates/mesh/nodes.html:10 +msgid "Chip" +msgstr "Chip" + +#: c3nav/mesh/templates/mesh/firmware_detail.html:24 +msgid "Boards" +msgstr "Boards" + +#: c3nav/mesh/templates/mesh/firmwares.html:4 +msgid "Available firmwares" +msgstr "Verfügbare Firmwares" + +#: c3nav/mesh/templates/mesh/firmwares.html:8 +msgid "View current firmwares" +msgstr "Aktuelle Firmwares anzeigen" + +#: c3nav/mesh/templates/mesh/firmwares.html:15 +#: c3nav/mesh/templates/mesh/ota_list.html:24 +#: c3nav/site/templates/site/api_secret_list.html:15 +msgid "Created" +msgstr "Erstellt" + +#: c3nav/mesh/templates/mesh/firmwares.html:16 +msgid "Uploader" +msgstr "Hochlader" + +#: c3nav/mesh/templates/mesh/firmwares.html:19 +msgid "Builds" +msgstr "Builds" + +#: c3nav/mesh/templates/mesh/firmwares_current.html:4 +msgid "Current firmwares" +msgstr "Aktuelle Firmwares" + +#: c3nav/mesh/templates/mesh/firmwares_current.html:8 +msgid "View available firmwares" +msgstr "Verfügbare Firmwares anzeigen" + +#: c3nav/mesh/templates/mesh/firmwares_current.html:13 +msgid "Created / First seen" +msgstr "Erstellt / zuerst gesehen" + +#: c3nav/mesh/templates/mesh/firmwares_current.html:17 +msgid "Installed on" +msgstr "Installiert auf" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:33 +msgid "Set" +msgstr "Set" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:37 +#: c3nav/mesh/templates/mesh/mesh_logs.html:12 +#: c3nav/mesh/templates/mesh/mesh_message_sending.html:41 +#: c3nav/mesh/templates/mesh/mesh_message_sending.html:53 +#: c3nav/mesh/templates/mesh/mesh_messages.html:46 +#: c3nav/mesh/templates/mesh/nodes.html:9 +#: c3nav/mesh/templates/mesh/ota_detail.html:23 +msgid "Node" +msgstr "Node" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:38 +msgid "Current Firmware" +msgstr "Aktuelle Firmware" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:39 +msgid "Current OTA" +msgstr "Aktuelle OTA" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:44 +msgid "Build to install" +msgstr "Zu installierender Build" + +#: c3nav/mesh/templates/mesh/fragment_ota_form.html:72 +msgid "Start OTA" +msgstr "OTA starten" + +#: c3nav/mesh/templates/mesh/mesh_logs.html:4 +msgid "Mesh logs" +msgstr "Mesh logs" + +#: c3nav/mesh/templates/mesh/mesh_logs.html:10 +#: c3nav/mesh/templates/mesh/mesh_messages.html:45 +msgid "Time" +msgstr "Zeit" + +#: c3nav/mesh/templates/mesh/mesh_logs.html:11 +#: c3nav/mesh/templates/mesh/mesh_messages.html:49 +#: c3nav/mesh/templates/mesh/nodes.html:14 +msgid "Uplink" +msgstr "Uplink" + +#: c3nav/mesh/templates/mesh/mesh_logs.html:13 +msgid "Message" +msgstr "Nachricht" + +#: c3nav/mesh/templates/mesh/mesh_message_send.html:6 +#, python-format +msgid "Send %(msg_type)s message to %(recipient)s" +msgstr "%(msg_type)s-Nachricht an %(recipient)s senden" + +#: c3nav/mesh/templates/mesh/mesh_message_send.html:10 +#, python-format +msgid "Send %(msg_type)s message" +msgstr "%(msg_type)s-Nachricht senden" + +#: c3nav/mesh/templates/mesh/mesh_message_send.html:55 +msgid "Send" +msgstr "Senden" + +#: c3nav/mesh/templates/mesh/mesh_message_sending.html:5 +#, python-format +msgid "Sending %(msg_type)s message" +msgstr "Sende %(msg_type)s-Nachricht" + +#: c3nav/mesh/templates/mesh/mesh_message_sending.html:42 +#: c3nav/site/templates/site/map.html:136 +msgid "Route" +msgstr "Route" + +#: c3nav/mesh/templates/mesh/mesh_message_sending.html:64 +msgid "Hop" +msgstr "Hop" + +#: c3nav/mesh/templates/mesh/mesh_messages.html:4 +msgid "Mesh messages" +msgstr "Meshnachrichten" + +#: c3nav/mesh/templates/mesh/mesh_messages.html:22 +msgid "Send message" +msgstr "Nachricht senden" + +#: c3nav/mesh/templates/mesh/mesh_messages.html:48 +msgid "Data" +msgstr "Daten" + +#: c3nav/mesh/templates/mesh/mesh_ranging.html:4 +msgid "Mesh ranging" +msgstr "Mesh ranging" + +#: c3nav/mesh/templates/mesh/mesh_ranging.html:10 +msgid "Show ranging" +msgstr "Ranging anzeigen" + +#: c3nav/mesh/templates/mesh/node_detail.html:4 +msgid "Mesh Node" +msgstr "Mesh Node" + +#: c3nav/mesh/templates/mesh/node_detail.html:12 +msgid "(no name)" +msgstr "(kein Name)" + +#: c3nav/mesh/templates/mesh/node_detail.html:32 +#: c3nav/mesh/templates/mesh/node_detail.html:39 +#: c3nav/mesh/templates/mesh/nodes.html:35 +#: c3nav/mesh/templates/mesh/nodes.html:40 +#, python-format +msgid "%(timesince)s ago" +msgstr "vor %(timesince)s" + +#: c3nav/mesh/templates/mesh/node_detail.html:49 +msgid "View messages" +msgstr "Nachrichten zeigen" + +#: c3nav/mesh/templates/mesh/node_detail.html:52 +msgid "Find route" +msgstr "Route finden" + +#: c3nav/mesh/templates/mesh/node_detail.html:74 +msgid "Chaange board settings" +msgstr "Boardeinstellungen ändern" + +#: c3nav/mesh/templates/mesh/node_detail.html:103 +#: c3nav/mesh/templates/mesh/node_detail.html:134 +msgid "Change" +msgstr "Ändern" + +#: c3nav/mesh/templates/mesh/nodes.html:4 +msgid "Mesh Nodes" +msgstr "Meshnodes" + +#: c3nav/mesh/templates/mesh/nodes.html:12 +msgid "Last msg" +msgstr "Letzte Nachricht" + +#: c3nav/mesh/templates/mesh/nodes.html:13 +msgid "Last signin" +msgstr "Letzte Anmeldung" + +#: c3nav/mesh/templates/mesh/ota_detail.html:4 +msgid "OTA Update" +msgstr "OTA Update" + +#: c3nav/mesh/templates/mesh/ota_detail.html:24 +msgid "Status" +msgstr "Status" + +#: c3nav/mesh/templates/mesh/ota_detail.html:25 +msgid "Progress" +msgstr "Fortschritt" + +#: c3nav/mesh/templates/mesh/ota_list.html:4 +msgid "All OTA Updates" +msgstr "Alle OTA-Updates" + +#: c3nav/mesh/templates/mesh/ota_list.html:4 +msgid "Running OTA Updates" +msgstr "Laufende OTA Updates" + +#: c3nav/mesh/templates/mesh/ota_list.html:9 +msgid "View running OTA updates only" +msgstr "Nur laufende OTA-Updates anzeigen" + +#: c3nav/mesh/templates/mesh/ota_list.html:13 +msgid "View all OTA updates" +msgstr "Alle OTA Updates zeigen" + +#: c3nav/mesh/templates/mesh/ota_list.html:26 +msgid "Recipients" +msgstr "Empfänger" + +#: c3nav/mesh/views/messages.py:108 +msgid "Message sent successfully(?)" +msgstr "Nachricht erfolgreich gesendet(?)" + +#: c3nav/mesh/views/nodes.py:35 +msgid "Name updated successfully" +msgstr "Name erfolgreich geändert." + +#: c3nav/mesh/views/nodes.py:40 +#, python-format +msgid "Editing mesh node: %s" +msgstr "Bearbeite mesh node: %s" + +#: c3nav/routing/api/routing.py:201 msgid "Not yet routable, try again shortly." msgstr "Noch nicht routebar, bitte einige Minuten warten." -#: c3nav/routing/api.py:55 +#: c3nav/routing/api/routing.py:207 msgid "Unreachable location." msgstr "Unerreichbarer Ort." -#: c3nav/routing/api.py:59 +#: c3nav/routing/api/routing.py:213 msgid "No route found." msgstr "Keine Route gefunden." -#: c3nav/routing/api.py:113 -msgid "Invalid scan data." -msgstr "Invalide Scandaten." - #: c3nav/routing/forms.py:18 msgid "Unknown origin." msgstr "Unbekannter Startort." @@ -2603,93 +3113,57 @@ msgstr "Unbekannter Startort." msgid "Unknown destination." msgstr "Unbekannter Zielort." -#: c3nav/routing/locator.py:213 -msgid "Invalid Scan. Scans list list not a list." -msgstr "Invalider Scan. Scan List Liste ist keine Liste." - -#: c3nav/routing/locator.py:219 -msgid "Invalid Scan. Scan not a list." -msgstr "Invalider Scan. Scan is keine Liste." - -#: c3nav/routing/locator.py:232 -msgid "Invalid Scan. Scan value not a dictionary." -msgstr "Invalider Scan. Scan wert ist kein Dictonary." - -#: c3nav/routing/locator.py:235 -msgid "Invalid Scan. Missing or forbidden keys." -msgstr "Invalider Scan. Fehlender oder Falscher Key." - -#: c3nav/routing/locator.py:237 -msgid "Invalid Scan. BSSID not a String." -msgstr "Invalider Scan. BSSID ist kein String." - -#: c3nav/routing/locator.py:240 -msgid "Invalid Scan. Invalid BSSID." -msgstr "Invalider Scan. Ungültige BSSID." - -#: c3nav/routing/locator.py:242 -msgid "Invalid Scan. Invalid RSSI/Level." -msgstr "Invalider Scan. Ungültiger RSSI." - -#: c3nav/routing/locator.py:244 -msgid "Invalid Scan. Not an allowed frequency." -msgstr "Invalider Scan. Unerlaubte Frequenz." - -#: c3nav/routing/locator.py:246 -msgid "Invalid Scan. Invalid last timestamp." -msgstr "Invalider Scan. Letzter Zeitstempel ungültig." - -#: c3nav/routing/models.py:20 c3nav/routing/models.py:21 +#: c3nav/routing/models.py:23 c3nav/routing/models.py:24 #: c3nav/site/templates/site/fragment_report_meta.html:29 -#: c3nav/site/templates/site/map.html:202 +#: c3nav/site/templates/site/map.html:205 msgid "Route options" msgstr "Routenoptionen" -#: c3nav/routing/models.py:32 +#: c3nav/routing/models.py:33 msgid "Routing mode" msgstr "Routemodus" -#: c3nav/routing/models.py:33 +#: c3nav/routing/models.py:34 msgid "fastest" msgstr "schnellste" -#: c3nav/routing/models.py:33 +#: c3nav/routing/models.py:34 msgid "shortest" msgstr "kürzeste" -#: c3nav/routing/models.py:37 +#: c3nav/routing/models.py:38 msgid "Walk speed" msgstr "Gehgeschwindigkeit" -#: c3nav/routing/models.py:38 +#: c3nav/routing/models.py:39 msgid "slow" msgstr "langsam" -#: c3nav/routing/models.py:38 +#: c3nav/routing/models.py:39 msgid "default" msgstr "standard" -#: c3nav/routing/models.py:38 +#: c3nav/routing/models.py:39 msgid "fast" msgstr "schnell" -#: c3nav/routing/models.py:44 +#: c3nav/routing/models.py:45 msgid "allow" msgstr "erlaubt" -#: c3nav/routing/models.py:46 +#: c3nav/routing/models.py:47 msgid "avoid upwards" msgstr "aufwärts vermeiden" -#: c3nav/routing/models.py:47 +#: c3nav/routing/models.py:48 msgid "avoid downwards" msgstr "abwärts vermeiden" -#: c3nav/routing/models.py:48 +#: c3nav/routing/models.py:49 msgid "avoid completely" msgstr "komplett vermeiden" -#: c3nav/routing/models.py:50 +#: c3nav/routing/models.py:51 msgid "avoid" msgstr "vermeiden" @@ -2703,56 +3177,63 @@ msgstr "Unbekannte Routenoption: %s" msgid "Invalid value for route option %s." msgstr "Invalider Wert für Routenoption %s." -#: c3nav/routing/route.py:128 +#: c3nav/routing/route.py:130 #, python-format msgid "Go to %(space_title)s." msgstr "Betrete %(space_title)s." -#: c3nav/routing/route.py:143 +#: c3nav/routing/route.py:146 #, python-format msgid "%d m remaining to your destination." msgstr "%d m bis zu deinem Ziel." -#: c3nav/routing/route.py:145 +#: c3nav/routing/route.py:149 msgid "You have reached your destination." msgstr "Du hast dein Ziel erreicht." -#: c3nav/routing/route.py:161 +#: c3nav/routing/route.py:165 msgid "fastest route" msgstr "schnellste Route" -#: c3nav/routing/route.py:162 +#: c3nav/routing/route.py:166 msgid "shortest route" msgstr "kürzeste Route" -#: c3nav/routing/route.py:170 +#: c3nav/routing/route.py:174 msgid "some path types avoided" msgstr "einige Wegtypen vermieden" -#: c3nav/routing/route.py:172 +#: c3nav/routing/route.py:176 msgid "default options" msgstr "Standardoptionen" -#: c3nav/settings.py:308 +#: c3nav/settings.py:399 msgid "English" msgstr "Englisch" -#: c3nav/settings.py:309 +#: c3nav/settings.py:400 msgid "German" msgstr "Deutsch" -#: c3nav/site/forms.py:32 +#: c3nav/site/forms.py:24 +msgid "Yes, i really want to delete my account." +msgstr "Ja, ich möchte meinen Account löschen." + +#: c3nav/site/forms.py:41 msgid "change status" msgstr "Status ändern" -#: c3nav/site/forms.py:34 +#: c3nav/site/forms.py:43 msgid "don't change" msgstr "nicht ändern" -#: c3nav/site/forms.py:36 c3nav/site/templates/site/report_detail.html:17 -#: c3nav/site/templates/site/report_list.html:30 -msgid "closed" -msgstr "geschlossen" +#: c3nav/site/forms.py:80 +msgid "valid for (days)" +msgstr "Geltungsdauer (Tage)" + +#: c3nav/site/forms.py:81 +msgid "valid for (hours)" +msgstr "Geltungsdauer (Stunden)" #: c3nav/site/models.py:15 msgid "active until" @@ -2788,11 +3269,11 @@ msgstr "" #: c3nav/site/templates/site/about.html:12 msgid "" -"Keep yourself up to date on c3nav by following us on Twitter." +"Keep yourself up to date on c3nav by following us on the fediverse." msgstr "" -"Bleib auf dem Laufenden zu c3nav via Twitter." +"Bleib auf dem Laufenden zu c3nav auf dem Fediverse.." #: c3nav/site/templates/site/about.html:14 msgid "The c3nav team at this event:" @@ -2806,86 +3287,103 @@ msgstr "" #: c3nav/site/templates/site/about.html:20 msgid "" "Development of the software was supported by the following patrons on Patreon:" +"href=\"https://patreon.com/c3nav\" rel=\"external\" " +"target=\"_blank\">Patreon:" msgstr "" "Die Entwicklung dieser Software wurde unterstützt von den folgenden Patrons " -"auf Patreon:" +"auf Patreon:" -#: c3nav/site/templates/site/about.html:24 -msgid "Responsible for this website:" -msgstr "Verantwortlich für diese Webseite:" - -#: c3nav/site/templates/site/about.html:28 -msgid "Data privacy" -msgstr "Datenschutz" - -#: c3nav/site/templates/site/about.html:30 -msgid "We do not collect any personal data." -msgstr "Wir sammeln keine persönlichen Daten." - -#: c3nav/site/templates/site/about.html:31 -msgid "" -"Any data that your device sends to c3nav that might be used to track you " -"will either be discarded after processing it or saved in a way that does not " -"allow us to connect it to you." -msgstr "" -"Jegliche persönliche Daten, die dein Gerät an c3nav und die dafür genutzt " -"werden könnten dich zu tracken werden entweder nach der Verarbeitung " -"verworfen oder auf eine Art und Weise gespeichert, die es uns unmöglich " -"macht, sie mit dir in Verbindung zu bringen." - -#: c3nav/site/templates/site/about.html:32 -msgid "If you register an account, we do not ask for personal data either." -msgstr "" -"Auch wenn du einen Account erstellst, fragen wir dich nach keinen " -"persönlichen Daten." +#: c3nav/site/templates/site/about.html:25 +#: c3nav/site/templates/site/map.html:22 +msgid "Imprint" +msgstr "Impressum" #: c3nav/site/templates/site/account.html:6 msgid "Your Account" msgstr "Dein Account" #: c3nav/site/templates/site/account.html:12 +#: c3nav/site/templates/site/account_manage.html:12 #, python-format msgid "You are logged in as %(username)s." msgstr "Du bist angemeldet als %(username)s." -#: c3nav/site/templates/site/account.html:19 -msgid "You can access the control panel." -msgstr "Du kannst das Control Panel betreten." +#: c3nav/site/templates/site/account.html:18 +msgid "You can manage:" +msgstr "Du kannst folgendes verwalten:" -#: c3nav/site/templates/site/account.html:29 -msgid "You can review reports" -msgstr "Du kannst Meldungen überprüfen" +#: c3nav/site/templates/site/account.html:22 +msgid "stuff" +msgstr "Zeug" -#: c3nav/site/templates/site/account.html:32 -msgid "Show reports" -msgstr "Meldungen anzeigen" +#: c3nav/site/templates/site/account.html:25 +msgid "reports" +msgstr "Meldungen" -#: c3nav/site/templates/site/account.html:37 +#: c3nav/site/templates/site/account.html:28 +msgid "mesh" +msgstr "Mesh" + +#: c3nav/site/templates/site/account.html:36 msgid "You have submitted reports." msgstr "Du hast Meldungen eingereicht." -#: c3nav/site/templates/site/account.html:40 +#: c3nav/site/templates/site/account.html:39 msgid "Show your reports" msgstr "Deine Meldungen anzeigen" -#: c3nav/site/templates/site/account.html:47 -msgid "You can create custom positions." -msgstr "Du kannst benutzerdefinierte Positionen erstellen." - -#: c3nav/site/templates/site/account.html:50 -msgid "Manage your positions" +#: c3nav/site/templates/site/account.html:45 +msgid "Manage custom positions" msgstr "Positionen verwalten" +#: c3nav/site/templates/site/account.html:48 +msgid "Manage API secrets" +msgstr "API-Secrets verwalten" + +#: c3nav/site/templates/site/account.html:54 +msgid "Manage account" +msgstr "Konto verwalten" + +#: c3nav/site/templates/site/account_manage.html:6 +msgid "Manage your Account" +msgstr "Deinen Account verwalten" + +#: c3nav/site/templates/site/account_manage.html:20 c3nav/site/views.py:325 +msgid "Delete account" +msgstr "Account löschen" + +#: c3nav/site/templates/site/api_secret_create.html:6 +#: c3nav/site/templates/site/api_secret_list.html:42 +msgid "Create API secret" +msgstr "API Secret erstellen" + +#: c3nav/site/templates/site/api_secret_create.html:13 +#: c3nav/site/templates/site/position_create.html:13 +#: c3nav/site/templates/site/report_create.html:13 +#: c3nav/site/templates/site/report_detail.html:79 +msgid "Submit" +msgstr "Absenden" + +#: c3nav/site/templates/site/api_secret_list.html:7 +msgid "Your API secrets" +msgstr "Deine API secrets" + +#: c3nav/site/templates/site/api_secret_list.html:17 +msgid "Valid Until" +msgstr "gültig bis" + +#: c3nav/site/templates/site/api_secret_list.html:34 +msgid "delete" +msgstr "Löschen" + #: c3nav/site/templates/site/fragment_report_meta.html:3 msgid "You are reporting an issue with the following location:" msgstr "Du meldest einen Fehler beim folgenden Ort:" #: c3nav/site/templates/site/fragment_report_meta.html:6 #: c3nav/site/templates/site/fragment_report_meta.html:15 -#: c3nav/site/templates/site/map.html:222 +#: c3nav/site/templates/site/map.html:225 msgid "open in c3nav" msgstr "in c3nav öffnen" @@ -2930,119 +3428,109 @@ msgstr "API" msgid "about c3nav" msgstr "über c3nav" -#: c3nav/site/templates/site/map.html:36 +#: c3nav/site/templates/site/map.html:39 msgid "Show this point" msgstr "Diesen Punkt zeigen" -#: c3nav/site/templates/site/map.html:42 +#: c3nav/site/templates/site/map.html:45 msgid "Show nearby locations" msgstr "Nahegelegene Orte zeigen" -#: c3nav/site/templates/site/map.html:48 +#: c3nav/site/templates/site/map.html:51 msgid "Set my position" msgstr "Meine Position setzen" -#: c3nav/site/templates/site/map.html:54 c3nav/site/templates/site/map.html:80 -#: c3nav/site/templates/site/map.html:178 +#: c3nav/site/templates/site/map.html:57 c3nav/site/templates/site/map.html:83 +#: c3nav/site/templates/site/map.html:181 msgid "Report missing location" msgstr "Fehlenden Ort melden" -#: c3nav/site/templates/site/map.html:62 +#: c3nav/site/templates/site/map.html:65 msgid "Select" msgstr "Auswählen" -#: c3nav/site/templates/site/map.html:66 c3nav/site/templates/site/map.html:85 -#: c3nav/site/templates/site/map.html:129 +#: c3nav/site/templates/site/map.html:69 c3nav/site/templates/site/map.html:88 +#: c3nav/site/templates/site/map.html:132 msgid "Share" msgstr "Teilen" -#: c3nav/site/templates/site/map.html:70 +#: c3nav/site/templates/site/map.html:73 msgid "from here" msgstr "von hier" -#: c3nav/site/templates/site/map.html:71 +#: c3nav/site/templates/site/map.html:74 msgid "to here" msgstr "hierhin" -#: c3nav/site/templates/site/map.html:76 c3nav/site/templates/site/map.html:174 -#: c3nav/site/templates/site/map.html:195 +#: c3nav/site/templates/site/map.html:79 c3nav/site/templates/site/map.html:177 +#: c3nav/site/templates/site/map.html:198 #: c3nav/site/templates/site/report_create.html:6 msgid "Report issue" msgstr "Fehler melden" -#: c3nav/site/templates/site/map.html:89 +#: c3nav/site/templates/site/map.html:92 msgid "share" msgstr "Teilen" -#: c3nav/site/templates/site/map.html:90 +#: c3nav/site/templates/site/map.html:93 msgid "create shortcut" msgstr "Verknüpfung anlegen" -#: c3nav/site/templates/site/map.html:94 +#: c3nav/site/templates/site/map.html:97 msgid "Wifi-based location" msgstr "WLAN-basierte Ortung" -#: c3nav/site/templates/site/map.html:95 +#: c3nav/site/templates/site/map.html:98 msgid "Get the c3nav app for Android to see your location on the map." msgstr "" "Hole dir die c3nav-App für Android um deine Position auf der Karte zu sehen." -#: c3nav/site/templates/site/map.html:98 +#: c3nav/site/templates/site/map.html:101 msgid "Download APK" msgstr "APK herunterladen" -#: c3nav/site/templates/site/map.html:108 -#: c3nav/site/templates/site/map.html:115 +#: c3nav/site/templates/site/map.html:111 +#: c3nav/site/templates/site/map.html:118 msgid "Search any location…" msgstr "Suche einen beliebigen Ort…" -#: c3nav/site/templates/site/map.html:133 -msgid "Route" -msgstr "Route" - -#: c3nav/site/templates/site/map.html:145 -#: c3nav/site/templates/site/map.html:155 +#: c3nav/site/templates/site/map.html:148 +#: c3nav/site/templates/site/map.html:158 msgid "Swap" msgstr "Vertauschen" -#: c3nav/site/templates/site/map.html:149 +#: c3nav/site/templates/site/map.html:152 msgid "Close" msgstr "Schließen" -#: c3nav/site/templates/site/map.html:182 +#: c3nav/site/templates/site/map.html:185 msgid "Open in Editor" msgstr "Im Editor öffnen" -#: c3nav/site/templates/site/map.html:207 +#: c3nav/site/templates/site/map.html:210 msgid "Save and reroute" msgstr "Speichern und neu routen" -#: c3nav/site/templates/site/map.html:208 +#: c3nav/site/templates/site/map.html:211 msgid "Just reroute" msgstr "Nur neu routen" -#: c3nav/site/templates/site/map.html:217 +#: c3nav/site/templates/site/map.html:220 #, python-format msgid "" -"Get the c3nav Android app on Google Play or download the " -"APK!" +"Get the c3nav Android app on Google Play or download the APK!" msgstr "" -"Hol' dir die c3nav Android-App bei Google Play oder downloade " -"die APK!" +"Hol' dir die c3nav Android-App bei Google Play oder downloade die APK!" #: c3nav/site/templates/site/position_create.html:6 -#: c3nav/site/templates/site/position_list.html:16 +#: c3nav/site/templates/site/position_list.html:15 msgid "Create position" msgstr "Position erstellen" -#: c3nav/site/templates/site/position_create.html:13 -#: c3nav/site/templates/site/report_create.html:13 -#: c3nav/site/templates/site/report_detail.html:79 -msgid "Submit" -msgstr "Absenden" - #: c3nav/site/templates/site/position_detail.html:7 msgid "Position:" msgstr "Position:" @@ -3059,11 +3547,11 @@ msgstr "Letztes Koordinatenupdate:" msgid "Secret" msgstr "Secret" -#: c3nav/site/templates/site/position_detail.html:27 +#: c3nav/site/templates/site/position_detail.html:23 msgid "How to manage" msgstr "Manageanleitung" -#: c3nav/site/templates/site/position_detail.html:29 +#: c3nav/site/templates/site/position_detail.html:25 msgid "" "To set this position, click on any point in the c3nav UI and click \"set my " "position\"." @@ -3071,49 +3559,44 @@ msgstr "" "Um die Position zu setzen, klicke auf einen beliebigen Punkt in der c3nav-" "Oberfläche und klick auf „Meine Position setzen“." -#: c3nav/site/templates/site/position_detail.html:30 +#: c3nav/site/templates/site/position_detail.html:26 msgid "" "To unset your position, just come here or set the timeout appropriately." msgstr "" "Um die Position zurückzusetzen, komme hierhin zurück oder setze den Timeout " "entsprechend." -#: c3nav/site/templates/site/position_detail.html:33 +#: c3nav/site/templates/site/position_detail.html:29 msgid "We only keep your last position, we do not save any position history." msgstr "" "Wir speichern nur die letzte Position, wir speichern keine " "Positionsgeschichte." -#: c3nav/site/templates/site/position_detail.html:36 -msgid "To set it via the API, send a JSON PUT request to:" -msgstr "Um sie über die API zu setzen, sende einen JSON PUT request an:" - -#: c3nav/site/templates/site/position_detail.html:46 -msgid "To get it via the API, just send a GET request to that URL." -msgstr "" -"Um sie über die API abzufragen, sende einfach einen GET request an die URL." - -#: c3nav/site/templates/site/position_detail.html:49 +#: c3nav/site/templates/site/position_detail.html:32 msgid "To access this position on the map, visit:" msgstr "Um diese Position auf der Karte zu sehen, nutze folgenden Link:" -#: c3nav/site/templates/site/position_detail.html:58 +#: c3nav/site/templates/site/position_detail.html:36 +msgid "To get and set it via the API, use this API endpoint:" +msgstr "Um sie über die API zu setzen, nutze diesen API Endpoint:" + +#: c3nav/site/templates/site/position_detail.html:38 +msgid "View OpenAPI documentation" +msgstr "OpenAPI-Dokumentation" + +#: c3nav/site/templates/site/position_detail.html:46 msgid "unset coordinates" msgstr "Koordinaten löschen" -#: c3nav/site/templates/site/position_detail.html:59 +#: c3nav/site/templates/site/position_detail.html:47 msgid "reset secret" msgstr "Secret zurücksetzen" -#: c3nav/site/templates/site/position_detail.html:60 -msgid "reset API secret" -msgstr "API Secret zurücksetzen" - -#: c3nav/site/templates/site/position_detail.html:61 +#: c3nav/site/templates/site/position_detail.html:48 msgid "delete this position" msgstr "diese Position löschen" -#: c3nav/site/templates/site/position_detail.html:62 +#: c3nav/site/templates/site/position_detail.html:49 msgid "Update position" msgstr "Position speichern" @@ -3188,73 +3671,231 @@ msgstr "Alle Meldungen" msgid "State" msgstr "Status" -#: c3nav/site/views.py:78 c3nav/site/views.py:331 +#: c3nav/site/views.py:79 c3nav/site/views.py:361 msgid "You need to log in to unlock areas." msgstr "Du musst dich anmelden um Bereiche freizuschalten." -#: c3nav/site/views.py:217 +#: c3nav/site/views.py:220 msgid "Areas could not be unlocked because the token has expired." msgstr "" "Zugangserlaubnis konnte nicht gewährt werden weil der Code abgelaufen ist." -#: c3nav/site/views.py:260 +#: c3nav/site/views.py:263 msgid "account creation is currently disabled." msgstr "Benutzerregistrierung ist momentan deaktiviert." -#: c3nav/site/views.py:324 +#: c3nav/site/views.py:319 +msgid "Account successfully deleted." +msgstr "Account erfolgreich gelöscht." + +#: c3nav/site/views.py:326 +msgid "" +"Click the button below to instantly delete your account and all associated " +"data. This process can't be reversed." +msgstr "" +"Klicke den untenstehenden Button um deinen Account und alle verknüpften " +"Daten sofort zu löschen. Dieser Prozess kann nicht rückgängig gemacht werden." + +#: c3nav/site/views.py:354 msgid "This token does not exist or was already redeemed." msgstr "Dieser Code existiert nicht oder wurde bereits eingelöst." -#: c3nav/site/views.py:344 +#: c3nav/site/views.py:374 msgid "Unlock area" msgid_plural "Unlock areas" msgstr[0] "Bereich freischalten" msgstr[1] "Bereiche freischalten" -#: c3nav/site/views.py:345 +#: c3nav/site/views.py:375 msgid "You have been invited to unlock the following area:" msgid_plural "You have been invited to unlock the following areas:" msgstr[0] "Du wurdest eingeladen, den folgenden Bereich freizuschalten:" msgstr[1] "Du wurdest eingeladen, die folgenden Bereiche freizuschalten:" -#: c3nav/site/views.py:418 +#: c3nav/site/views.py:450 msgid "Your report was submitted." msgstr "Deine Meldung wurde abgesendet." -#: c3nav/site/views.py:421 +#: c3nav/site/views.py:453 msgid "You can keep track of it from your user dashboard." msgstr "Du kannst sie in deinerm Benutzerdashboard verfolgen." -#: c3nav/site/views.py:423 +#: c3nav/site/views.py:455 msgid "You can keep track of it by revisiting the public URL mentioned below." msgstr "Du kannst sie mit dem unten angegebenen öffentlichen link verfolgen." -#: c3nav/site/views.py:474 +#: c3nav/site/views.py:506 msgid "Report updated." msgstr "Meldung aktualisiert." -#: c3nav/site/views.py:499 +#: c3nav/site/views.py:531 msgid "You can't create more than 20 positions." msgstr "Du kannst nicht mehr als 20 Positionen erstellen." -#: c3nav/site/views.py:508 +#: c3nav/site/views.py:540 msgid "Position created." msgstr "Position erstellt." -#: c3nav/site/views.py:527 +#: c3nav/site/views.py:559 msgid "Position deleted." msgstr "Position gelöscht." -#: c3nav/site/views.py:543 +#: c3nav/site/views.py:572 msgid "Position updated." msgstr "Position geändert." -#: c3nav/site/views.py:567 +#: c3nav/site/views.py:596 msgid "Position set." msgstr "Position gesetzt." -#~ msgid "last location update" -#~ msgstr "Letzte Ortänderung" +#: c3nav/site/views.py:612 +msgid "API secret deleted." +msgstr "API secret erfolgreich gelöscht." + +#: c3nav/site/views.py:623 +msgid "You can't create more than 20 API secrets." +msgstr "Du kannst nicht mehr als 20 API-Secrets erstellen." + +#: c3nav/site/views.py:631 +msgid "API secret created. Save it now, cause it will not be shown again!" +msgstr "" +"API-Secret erstellt. Notier es dir sofort, denn es wird nicht erneut " +"angezeigt!" + +#~ msgid "Log out first." +#~ msgstr "Bitte zuerst abmelden." + +#~ msgid "This token does not exist or is no longer valid." +#~ msgstr "Dieser Token existiert nicht oder ist nicht mehr gültig." + +#~ msgid "You need to send a token or username and password." +#~ msgstr "Du musst einen Token oder Benutzername und Passwort senden." + +#~ msgid "Login successful." +#~ msgstr "Login erfogreich." + +#~ msgid "Not logged in." +#~ msgstr "Nich angemeldet." + +#~ msgid "Logout successful." +#~ msgstr "Login erfolgreich." + +#~ msgid "This user has an API secret." +#~ msgstr "Dieser Benutzer hat ein API Secret." + +#~ msgid "You have an API secret." +#~ msgstr "Du hast ein API Secret." + +#~ msgid "You can not see it, but generate a new one." +#~ msgstr "Du kannst es nich sehen, aber ein neues generieren." + +#~ msgid "This user has not an API secret." +#~ msgstr "Dieser Benutzer hat kein API Secret." + +#~ msgid "Regenerate API secret" +#~ msgstr "API Secret neu generieren" + +#~ msgid "Delete API secret" +#~ msgstr "API Secret löschen" + +#~ msgid "Update API secret" +#~ msgstr "API Secret updaten" + +#~ msgid "This user already has an API secret." +#~ msgstr "Dieser Benutzer hat bereis ein API Secret." + +#~ msgid "This user does not have an API secret." +#~ msgstr "Dieser Benutzer hat kein API Secret." + +#~ msgid "You don't have the permission to activate direct editing." +#~ msgstr "Du darfst direktes Bearbeiten nicht aktivieren." + +#~ msgid "You cannot activate direct editing if you have an active changeset." +#~ msgstr "" +#~ "Du kannst direktes Bearbeiten nicht aktivieren, wenn du ein aktives " +#~ "Änderungsset hast." + +#, python-format +#~ msgid "%(field)s is not an integer." +#~ msgstr "%(field)s ist keine ganze Zahl." + +#, python-format +#~ msgid "%(model)s not found." +#~ msgstr "%(model)s nicht gefunden." + +#~ msgid "Wrong API secret." +#~ msgstr "Falsches API secret." + +#~ msgid "api secret" +#~ msgstr "API secret" + +#~ msgid "Invalid scan data." +#~ msgstr "Invalide Scandaten." + +#~ msgid "Invalid Scan. Scan not a list." +#~ msgstr "Invalider Scan. Scan is keine Liste." + +#~ msgid "Invalid Scan. Scan value not a dictionary." +#~ msgstr "Invalider Scan. Scan wert ist kein Dictonary." + +#~ msgid "Invalid Scan. Missing or forbidden keys." +#~ msgstr "Invalider Scan. Fehlender oder Falscher Key." + +#~ msgid "Invalid Scan. BSSID not a String." +#~ msgstr "Invalider Scan. BSSID ist kein String." + +#~ msgid "Invalid Scan. Invalid BSSID." +#~ msgstr "Invalider Scan. Ungültige BSSID." + +#~ msgid "Invalid Scan. Invalid RSSI/Level." +#~ msgstr "Invalider Scan. Ungültiger RSSI." + +#~ msgid "Invalid Scan. Not an allowed frequency." +#~ msgstr "Invalider Scan. Unerlaubte Frequenz." + +#~ msgid "Invalid Scan. Invalid last timestamp." +#~ msgstr "Invalider Scan. Letzter Zeitstempel ungültig." + +#~ msgid "Responsible for this website:" +#~ msgstr "Verantwortlich für diese Webseite:" + +#~ msgid "Data privacy" +#~ msgstr "Datenschutz" + +#~ msgid "We do not collect any personal data." +#~ msgstr "Wir sammeln keine persönlichen Daten." + +#~ msgid "" +#~ "Any data that your device sends to c3nav that might be used to track you " +#~ "will either be discarded after processing it or saved in a way that does " +#~ "not allow us to connect it to you." +#~ msgstr "" +#~ "Jegliche persönliche Daten, die dein Gerät an c3nav und die dafür genutzt " +#~ "werden könnten dich zu tracken werden entweder nach der Verarbeitung " +#~ "verworfen oder auf eine Art und Weise gespeichert, die es uns unmöglich " +#~ "macht, sie mit dir in Verbindung zu bringen." + +#~ msgid "If you register an account, we do not ask for personal data either." +#~ msgstr "" +#~ "Auch wenn du einen Account erstellst, fragen wir dich nach keinen " +#~ "persönlichen Daten." + +#~ msgid "You can access the control panel." +#~ msgstr "Du kannst das Control Panel betreten." + +#~ msgid "You can review reports" +#~ msgstr "Du kannst Meldungen überprüfen" + +#~ msgid "Show reports" +#~ msgstr "Meldungen anzeigen" + +#~ msgid "You can create custom positions." +#~ msgstr "Du kannst benutzerdefinierte Positionen erstellen." + +#~ msgid "To get it via the API, just send a GET request to that URL." +#~ msgstr "" +#~ "Um sie über die API abzufragen, sende einfach einen GET request an die " +#~ "URL." #~ msgid "Coming soon" #~ msgstr "Coming soon"