umap-project 2.9.3__py3-none-any.whl → 3.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of umap-project might be problematic. Click here for more details.

Files changed (217) hide show
  1. umap/__init__.py +1 -1
  2. umap/context_processors.py +1 -0
  3. umap/forms.py +1 -2
  4. umap/locale/de/LC_MESSAGES/django.mo +0 -0
  5. umap/locale/de/LC_MESSAGES/django.po +218 -96
  6. umap/locale/en/LC_MESSAGES/django.po +128 -52
  7. umap/locale/fr/LC_MESSAGES/django.mo +0 -0
  8. umap/locale/fr/LC_MESSAGES/django.po +128 -52
  9. umap/locale/hu/LC_MESSAGES/django.mo +0 -0
  10. umap/locale/hu/LC_MESSAGES/django.po +209 -88
  11. umap/locale/is/LC_MESSAGES/django.mo +0 -0
  12. umap/locale/is/LC_MESSAGES/django.po +296 -175
  13. umap/migrations/0027_map_tags.py +23 -0
  14. umap/models.py +13 -2
  15. umap/settings/base.py +23 -5
  16. umap/static/umap/base.css +41 -8
  17. umap/static/umap/content.css +72 -37
  18. umap/static/umap/css/bar.css +43 -21
  19. umap/static/umap/css/dialog.css +4 -1
  20. umap/static/umap/css/form.css +40 -27
  21. umap/static/umap/css/icon.css +11 -1
  22. umap/static/umap/css/importers.css +7 -0
  23. umap/static/umap/img/16-white.svg +23 -2
  24. umap/static/umap/img/16.svg +1 -1
  25. umap/static/umap/img/24.svg +4 -4
  26. umap/static/umap/img/home.svg +7 -0
  27. umap/static/umap/img/importers/banfr.svg +1 -0
  28. umap/static/umap/img/marker.svg +2 -5
  29. umap/static/umap/img/source/16-white.svg +24 -3
  30. umap/static/umap/img/source/16.svg +1 -1
  31. umap/static/umap/img/source/24.svg +5 -5
  32. umap/static/umap/img/target.svg +1 -0
  33. umap/static/umap/js/components/alerts/alert.js +0 -1
  34. umap/static/umap/js/modules/browser.js +4 -4
  35. umap/static/umap/js/modules/caption.js +1 -1
  36. umap/static/umap/js/modules/data/features.js +25 -25
  37. umap/static/umap/js/modules/data/layer.js +91 -97
  38. umap/static/umap/js/modules/facets.js +9 -5
  39. umap/static/umap/js/modules/form/builder.js +19 -27
  40. umap/static/umap/js/modules/form/fields.js +40 -14
  41. umap/static/umap/js/modules/formatter.js +1 -1
  42. umap/static/umap/js/modules/global.js +9 -5
  43. umap/static/umap/js/modules/help.js +18 -5
  44. umap/static/umap/js/modules/importer.js +5 -2
  45. umap/static/umap/js/modules/importers/banfr.js +93 -0
  46. umap/static/umap/js/modules/importers/cadastrefr.js +2 -2
  47. umap/static/umap/js/modules/importers/communesfr.js +1 -1
  48. umap/static/umap/js/modules/permissions.js +20 -10
  49. umap/static/umap/js/modules/rendering/icon.js +15 -2
  50. umap/static/umap/js/modules/rendering/layers/classified.js +7 -7
  51. umap/static/umap/js/modules/rendering/layers/cluster.js +2 -2
  52. umap/static/umap/js/modules/rendering/layers/heat.js +4 -4
  53. umap/static/umap/js/modules/rendering/map.js +14 -6
  54. umap/static/umap/js/modules/rendering/popup.js +2 -2
  55. umap/static/umap/js/modules/rendering/template.js +3 -3
  56. umap/static/umap/js/modules/rendering/ui.js +17 -11
  57. umap/static/umap/js/modules/rules.js +13 -16
  58. umap/static/umap/js/modules/schema.js +23 -1
  59. umap/static/umap/js/modules/share.js +1 -1
  60. umap/static/umap/js/modules/slideshow.js +1 -0
  61. umap/static/umap/js/modules/sync/engine.js +141 -19
  62. umap/static/umap/js/modules/sync/undo.js +101 -0
  63. umap/static/umap/js/modules/sync/updaters.js +51 -28
  64. umap/static/umap/js/modules/tableeditor.js +1 -1
  65. umap/static/umap/js/modules/ui/bar.js +61 -21
  66. umap/static/umap/js/modules/ui/tooltip.js +1 -1
  67. umap/static/umap/js/modules/umap.js +190 -176
  68. umap/static/umap/js/modules/utils.js +30 -4
  69. umap/static/umap/js/umap.controls.js +82 -38
  70. umap/static/umap/locale/am_ET.js +11 -6
  71. umap/static/umap/locale/am_ET.json +11 -6
  72. umap/static/umap/locale/ar.js +11 -6
  73. umap/static/umap/locale/ar.json +11 -6
  74. umap/static/umap/locale/ast.js +11 -6
  75. umap/static/umap/locale/ast.json +11 -6
  76. umap/static/umap/locale/bg.js +11 -6
  77. umap/static/umap/locale/bg.json +11 -6
  78. umap/static/umap/locale/br.js +12 -7
  79. umap/static/umap/locale/br.json +12 -7
  80. umap/static/umap/locale/ca.js +11 -6
  81. umap/static/umap/locale/ca.json +11 -6
  82. umap/static/umap/locale/cs_CZ.js +11 -6
  83. umap/static/umap/locale/cs_CZ.json +11 -6
  84. umap/static/umap/locale/da.js +11 -6
  85. umap/static/umap/locale/da.json +11 -6
  86. umap/static/umap/locale/de.js +47 -42
  87. umap/static/umap/locale/de.json +47 -42
  88. umap/static/umap/locale/el.js +11 -6
  89. umap/static/umap/locale/el.json +11 -6
  90. umap/static/umap/locale/en.js +11 -6
  91. umap/static/umap/locale/en.json +11 -6
  92. umap/static/umap/locale/en_US.json +11 -6
  93. umap/static/umap/locale/es.js +11 -6
  94. umap/static/umap/locale/es.json +11 -6
  95. umap/static/umap/locale/et.js +11 -6
  96. umap/static/umap/locale/et.json +11 -6
  97. umap/static/umap/locale/eu.js +11 -6
  98. umap/static/umap/locale/eu.json +11 -6
  99. umap/static/umap/locale/fa_IR.js +11 -6
  100. umap/static/umap/locale/fa_IR.json +11 -6
  101. umap/static/umap/locale/fi.js +11 -6
  102. umap/static/umap/locale/fi.json +11 -6
  103. umap/static/umap/locale/fr.js +11 -6
  104. umap/static/umap/locale/fr.json +11 -6
  105. umap/static/umap/locale/gl.js +12 -7
  106. umap/static/umap/locale/gl.json +12 -7
  107. umap/static/umap/locale/he.js +11 -6
  108. umap/static/umap/locale/he.json +11 -6
  109. umap/static/umap/locale/hr.js +11 -6
  110. umap/static/umap/locale/hr.json +11 -6
  111. umap/static/umap/locale/hu.js +25 -20
  112. umap/static/umap/locale/hu.json +25 -20
  113. umap/static/umap/locale/id.js +11 -6
  114. umap/static/umap/locale/id.json +11 -6
  115. umap/static/umap/locale/is.js +151 -146
  116. umap/static/umap/locale/is.json +151 -146
  117. umap/static/umap/locale/it.js +11 -6
  118. umap/static/umap/locale/it.json +11 -6
  119. umap/static/umap/locale/ja.js +11 -6
  120. umap/static/umap/locale/ja.json +11 -6
  121. umap/static/umap/locale/ko.js +11 -6
  122. umap/static/umap/locale/ko.json +11 -6
  123. umap/static/umap/locale/lt.js +11 -6
  124. umap/static/umap/locale/lt.json +11 -6
  125. umap/static/umap/locale/ms.js +11 -6
  126. umap/static/umap/locale/ms.json +11 -6
  127. umap/static/umap/locale/nl.js +12 -7
  128. umap/static/umap/locale/nl.json +12 -7
  129. umap/static/umap/locale/no.js +11 -6
  130. umap/static/umap/locale/no.json +11 -6
  131. umap/static/umap/locale/pl.js +11 -6
  132. umap/static/umap/locale/pl.json +11 -6
  133. umap/static/umap/locale/pl_PL.json +11 -6
  134. umap/static/umap/locale/pt.js +11 -6
  135. umap/static/umap/locale/pt.json +11 -6
  136. umap/static/umap/locale/pt_BR.js +11 -6
  137. umap/static/umap/locale/pt_BR.json +11 -6
  138. umap/static/umap/locale/pt_PT.js +11 -6
  139. umap/static/umap/locale/pt_PT.json +11 -6
  140. umap/static/umap/locale/ro.js +11 -6
  141. umap/static/umap/locale/ro.json +11 -6
  142. umap/static/umap/locale/ru.js +11 -6
  143. umap/static/umap/locale/ru.json +11 -6
  144. umap/static/umap/locale/sk_SK.js +11 -6
  145. umap/static/umap/locale/sk_SK.json +11 -6
  146. umap/static/umap/locale/sl.js +11 -6
  147. umap/static/umap/locale/sl.json +11 -6
  148. umap/static/umap/locale/sr.js +11 -6
  149. umap/static/umap/locale/sr.json +11 -6
  150. umap/static/umap/locale/sv.js +11 -6
  151. umap/static/umap/locale/sv.json +11 -6
  152. umap/static/umap/locale/th_TH.js +11 -6
  153. umap/static/umap/locale/th_TH.json +11 -6
  154. umap/static/umap/locale/tr.js +11 -6
  155. umap/static/umap/locale/tr.json +11 -6
  156. umap/static/umap/locale/uk_UA.js +11 -6
  157. umap/static/umap/locale/uk_UA.json +11 -6
  158. umap/static/umap/locale/vi.js +11 -6
  159. umap/static/umap/locale/vi.json +11 -6
  160. umap/static/umap/locale/vi_VN.json +11 -6
  161. umap/static/umap/locale/zh.js +11 -6
  162. umap/static/umap/locale/zh.json +11 -6
  163. umap/static/umap/locale/zh_CN.json +11 -6
  164. umap/static/umap/locale/zh_TW.Big5.json +11 -6
  165. umap/static/umap/locale/zh_TW.js +19 -14
  166. umap/static/umap/locale/zh_TW.json +19 -14
  167. umap/static/umap/map.css +58 -28
  168. umap/static/umap/unittests/sync.js +0 -57
  169. umap/static/umap/unittests/utils.js +47 -0
  170. umap/static/umap/vars.css +5 -2
  171. umap/static/umap/vendors/photon/leaflet.photon.js +3 -0
  172. umap/sync/payloads.py +3 -2
  173. umap/templates/auth/user_detail.html +1 -1
  174. umap/templates/auth/user_stars.html +1 -1
  175. umap/templates/umap/content.html +17 -12
  176. umap/templates/umap/home.html +7 -5
  177. umap/templates/umap/map_fragment.html +1 -1
  178. umap/templates/umap/map_list.html +20 -13
  179. umap/templates/umap/search.html +7 -3
  180. umap/templates/umap/search_bar.html +13 -11
  181. umap/templates/umap/team_detail.html +1 -1
  182. umap/tests/base.py +2 -1
  183. umap/tests/fixtures/remote_data.umap +55 -0
  184. umap/tests/fixtures/test_upload_data_with_iconurl.umap +122 -0
  185. umap/tests/integration/test_browser.py +1 -3
  186. umap/tests/integration/test_conditional_rules.py +3 -0
  187. umap/tests/integration/test_edit_datalayer.py +2 -7
  188. umap/tests/integration/test_edit_map.py +15 -0
  189. umap/tests/integration/test_edit_polygon.py +1 -2
  190. umap/tests/integration/test_import.py +59 -2
  191. umap/tests/integration/test_optimistic_merge.py +4 -3
  192. umap/tests/integration/test_owned_map.py +0 -1
  193. umap/tests/integration/test_save.py +2 -4
  194. umap/tests/integration/test_undo_redo.py +267 -0
  195. umap/tests/integration/test_websocket_sync.py +78 -11
  196. umap/tests/settings.py +1 -3
  197. umap/tests/test_datalayer_s3.py +1 -0
  198. umap/tests/test_map_views.py +1 -0
  199. umap/tests/test_views.py +34 -0
  200. umap/utils.py +1 -1
  201. umap/views.py +23 -2
  202. {umap_project-2.9.3.dist-info → umap_project-3.0.1.dist-info}/METADATA +13 -12
  203. {umap_project-2.9.3.dist-info → umap_project-3.0.1.dist-info}/RECORD +206 -208
  204. umap/static/umap/js/modules/saving.js +0 -52
  205. umap/static/umap/test/.eslintrc +0 -21
  206. umap/static/umap/test/DataLayer.js +0 -463
  207. umap/static/umap/test/Feature.js +0 -131
  208. umap/static/umap/test/Map.js +0 -37
  209. umap/static/umap/test/Marker.js +0 -126
  210. umap/static/umap/test/Polygon.js +0 -111
  211. umap/static/umap/test/Polyline.js +0 -286
  212. umap/static/umap/test/Util.js +0 -28
  213. umap/static/umap/test/_pre.js +0 -455
  214. umap/static/umap/test/index.html +0 -139
  215. {umap_project-2.9.3.dist-info → umap_project-3.0.1.dist-info}/WHEEL +0 -0
  216. {umap_project-2.9.3.dist-info → umap_project-3.0.1.dist-info}/entry_points.txt +0 -0
  217. {umap_project-2.9.3.dist-info → umap_project-3.0.1.dist-info}/licenses/LICENSE +0 -0
umap/__init__.py CHANGED
@@ -1 +1 @@
1
- VERSION = "2.9.3"
1
+ VERSION = "3.0.1"
@@ -14,6 +14,7 @@ def settings(request):
14
14
  "UMAP_DEMO_SITE": djsettings.UMAP_DEMO_SITE,
15
15
  "UMAP_HOST_INFOS": djsettings.UMAP_HOST_INFOS,
16
16
  "UMAP_ALLOW_EDIT_PROFILE": djsettings.UMAP_ALLOW_EDIT_PROFILE,
17
+ "UMAP_TAGS": djsettings.UMAP_TAGS,
17
18
  }
18
19
 
19
20
 
umap/forms.py CHANGED
@@ -4,7 +4,6 @@ from django.contrib.auth import get_user_model
4
4
  from django.contrib.gis.geos import Point
5
5
  from django.forms.utils import ErrorList
6
6
  from django.template.defaultfilters import slugify
7
- from django.utils.translation import gettext_lazy as _
8
7
 
9
8
  from .models import DataLayer, Map, Team
10
9
 
@@ -92,7 +91,7 @@ class MapSettingsForm(forms.ModelForm):
92
91
  return self.cleaned_data["center"]
93
92
 
94
93
  class Meta:
95
- fields = ("settings", "name", "center", "slug")
94
+ fields = ("settings", "name", "center", "slug", "tags")
96
95
  model = Map
97
96
 
98
97
 
Binary file
@@ -11,6 +11,7 @@
11
11
  # hno2 <hno2@gmx.net>, 2013-2014
12
12
  # Jannis Leidel <jannis@leidel.info>, 2016
13
13
  # gislars, 2024
14
+ # Metzor Metzingen, 2025
14
15
  # pgeo, 2023
15
16
  # Klumbumbus, 2013-2014,2018-2019
16
17
  # YOHAN BONIFACE <yb@enix.org>, 2012
@@ -18,9 +19,9 @@ msgid ""
18
19
  msgstr ""
19
20
  "Project-Id-Version: uMap\n"
20
21
  "Report-Msgid-Bugs-To: \n"
21
- "POT-Creation-Date: 2024-12-24 08:39+0000\n"
22
+ "POT-Creation-Date: 2025-04-04 16:49+0000\n"
22
23
  "PO-Revision-Date: 2013-11-22 14:00+0000\n"
23
- "Last-Translator: jakl, 2024\n"
24
+ "Last-Translator: Metzor Metzingen, 2025\n"
24
25
  "Language-Team: German (http://app.transifex.com/openstreetmap/umap/language/de/)\n"
25
26
  "MIME-Version: 1.0\n"
26
27
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -30,193 +31,283 @@ msgstr ""
30
31
 
31
32
  #: admin.py:16
32
33
  msgid "CSV Export"
33
- msgstr ""
34
+ msgstr "CSV-Export"
34
35
 
35
36
  #: decorators.py:60
36
37
  msgid "This map is not publicly available"
37
- msgstr ""
38
+ msgstr "Diese Karte ist nicht öffentlich einsehbar"
38
39
 
39
- #: middleware.py:13
40
+ #: middleware.py:19
40
41
  msgid "Site is readonly for maintenance"
41
42
  msgstr "Die Seite ist wegen Wartungsarbeiten im Nur-Lesen-Modus."
42
43
 
43
- #: models.py:60 models.py:79
44
+ #: middleware.py:34
45
+ #, python-format
46
+ msgid ""
47
+ "Using “%(name)s” to authenticate is deprecated and will be removed soon. "
48
+ "Please configure another provider below before losing access to your account"
49
+ " and maps. Then, please logout and login again with the new provider."
50
+ msgstr "Anmelden mittels “%(name)s” ist veraltet und wird bald nicht mehr möglich sein. Bitte stelle einen anderen Anbieter ein, um den Zugang zum Benutzerkonto und den Karten nicht zu verlieren. Bitte melde dich dann ab und nutze den neuen Anbieter um dich wieder anzumelden."
51
+
52
+ #: models.py:61 models.py:80
44
53
  msgid "name"
45
54
  msgstr "Name"
46
55
 
47
- #: models.py:62 models.py:475
56
+ #: models.py:63 models.py:493
48
57
  msgid "description"
49
58
  msgstr "Beschreibung"
50
59
 
51
- #: models.py:110
60
+ #: models.py:111
52
61
  msgid "details"
53
62
  msgstr "Details"
54
63
 
55
- #: models.py:111
64
+ #: models.py:112
56
65
  msgid "Link to a page where the licence is detailed."
57
66
  msgstr "Verlinke auf eine Seite mit der Lizenz."
58
67
 
59
- #: models.py:121
68
+ #: models.py:122
60
69
  msgid "URL template using OSM tile format"
61
70
  msgstr "Das URL-Template nutzt das OSM Tile Format"
62
71
 
63
- #: models.py:127
72
+ #: models.py:128
64
73
  msgid "Order of the tilelayers in the edit box"
65
74
  msgstr "Reihenfolge der Karten-Ebenen in der Bearbeiten-Box"
66
75
 
67
- #: models.py:175 models.py:469
76
+ #: models.py:176 models.py:487
68
77
  msgid "Only editable with secret edit link"
69
78
  msgstr "Nur mit geheimem Bearbeitungslink zu bearbeiten"
70
79
 
71
- #: models.py:176 models.py:470
80
+ #: models.py:177 models.py:488
72
81
  msgid "Everyone can edit"
73
82
  msgstr "Jeder kann bearbeiten"
74
83
 
75
- #: models.py:179 models.py:463
84
+ #: models.py:180 models.py:481
76
85
  msgid "Everyone"
77
86
  msgstr "Jeder"
78
87
 
79
- #: models.py:180 models.py:189 models.py:464
88
+ #: models.py:181 models.py:190 models.py:482
80
89
  msgid "Editors and team only"
81
90
  msgstr "Nur Bearbeiter und Team"
82
91
 
83
- #: models.py:181 models.py:465
92
+ #: models.py:182 models.py:483
84
93
  msgid "Owner only"
85
94
  msgstr "Nur Ersteller"
86
95
 
87
- #: models.py:184
96
+ #: models.py:185
88
97
  msgid "Draft (private)"
89
- msgstr ""
98
+ msgstr "Entwurf (privat)"
90
99
 
91
- #: models.py:185
100
+ #: models.py:186
92
101
  msgid "Everyone (public)"
93
102
  msgstr "Jeder (Öffentlich)"
94
103
 
95
- #: models.py:188
104
+ #: models.py:189
96
105
  msgid "Anyone with link"
97
106
  msgstr "Jeder mit Link"
98
107
 
99
- #: models.py:190
108
+ #: models.py:191
100
109
  msgid "Blocked"
101
110
  msgstr "blockiert"
102
111
 
103
- #: models.py:191
112
+ #: models.py:192 models.py:477
104
113
  msgid "Deleted"
105
- msgstr ""
114
+ msgstr "Gelöscht"
106
115
 
107
- #: models.py:194
116
+ #: models.py:195
108
117
  msgid "center"
109
118
  msgstr "Mittelpunkt"
110
119
 
111
- #: models.py:195
120
+ #: models.py:196
112
121
  msgid "zoom"
113
122
  msgstr "Zoom"
114
123
 
115
- #: models.py:197
124
+ #: models.py:198
116
125
  msgid "locate"
117
126
  msgstr "lokalisiere"
118
127
 
119
- #: models.py:197
128
+ #: models.py:198
120
129
  msgid "Locate user on load?"
121
130
  msgstr "Standort des Benutzers beim Seitenaufruf bestimmen?"
122
131
 
123
- #: models.py:201
132
+ #: models.py:202
124
133
  msgid "Choose the map licence."
125
134
  msgstr "Kartenlizenz auswählen"
126
135
 
127
- #: models.py:202
136
+ #: models.py:203
128
137
  msgid "licence"
129
138
  msgstr "Lizenz"
130
139
 
131
- #: models.py:213
140
+ #: models.py:214
132
141
  msgid "owner"
133
142
  msgstr "Ersteller"
134
143
 
135
- #: models.py:217
144
+ #: models.py:218
136
145
  msgid "editors"
137
146
  msgstr "Bearbeiter"
138
147
 
139
- #: models.py:223
148
+ #: models.py:224
140
149
  msgid "team"
141
150
  msgstr "Team"
142
151
 
143
- #: models.py:229 models.py:491
152
+ #: models.py:230 models.py:509
144
153
  msgid "edit status"
145
154
  msgstr "Bearbeitungsstatus"
146
155
 
147
- #: models.py:234
156
+ #: models.py:235 models.py:514
148
157
  msgid "share status"
149
158
  msgstr "Teilen-Status"
150
159
 
151
- #: models.py:237 models.py:486
160
+ #: models.py:238 models.py:504
152
161
  msgid "settings"
153
162
  msgstr "Einstellungen"
154
163
 
155
- #: models.py:402
164
+ #: models.py:410
156
165
  msgid "Clone of"
157
166
  msgstr "Duplikat von"
158
167
 
159
- #: models.py:462 models.py:468
168
+ #: models.py:476 models.py:480 models.py:486
160
169
  msgid "Inherit"
161
170
  msgstr "erben"
162
171
 
163
- #: models.py:481
172
+ #: models.py:499
164
173
  msgid "display on load"
165
174
  msgstr "Beim Seitenaufruf einblenden"
166
175
 
167
- #: models.py:482
176
+ #: models.py:500
168
177
  msgid "Display this layer on load."
169
178
  msgstr "Diese Ebene beim Seitenaufruf einblenden."
170
179
 
180
+ #: settings/base.py:295
181
+ msgid "Art and Culture"
182
+ msgstr ""
183
+
184
+ #: settings/base.py:296
185
+ msgid "Cycling"
186
+ msgstr ""
187
+
188
+ #: settings/base.py:297
189
+ msgid "Business"
190
+ msgstr ""
191
+
192
+ #: settings/base.py:298
193
+ msgid "Environment"
194
+ msgstr ""
195
+
196
+ #: settings/base.py:299
197
+ msgid "Education"
198
+ msgstr ""
199
+
200
+ #: settings/base.py:300
201
+ msgid "Food and Agriculture"
202
+ msgstr ""
203
+
204
+ #: settings/base.py:301
205
+ msgid "Geopolitics"
206
+ msgstr ""
207
+
208
+ #: settings/base.py:302
209
+ msgid "Health"
210
+ msgstr ""
211
+
212
+ #: settings/base.py:303
213
+ msgid "Hiking"
214
+ msgstr ""
215
+
216
+ #: settings/base.py:304
217
+ msgid "History"
218
+ msgstr ""
219
+
220
+ #: settings/base.py:305
221
+ msgid "Public sector"
222
+ msgstr ""
223
+
224
+ #: settings/base.py:306
225
+ msgid "Science"
226
+ msgstr ""
227
+
228
+ #: settings/base.py:307
229
+ msgid "Shopping"
230
+ msgstr ""
231
+
232
+ #: settings/base.py:308
233
+ msgid "Sport and Leisure"
234
+ msgstr ""
235
+
236
+ #: settings/base.py:309
237
+ msgid "Travel"
238
+ msgstr ""
239
+
240
+ #: settings/base.py:310
241
+ msgid "Transports"
242
+ msgstr ""
243
+
244
+ #: settings/base.py:311
245
+ msgid "Tourism"
246
+ msgstr ""
247
+
171
248
  #: templates/403.html:8
172
249
  msgid ""
173
250
  "<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
174
251
  "target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
175
252
  " permissions."
176
- msgstr ""
253
+ msgstr "<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" target=\"_blank\">Finde hier die Dokumentation</a>wie Berechtigungen der Karte verwaltet werden können."
177
254
 
178
255
  #: templates/403.html:10 templates/404.html:8
179
256
  msgid "← Go to the homepage"
180
- msgstr ""
257
+ msgstr "← Gehe zur Homepage"
181
258
 
182
259
  #: templates/404.html:7
183
260
  msgid "404 Page Not Found"
184
- msgstr ""
261
+ msgstr "404 Seite nicht gefunden"
185
262
 
186
- #: templates/auth/user_detail.html:8
263
+ #: templates/auth/user_detail.html:6
264
+ #, python-format
265
+ msgid "%(current_user)s’s maps"
266
+ msgstr "Karten von %(current_user)s"
267
+
268
+ #: templates/auth/user_detail.html:12
187
269
  #, python-format
188
270
  msgid "Browse %(current_user)s's maps"
189
271
  msgstr "Schaue dir %(current_user)s's Karten an"
190
272
 
191
- #: templates/auth/user_detail.html:17
273
+ #: templates/auth/user_detail.html:21
192
274
  #, python-format
193
275
  msgid "%(current_user)s has no maps."
194
276
  msgstr "%(current_user)s hat keine Karten."
195
277
 
196
- #: templates/auth/user_form.html:21 templates/umap/team_form.html:21
278
+ #: templates/auth/user_form.html:6
279
+ msgid "My Profile"
280
+ msgstr "Mein Profil"
281
+
282
+ #: templates/auth/user_form.html:24 templates/umap/team_form.html:25
197
283
  msgid "Save"
198
284
  msgstr "Speichern"
199
285
 
200
- #: templates/auth/user_form.html:27
286
+ #: templates/auth/user_form.html:30
201
287
  msgid "Your current providers"
202
288
  msgstr "Deine aktuellen Anbieter"
203
289
 
204
- #: templates/auth/user_form.html:39
290
+ #: templates/auth/user_form.html:44
205
291
  msgid "Connect to another provider"
206
292
  msgstr "Füge einen weiteren Anbieter hinzu"
207
293
 
208
- #: templates/auth/user_form.html:42
294
+ #: templates/auth/user_form.html:47
209
295
  msgid ""
210
296
  "It's a good habit to connect your account to more than one provider, in case"
211
297
  " one provider becomes unavailable, temporarily or even permanently."
212
298
  msgstr "Es ist eine gute Praxis, das Konto mit mehr als einem Anbieter zu verbinden, für den Fall, dass ein Anbieter vorübergehend oder sogar dauerhaft nicht mehr verfügbar ist."
213
299
 
214
- #: templates/auth/user_stars.html:8
300
+ #: templates/auth/user_stars.html:6
301
+ #, python-format
302
+ msgid "%(current_user)s’s starred maps"
303
+ msgstr "Schaue dir die favorisierten Karten von %(current_user)s an"
304
+
305
+ #: templates/auth/user_stars.html:12
215
306
  #, python-format
216
307
  msgid "Browse %(current_user)s's starred maps"
217
308
  msgstr "Schaue dir %(current_user)s's favorisierten Karten an"
218
309
 
219
- #: templates/auth/user_stars.html:17
310
+ #: templates/auth/user_stars.html:21
220
311
  #, python-format
221
312
  msgid "%(current_user)s has no starred maps yet."
222
313
  msgstr "%(current_user)s hat keine favorisierten Karten."
@@ -233,11 +324,11 @@ msgstr "Anmeldung"
233
324
 
234
325
  #: templates/registration/login.html:22
235
326
  msgid "To save and easily find your maps, identify yourself."
236
- msgstr ""
327
+ msgstr "Um deine Karten einfach zu speichern und wieder zu finden, merke dich an."
237
328
 
238
329
  #: templates/registration/login.html:25
239
330
  msgid "Please log in with your account:"
240
- msgstr ""
331
+ msgstr "Bitte melden Sie sich mit Ihrem Konto an"
241
332
 
242
333
  #: templates/registration/login.html:42
243
334
  msgid "Username"
@@ -249,7 +340,11 @@ msgstr "Passwort"
249
340
 
250
341
  #: templates/registration/login.html:52
251
342
  msgid "Please choose a provider:"
252
- msgstr ""
343
+ msgstr "Bitte wähle einen Anbieter"
344
+
345
+ #: templates/umap/about.html:5 templates/umap/navigation.html:22
346
+ msgid "About"
347
+ msgstr "Über"
253
348
 
254
349
  #: templates/umap/about_summary.html:12
255
350
  #, python-format
@@ -402,7 +497,7 @@ msgstr "Meine Teams"
402
497
  msgid "Map of the uMaps"
403
498
  msgstr "Karte aller „uMap“-Karten"
404
499
 
405
- #: templates/umap/home.html:24
500
+ #: templates/umap/home.html:25
406
501
  msgid "Get inspired, browse maps"
407
502
  msgstr "Lass dich inspirieren, schau dir diese Karten an."
408
503
 
@@ -410,15 +505,19 @@ msgstr "Lass dich inspirieren, schau dir diese Karten an."
410
505
  msgid "You are logged in. Continuing..."
411
506
  msgstr "Du bist eingeloggt. Weiterleitung..."
412
507
 
413
- #: templates/umap/map_list.html:11 views.py:437
508
+ #: templates/umap/map_list.html:18 views.py:444
414
509
  msgid "by"
415
510
  msgstr "von"
416
511
 
417
- #: templates/umap/map_list.html:20
512
+ #: templates/umap/map_list.html:22
513
+ msgid "See the map"
514
+ msgstr ""
515
+
516
+ #: templates/umap/map_list.html:28
418
517
  msgid "More"
419
518
  msgstr "Mehr"
420
519
 
421
- #: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
520
+ #: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
422
521
  msgid "Name"
423
522
  msgstr "Name"
424
523
 
@@ -442,7 +541,7 @@ msgstr "zuletzt gespeichert"
442
541
  msgid "Owner"
443
542
  msgstr "Ersteller"
444
543
 
445
- #: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
544
+ #: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
446
545
  msgid "Actions"
447
546
  msgstr "Aktionen"
448
547
 
@@ -455,7 +554,7 @@ msgid "Share"
455
554
  msgstr "Teilen"
456
555
 
457
556
  #: templates/umap/map_table.html:78 templates/umap/map_table.html:80
458
- #: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
557
+ #: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
459
558
  msgid "Edit"
460
559
  msgstr "Bearbeiten"
461
560
 
@@ -518,10 +617,6 @@ msgstr "Einloggen"
518
617
  msgid "Sign in"
519
618
  msgstr "Anmelden"
520
619
 
521
- #: templates/umap/navigation.html:22
522
- msgid "About"
523
- msgstr "Über"
524
-
525
620
  #: templates/umap/navigation.html:30
526
621
  msgid "Change password"
527
622
  msgstr "Passwort ändern"
@@ -530,52 +625,58 @@ msgstr "Passwort ändern"
530
625
  msgid "Log out"
531
626
  msgstr "Ausloggen"
532
627
 
533
- #: templates/umap/password_change.html:7
628
+ #: templates/umap/password_change.html:6
629
+ #: templates/umap/password_change.html:11
534
630
  msgid "Password change"
535
631
  msgstr "Passwortänderung"
536
632
 
537
- #: templates/umap/password_change.html:10
633
+ #: templates/umap/password_change.html:14
538
634
  msgid ""
539
635
  "Please enter your old password, for security's sake, and then enter your new"
540
636
  " password twice so we can verify you typed it in correctly."
541
637
  msgstr "Bitte gib aus Sicherheitsgründen dein altes Passwort ein und dann zweimal dein neues, um sicherzustellen, dass du es korrekt eingegeben hast."
542
638
 
543
- #: templates/umap/password_change.html:17
639
+ #: templates/umap/password_change.html:21
544
640
  msgid "Old password"
545
641
  msgstr "Altes Passwort"
546
642
 
547
- #: templates/umap/password_change.html:22
643
+ #: templates/umap/password_change.html:26
548
644
  msgid "New password"
549
645
  msgstr "Neues Passwort"
550
646
 
551
- #: templates/umap/password_change.html:26
647
+ #: templates/umap/password_change.html:30
552
648
  msgid "New password confirmation"
553
649
  msgstr "Neues Passwort bestätigen"
554
650
 
555
- #: templates/umap/password_change.html:27
651
+ #: templates/umap/password_change.html:31
556
652
  msgid "Change my password"
557
653
  msgstr "Mein Passwort ändern"
558
654
 
559
- #: templates/umap/password_change_done.html:7
655
+ #: templates/umap/password_change_done.html:6
656
+ #: templates/umap/password_change_done.html:11
560
657
  msgid "Password change successful"
561
658
  msgstr "Passwortänderung erfolgreich"
562
659
 
563
- #: templates/umap/password_change_done.html:10
660
+ #: templates/umap/password_change_done.html:14
564
661
  msgid "Your password was changed."
565
662
  msgstr "Ihr Passwort wurde geändert."
566
663
 
567
- #: templates/umap/search.html:15
664
+ #: templates/umap/search.html:6
665
+ msgid "Explore maps"
666
+ msgstr "Karten erkunden"
667
+
668
+ #: templates/umap/search.html:19
568
669
  #, python-format
569
670
  msgid "%(count)s map found:"
570
671
  msgid_plural "%(count)s maps found:"
571
672
  msgstr[0] "%(count)s Karte gefunden:"
572
673
  msgstr[1] "%(count)s Karten gefunden:"
573
674
 
574
- #: templates/umap/search.html:24
675
+ #: templates/umap/search.html:30
575
676
  msgid "No map found."
576
677
  msgstr "Keine Karte gefunden."
577
678
 
578
- #: templates/umap/search.html:29
679
+ #: templates/umap/search.html:35
579
680
  msgid "Latest created maps"
580
681
  msgstr "Zuletzt erstellte Karten"
581
682
 
@@ -583,25 +684,42 @@ msgstr "Zuletzt erstellte Karten"
583
684
  msgid "Search maps"
584
685
  msgstr "Karten suchen"
585
686
 
586
- #: templates/umap/search_bar.html:15
687
+ #: templates/umap/search_bar.html:14
688
+ msgid "Any category"
689
+ msgstr ""
690
+
691
+ #: templates/umap/search_bar.html:19
587
692
  msgid "Search"
588
693
  msgstr "Suchen"
589
694
 
590
- #: templates/umap/team_detail.html:10
695
+ #: templates/umap/team_confirm_delete.html:6
696
+ msgid "Team deletion"
697
+ msgstr "Team löschen"
698
+
699
+ #: templates/umap/team_detail.html:6
700
+ #, python-format
701
+ msgid "%(current_team)s’s maps"
702
+ msgstr "Karten von %(current_team)s"
703
+
704
+ #: templates/umap/team_detail.html:14
591
705
  #, python-format
592
706
  msgid "Browse %(current_team)s's maps"
593
707
  msgstr "Schaue dir %(current_team)s's Karten an"
594
708
 
595
- #: templates/umap/team_detail.html:22
709
+ #: templates/umap/team_detail.html:26
596
710
  #, python-format
597
711
  msgid "%(current_team)s has no public maps."
598
712
  msgstr "%(current_team)s hat keine öffentlichen Karten.."
599
713
 
600
- #: templates/umap/team_form.html:24
714
+ #: templates/umap/team_form.html:6
715
+ msgid "Create or edit a team"
716
+ msgstr "Team erstellen oder bearbeiten"
717
+
718
+ #: templates/umap/team_form.html:28
601
719
  msgid "Delete this team"
602
720
  msgstr "Dieses Team löschen"
603
721
 
604
- #: templates/umap/team_form.html:47
722
+ #: templates/umap/team_form.html:51
605
723
  msgid "Add user"
606
724
  msgstr "Benutzer hinzufügen"
607
725
 
@@ -622,78 +740,82 @@ msgstr "Herunterladen von %(count)s Karten"
622
740
  msgid "You have no map yet."
623
741
  msgstr "Du hast noch keine Karte."
624
742
 
625
- #: templates/umap/user_teams.html:17
743
+ #: templates/umap/user_teams.html:6
744
+ msgid "My Teams"
745
+ msgstr "Meine Teams"
746
+
747
+ #: templates/umap/user_teams.html:21
626
748
  msgid "Users"
627
749
  msgstr "Benutzer"
628
750
 
629
- #: templates/umap/user_teams.html:48
751
+ #: templates/umap/user_teams.html:52
630
752
  msgid "New team"
631
753
  msgstr "Neues Team"
632
754
 
633
- #: views.py:234
755
+ #: views.py:235
634
756
  msgid "Cannot delete a team with more than one member"
635
757
  msgstr "Teams mit mehr als einem Mitglied können nicht gelöscht werden"
636
758
 
637
- #: views.py:238
759
+ #: views.py:239
638
760
  #, python-format
639
761
  msgid "Team “%(name)s” has been deleted"
640
762
  msgstr "Team “%(name)s” wurde gelöscht"
641
763
 
642
- #: views.py:442
764
+ #: views.py:449
643
765
  msgid "View the map"
644
766
  msgstr "Diese Karte anzeigen"
645
767
 
646
- #: views.py:825
768
+ #: views.py:845
647
769
  msgid "See full screen"
648
770
  msgstr "Vollbildanzeige"
649
771
 
650
- #: views.py:968
772
+ #: views.py:988
651
773
  msgid "Map editors updated with success!"
652
774
  msgstr "Bearbeiter erfolgreich geändert"
653
775
 
654
- #: views.py:1004
776
+ #: views.py:1024
655
777
  #, python-format
656
778
  msgid "The uMap edit link for your map: %(map_name)s"
657
779
  msgstr "Der uMap-Bearbeitungslink für Deine Karte: %(map_name)s"
658
780
 
659
- #: views.py:1007
781
+ #: views.py:1027
660
782
  #, python-format
661
783
  msgid "Here is your secret edit link: %(link)s"
662
784
  msgstr "Dies ist der geheime Bearbeitungslink: %(link)s"
663
785
 
664
- #: views.py:1014
786
+ #: views.py:1034
665
787
  #, python-format
666
788
  msgid "Can't send email to %(email)s"
667
789
  msgstr "E-Mail kann nicht gesendet werden an %(email)s"
668
790
 
669
- #: views.py:1017
791
+ #: views.py:1037
670
792
  #, python-format
671
793
  msgid "Email sent to %(email)s"
672
794
  msgstr "Email gesendet an %(email)s"
673
795
 
674
- #: views.py:1028
796
+ #: views.py:1048
675
797
  msgid "Only its owner can delete the map."
676
798
  msgstr "Nur der Ersteller kann die Karte löschen."
677
799
 
678
- #: views.py:1031
800
+ #: views.py:1051
679
801
  msgid "Map successfully deleted."
680
802
  msgstr "Karte erfolgreich gelöscht."
681
803
 
682
- #: views.py:1057
804
+ #: views.py:1077
683
805
  #, python-format
684
806
  msgid ""
685
807
  "Your map has been cloned! If you want to edit this map from another "
686
808
  "computer, please use this link: %(anonymous_url)s"
687
809
  msgstr "Deine Karte wurde kopiert! Wenn du diese Karte von einem anderen Computer aus bearbeiten möchtest, benutze bitte diesen Link: %(anonymous_url)s"
688
810
 
689
- #: views.py:1062
811
+ #: views.py:1082
690
812
  msgid "Congratulations, your map has been cloned!"
691
813
  msgstr "Glückwunsch, deine Karte wurde kopiert!"
692
814
 
693
- #: views.py:1313
815
+ #: views.py:1336
694
816
  msgid "Layer successfully deleted."
695
817
  msgstr "Ebene erfolgreich gelöscht."
696
818
 
697
- #: views.py:1335
819
+ #: views.py:1358
698
820
  msgid "Permissions updated with success!"
699
821
  msgstr "Berechtigungen erfolgreich aktualisiert!"