umap-project 3.4.0b1__py3-none-any.whl → 3.4.2__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.
- umap/__init__.py +1 -1
- umap/context_processors.py +1 -1
- umap/locale/da/LC_MESSAGES/django.mo +0 -0
- umap/locale/da/LC_MESSAGES/django.po +20 -16
- umap/locale/en/LC_MESSAGES/django.po +18 -14
- umap/locale/es/LC_MESSAGES/django.mo +0 -0
- umap/locale/es/LC_MESSAGES/django.po +20 -16
- umap/locale/fr/LC_MESSAGES/django.mo +0 -0
- umap/locale/fr/LC_MESSAGES/django.po +18 -14
- umap/locale/pl/LC_MESSAGES/django.mo +0 -0
- umap/locale/pl/LC_MESSAGES/django.po +72 -71
- umap/migrations/0018_datalayer_uuid.py +1 -1
- umap/models.py +7 -3
- umap/settings/local.py.sample +1 -1
- umap/static/umap/content.css +0 -3
- umap/static/umap/css/bar.css +9 -6
- umap/static/umap/css/form.css +27 -11
- umap/static/umap/css/popup.css +1 -0
- umap/static/umap/js/components/base.js +1 -1
- umap/static/umap/js/components/copiable.js +47 -0
- umap/static/umap/js/modules/autocomplete.js +31 -58
- umap/static/umap/js/modules/browser.js +8 -8
- umap/static/umap/js/modules/data/features.js +33 -36
- umap/static/umap/js/modules/data/fields.js +446 -0
- umap/static/umap/js/modules/data/layer.js +76 -93
- umap/static/umap/js/modules/domutils.js +24 -4
- umap/static/umap/js/modules/filters.js +20 -47
- umap/static/umap/js/modules/form/fields.js +4 -4
- umap/static/umap/js/modules/formatter.js +9 -1
- umap/static/umap/js/modules/help.js +13 -14
- umap/static/umap/js/modules/i18n.js +1 -1
- umap/static/umap/js/modules/importer.js +18 -27
- umap/static/umap/js/modules/importers/banfr.js +0 -1
- umap/static/umap/js/modules/importers/cadastrefr.js +19 -19
- umap/static/umap/js/modules/importers/communesfr.js +7 -8
- umap/static/umap/js/modules/importers/datasets.js +14 -14
- umap/static/umap/js/modules/importers/geodatamine.js +20 -22
- umap/static/umap/js/modules/importers/opendata.js +10 -0
- umap/static/umap/js/modules/importers/overpass.js +19 -18
- umap/static/umap/js/modules/managers.js +1 -265
- umap/static/umap/js/modules/permissions.js +5 -3
- umap/static/umap/js/modules/rendering/controls.js +6 -4
- umap/static/umap/js/modules/rendering/icon.js +5 -9
- umap/static/umap/js/modules/rendering/layers/base.js +1 -1
- umap/static/umap/js/modules/rendering/layers/classified.js +16 -11
- umap/static/umap/js/modules/rendering/layers/heat.js +27 -21
- umap/static/umap/js/modules/rendering/map.js +22 -22
- umap/static/umap/js/modules/rendering/popup.js +6 -3
- umap/static/umap/js/modules/rendering/template.js +31 -37
- umap/static/umap/js/modules/rendering/ui.js +1 -2
- umap/static/umap/js/modules/rules.js +34 -41
- umap/static/umap/js/modules/schema.js +0 -7
- umap/static/umap/js/modules/share.js +36 -69
- umap/static/umap/js/modules/slideshow.js +3 -3
- umap/static/umap/js/modules/tableeditor.js +0 -1
- umap/static/umap/js/modules/ui/bar.js +51 -32
- umap/static/umap/js/modules/ui/dialog.js +10 -1
- umap/static/umap/js/modules/ui/panel.js +28 -23
- umap/static/umap/js/modules/ui/tooltip.js +1 -1
- umap/static/umap/js/modules/umap.js +84 -84
- umap/static/umap/js/modules/utils.js +13 -4
- umap/static/umap/js/umap.controls.js +33 -14
- umap/static/umap/locale/am_ET.js +19 -8
- umap/static/umap/locale/am_ET.json +19 -8
- umap/static/umap/locale/ar.js +19 -8
- umap/static/umap/locale/ar.json +19 -8
- umap/static/umap/locale/ast.js +19 -8
- umap/static/umap/locale/ast.json +19 -8
- umap/static/umap/locale/bg.js +19 -8
- umap/static/umap/locale/bg.json +19 -8
- umap/static/umap/locale/br.js +20 -9
- umap/static/umap/locale/br.json +20 -9
- umap/static/umap/locale/ca.js +19 -8
- umap/static/umap/locale/ca.json +19 -8
- umap/static/umap/locale/cs_CZ.js +20 -9
- umap/static/umap/locale/cs_CZ.json +20 -9
- umap/static/umap/locale/da.js +54 -43
- umap/static/umap/locale/da.json +54 -43
- umap/static/umap/locale/de.js +44 -33
- umap/static/umap/locale/de.json +44 -33
- umap/static/umap/locale/el.js +20 -9
- umap/static/umap/locale/el.json +20 -9
- umap/static/umap/locale/en.js +20 -9
- umap/static/umap/locale/en.json +20 -9
- umap/static/umap/locale/en_US.json +19 -8
- umap/static/umap/locale/es.js +55 -44
- umap/static/umap/locale/es.json +55 -44
- umap/static/umap/locale/et.js +20 -9
- umap/static/umap/locale/et.json +20 -9
- umap/static/umap/locale/eu.js +25 -14
- umap/static/umap/locale/eu.json +25 -14
- umap/static/umap/locale/fa_IR.js +20 -9
- umap/static/umap/locale/fa_IR.json +20 -9
- umap/static/umap/locale/fi.js +19 -8
- umap/static/umap/locale/fi.json +19 -8
- umap/static/umap/locale/fr.js +21 -10
- umap/static/umap/locale/fr.json +21 -10
- umap/static/umap/locale/gl.js +147 -136
- umap/static/umap/locale/gl.json +147 -136
- umap/static/umap/locale/he.js +19 -8
- umap/static/umap/locale/he.json +19 -8
- umap/static/umap/locale/hr.js +19 -8
- umap/static/umap/locale/hr.json +19 -8
- umap/static/umap/locale/hu.js +62 -51
- umap/static/umap/locale/hu.json +62 -51
- umap/static/umap/locale/id.js +19 -8
- umap/static/umap/locale/id.json +19 -8
- umap/static/umap/locale/is.js +20 -9
- umap/static/umap/locale/is.json +20 -9
- umap/static/umap/locale/it.js +20 -9
- umap/static/umap/locale/it.json +20 -9
- umap/static/umap/locale/ja.js +19 -8
- umap/static/umap/locale/ja.json +19 -8
- umap/static/umap/locale/ko.js +19 -8
- umap/static/umap/locale/ko.json +19 -8
- umap/static/umap/locale/lt.js +19 -8
- umap/static/umap/locale/lt.json +19 -8
- umap/static/umap/locale/ms.js +20 -9
- umap/static/umap/locale/ms.json +20 -9
- umap/static/umap/locale/nl.js +20 -9
- umap/static/umap/locale/nl.json +20 -9
- umap/static/umap/locale/no.js +19 -8
- umap/static/umap/locale/no.json +19 -8
- umap/static/umap/locale/pl.js +56 -45
- umap/static/umap/locale/pl.json +56 -45
- umap/static/umap/locale/pl_PL.json +19 -8
- umap/static/umap/locale/pt.js +20 -9
- umap/static/umap/locale/pt.json +20 -9
- umap/static/umap/locale/pt_BR.js +19 -8
- umap/static/umap/locale/pt_BR.json +19 -8
- umap/static/umap/locale/pt_PT.js +19 -8
- umap/static/umap/locale/pt_PT.json +19 -8
- umap/static/umap/locale/ro.js +19 -8
- umap/static/umap/locale/ro.json +19 -8
- umap/static/umap/locale/ru.js +19 -8
- umap/static/umap/locale/ru.json +19 -8
- umap/static/umap/locale/si.js +1 -1
- umap/static/umap/locale/si.json +1 -1
- umap/static/umap/locale/sk_SK.js +19 -8
- umap/static/umap/locale/sk_SK.json +19 -8
- umap/static/umap/locale/sl.js +19 -8
- umap/static/umap/locale/sl.json +19 -8
- umap/static/umap/locale/sr.js +19 -8
- umap/static/umap/locale/sr.json +19 -8
- umap/static/umap/locale/sv.js +19 -8
- umap/static/umap/locale/sv.json +19 -8
- umap/static/umap/locale/th_TH.js +19 -8
- umap/static/umap/locale/th_TH.json +19 -8
- umap/static/umap/locale/tr.js +19 -8
- umap/static/umap/locale/tr.json +19 -8
- umap/static/umap/locale/uk_UA.js +19 -8
- umap/static/umap/locale/uk_UA.json +19 -8
- umap/static/umap/locale/vi.js +19 -8
- umap/static/umap/locale/vi.json +19 -8
- umap/static/umap/locale/vi_VN.json +19 -8
- umap/static/umap/locale/zh.js +19 -8
- umap/static/umap/locale/zh.json +19 -8
- umap/static/umap/locale/zh_CN.json +19 -8
- umap/static/umap/locale/zh_TW.Big5.json +19 -8
- umap/static/umap/locale/zh_TW.js +53 -42
- umap/static/umap/locale/zh_TW.json +53 -42
- umap/static/umap/map.css +8 -7
- umap/static/umap/unittests/utils.js +7 -7
- umap/templates/umap/content_footer.html +1 -0
- umap/templates/umap/css.html +0 -2
- umap/templates/umap/js.html +1 -3
- umap/templates/umap/login_popup_end.html +2 -2
- umap/tests/integration/conftest.py +11 -2
- umap/tests/integration/test_anonymous_owned_map.py +2 -2
- umap/tests/integration/test_conditional_rules.py +107 -52
- umap/tests/integration/test_draw_polygon.py +4 -0
- umap/tests/integration/test_draw_polyline.py +11 -0
- umap/tests/integration/test_edit_datalayer.py +1 -1
- umap/tests/integration/test_fields.py +19 -0
- umap/tests/integration/test_filters.py +6 -7
- umap/tests/integration/test_iframe.py +1 -1
- umap/tests/integration/test_import.py +23 -0
- umap/tests/integration/test_map.py +2 -2
- umap/tests/integration/test_map_preview.py +1 -1
- umap/tests/integration/test_owned_map.py +2 -2
- umap/tests/integration/test_picto.py +1 -1
- umap/tests/integration/test_popup.py +31 -0
- umap/tests/integration/test_remote_data.py +4 -4
- umap/tests/integration/test_save.py +1 -1
- umap/tests/integration/test_search.py +41 -0
- umap/tests/integration/test_share.py +2 -2
- umap/tests/integration/test_team.py +1 -1
- umap/tests/integration/test_websocket_sync.py +69 -20
- umap/tests/test_dashboard.py +1 -1
- umap/tests/test_statics.py +2 -2
- umap/tests/test_utils.py +4 -1
- umap/tests/test_views.py +1 -1
- umap/utils.py +3 -2
- {umap_project-3.4.0b1.dist-info → umap_project-3.4.2.dist-info}/METADATA +17 -17
- {umap_project-3.4.0b1.dist-info → umap_project-3.4.2.dist-info}/RECORD +198 -199
- umap/static/umap/js/umap.core.js +0 -93
- umap/static/umap/vendors/editinosm/Leaflet.EditInOSM.css +0 -46
- umap/static/umap/vendors/editinosm/Leaflet.EditInOSM.js +0 -240
- umap/static/umap/vendors/editinosm/edit-in-osm.png +0 -0
- {umap_project-3.4.0b1.dist-info → umap_project-3.4.2.dist-info}/WHEEL +0 -0
- {umap_project-3.4.0b1.dist-info → umap_project-3.4.2.dist-info}/entry_points.txt +0 -0
- {umap_project-3.4.0b1.dist-info → umap_project-3.4.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -11,15 +11,16 @@
|
|
|
11
11
|
# Maciej Kowalik <m.kowalik.79@gmail.com>, 2016
|
|
12
12
|
# maro21 OSM, 2020-2021
|
|
13
13
|
# Piotr Strebski <strebski@gmail.com>, 2020
|
|
14
|
+
# Piotr Strebski <strebski@gmail.com>, 2020
|
|
14
15
|
# Teiron, 2016
|
|
15
16
|
# Tomasz Nycz <tomasz.merkato@gmail.com>, 2018
|
|
16
17
|
msgid ""
|
|
17
18
|
msgstr ""
|
|
18
19
|
"Project-Id-Version: uMap\n"
|
|
19
20
|
"Report-Msgid-Bugs-To: \n"
|
|
20
|
-
"POT-Creation-Date: 2025-10-
|
|
21
|
+
"POT-Creation-Date: 2025-10-17 06:00+0000\n"
|
|
21
22
|
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
|
22
|
-
"Last-Translator:
|
|
23
|
+
"Last-Translator: Tomasz Nycz <tomasz.merkato@gmail.com>, 2018\n"
|
|
23
24
|
"Language-Team: Polish (http://app.transifex.com/openstreetmap/umap/language/pl/)\n"
|
|
24
25
|
"MIME-Version: 1.0\n"
|
|
25
26
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
@@ -33,7 +34,7 @@ msgstr ""
|
|
|
33
34
|
|
|
34
35
|
#: decorators.py:60
|
|
35
36
|
msgid "This map is not publicly available"
|
|
36
|
-
msgstr ""
|
|
37
|
+
msgstr "Ta mapa nie jest dostępna publicznie"
|
|
37
38
|
|
|
38
39
|
#: middleware.py:19
|
|
39
40
|
msgid "Site is readonly for maintenance"
|
|
@@ -51,7 +52,7 @@ msgstr ""
|
|
|
51
52
|
msgid "name"
|
|
52
53
|
msgstr "nazwa"
|
|
53
54
|
|
|
54
|
-
#: models.py:63 models.py:
|
|
55
|
+
#: models.py:63 models.py:507
|
|
55
56
|
msgid "description"
|
|
56
57
|
msgstr "opis"
|
|
57
58
|
|
|
@@ -71,29 +72,29 @@ msgstr "Szablon URL używający formatu kafelków OSM"
|
|
|
71
72
|
msgid "Order of the tilelayers in the edit box"
|
|
72
73
|
msgstr "Kolejność podkładów w oknie edycji"
|
|
73
74
|
|
|
74
|
-
#: models.py:176 models.py:
|
|
75
|
+
#: models.py:176 models.py:501
|
|
75
76
|
msgid "Only editable with secret edit link"
|
|
76
77
|
msgstr "Edycja możliwa tylko z sekretnym odnośnikiem"
|
|
77
78
|
|
|
78
|
-
#: models.py:177 models.py:
|
|
79
|
+
#: models.py:177 models.py:502
|
|
79
80
|
msgid "Everyone can edit"
|
|
80
81
|
msgstr "Wszyscy mogą edytować"
|
|
81
82
|
|
|
82
|
-
#: models.py:180 models.py:
|
|
83
|
+
#: models.py:180 models.py:495
|
|
83
84
|
msgid "Everyone"
|
|
84
85
|
msgstr "Każdy"
|
|
85
86
|
|
|
86
|
-
#: models.py:181 models.py:190 models.py:
|
|
87
|
+
#: models.py:181 models.py:190 models.py:496
|
|
87
88
|
msgid "Editors and team only"
|
|
88
|
-
msgstr ""
|
|
89
|
+
msgstr "Tylko edytorzy i zespół"
|
|
89
90
|
|
|
90
|
-
#: models.py:182 models.py:
|
|
91
|
+
#: models.py:182 models.py:497
|
|
91
92
|
msgid "Owner only"
|
|
92
93
|
msgstr "Tylko właściciel"
|
|
93
94
|
|
|
94
95
|
#: models.py:185
|
|
95
96
|
msgid "Draft (private)"
|
|
96
|
-
msgstr ""
|
|
97
|
+
msgstr "Szkic (prywatnie)"
|
|
97
98
|
|
|
98
99
|
#: models.py:186
|
|
99
100
|
msgid "Everyone (public)"
|
|
@@ -107,9 +108,9 @@ msgstr "Każdy z linkiem"
|
|
|
107
108
|
msgid "Blocked"
|
|
108
109
|
msgstr "Zablokowane"
|
|
109
110
|
|
|
110
|
-
#: models.py:192 models.py:
|
|
111
|
+
#: models.py:192 models.py:491
|
|
111
112
|
msgid "Deleted"
|
|
112
|
-
msgstr ""
|
|
113
|
+
msgstr "Usunięto"
|
|
113
114
|
|
|
114
115
|
#: models.py:195
|
|
115
116
|
msgid "center"
|
|
@@ -145,127 +146,127 @@ msgstr "edytorzy"
|
|
|
145
146
|
|
|
146
147
|
#: models.py:224
|
|
147
148
|
msgid "team"
|
|
148
|
-
msgstr ""
|
|
149
|
+
msgstr "zespół"
|
|
149
150
|
|
|
150
|
-
#: models.py:230 models.py:
|
|
151
|
+
#: models.py:230 models.py:523
|
|
151
152
|
msgid "edit status"
|
|
152
153
|
msgstr "status edycji"
|
|
153
154
|
|
|
154
|
-
#: models.py:235 models.py:
|
|
155
|
+
#: models.py:235 models.py:528
|
|
155
156
|
msgid "share status"
|
|
156
157
|
msgstr "udostępnij status"
|
|
157
158
|
|
|
158
|
-
#: models.py:238 models.py:
|
|
159
|
+
#: models.py:238 models.py:518
|
|
159
160
|
msgid "settings"
|
|
160
161
|
msgstr "ustawienia"
|
|
161
162
|
|
|
162
163
|
#: models.py:243
|
|
163
164
|
msgid "save as template"
|
|
164
|
-
msgstr ""
|
|
165
|
+
msgstr "zapisz jako szablon"
|
|
165
166
|
|
|
166
167
|
#: models.py:244
|
|
167
168
|
msgid "This map is a template map."
|
|
168
|
-
msgstr ""
|
|
169
|
+
msgstr "Ta mapa jest szablonem"
|
|
169
170
|
|
|
170
171
|
#: models.py:420
|
|
171
172
|
msgid "Clone of"
|
|
172
173
|
msgstr "Kopia"
|
|
173
174
|
|
|
174
|
-
#: models.py:
|
|
175
|
+
#: models.py:490 models.py:494 models.py:500
|
|
175
176
|
msgid "Inherit"
|
|
176
177
|
msgstr "Odziedzicz"
|
|
177
178
|
|
|
178
|
-
#: models.py:
|
|
179
|
+
#: models.py:513
|
|
179
180
|
msgid "display on load"
|
|
180
181
|
msgstr "wyświetl po załadowaniu"
|
|
181
182
|
|
|
182
|
-
#: models.py:
|
|
183
|
+
#: models.py:514
|
|
183
184
|
msgid "Display this layer on load."
|
|
184
185
|
msgstr "Wyświetl tę warstwę po załadowaniu."
|
|
185
186
|
|
|
186
187
|
#: settings/base.py:283
|
|
187
188
|
msgid "uMap user documentation"
|
|
188
|
-
msgstr ""
|
|
189
|
+
msgstr "Dokumentacja użytkownika uMap"
|
|
189
190
|
|
|
190
191
|
#: settings/base.py:288
|
|
191
192
|
msgid "Video tutorials"
|
|
192
|
-
msgstr ""
|
|
193
|
+
msgstr "Poradniki wideo"
|
|
193
194
|
|
|
194
195
|
#: settings/base.py:293
|
|
195
196
|
msgid "OpenStreetMap.org forum"
|
|
196
|
-
msgstr ""
|
|
197
|
+
msgstr "Forum OpenStreetMap.org"
|
|
197
198
|
|
|
198
199
|
#: settings/base.py:298
|
|
199
200
|
msgid "OpenStreetMap France forum"
|
|
200
|
-
msgstr ""
|
|
201
|
+
msgstr "Forum OpenStreetMap France"
|
|
201
202
|
|
|
202
203
|
#: settings/base.py:318
|
|
203
204
|
msgid "Art and Culture"
|
|
204
|
-
msgstr ""
|
|
205
|
+
msgstr "Sztuka i Kultura"
|
|
205
206
|
|
|
206
207
|
#: settings/base.py:319
|
|
207
208
|
msgid "Cycling"
|
|
208
|
-
msgstr ""
|
|
209
|
+
msgstr "Kolarstwo"
|
|
209
210
|
|
|
210
211
|
#: settings/base.py:320
|
|
211
212
|
msgid "Business"
|
|
212
|
-
msgstr ""
|
|
213
|
+
msgstr "Biznes"
|
|
213
214
|
|
|
214
215
|
#: settings/base.py:321
|
|
215
216
|
msgid "Environment"
|
|
216
|
-
msgstr ""
|
|
217
|
+
msgstr "Środowisko"
|
|
217
218
|
|
|
218
219
|
#: settings/base.py:322
|
|
219
220
|
msgid "Education"
|
|
220
|
-
msgstr ""
|
|
221
|
+
msgstr "Edukacja"
|
|
221
222
|
|
|
222
223
|
#: settings/base.py:323
|
|
223
224
|
msgid "Food and Agriculture"
|
|
224
|
-
msgstr ""
|
|
225
|
+
msgstr "Żywność i rolnictwo"
|
|
225
226
|
|
|
226
227
|
#: settings/base.py:324
|
|
227
228
|
msgid "Geopolitics"
|
|
228
|
-
msgstr ""
|
|
229
|
+
msgstr "Geopolityka"
|
|
229
230
|
|
|
230
231
|
#: settings/base.py:325
|
|
231
232
|
msgid "Health"
|
|
232
|
-
msgstr ""
|
|
233
|
+
msgstr "Zdrowie"
|
|
233
234
|
|
|
234
235
|
#: settings/base.py:326
|
|
235
236
|
msgid "Hiking"
|
|
236
|
-
msgstr ""
|
|
237
|
+
msgstr "Piesze wędrówki"
|
|
237
238
|
|
|
238
239
|
#: settings/base.py:327
|
|
239
240
|
msgid "History"
|
|
240
|
-
msgstr ""
|
|
241
|
+
msgstr "Historia"
|
|
241
242
|
|
|
242
243
|
#: settings/base.py:328
|
|
243
244
|
msgid "Public sector"
|
|
244
|
-
msgstr ""
|
|
245
|
+
msgstr "Sektor publiczny"
|
|
245
246
|
|
|
246
247
|
#: settings/base.py:329
|
|
247
248
|
msgid "Science"
|
|
248
|
-
msgstr ""
|
|
249
|
+
msgstr "Nauka"
|
|
249
250
|
|
|
250
251
|
#: settings/base.py:330
|
|
251
252
|
msgid "Shopping"
|
|
252
|
-
msgstr ""
|
|
253
|
+
msgstr "Zakupy"
|
|
253
254
|
|
|
254
255
|
#: settings/base.py:331
|
|
255
256
|
msgid "Sport and Leisure"
|
|
256
|
-
msgstr ""
|
|
257
|
+
msgstr "Sport i wypoczynek"
|
|
257
258
|
|
|
258
259
|
#: settings/base.py:332
|
|
259
260
|
msgid "Travel"
|
|
260
|
-
msgstr ""
|
|
261
|
+
msgstr "Podróż"
|
|
261
262
|
|
|
262
263
|
#: settings/base.py:333
|
|
263
264
|
msgid "Transports"
|
|
264
|
-
msgstr ""
|
|
265
|
+
msgstr "Transport"
|
|
265
266
|
|
|
266
267
|
#: settings/base.py:334
|
|
267
268
|
msgid "Tourism"
|
|
268
|
-
msgstr ""
|
|
269
|
+
msgstr "Turystyka"
|
|
269
270
|
|
|
270
271
|
#: templates/403.html:8
|
|
271
272
|
msgid ""
|
|
@@ -276,16 +277,16 @@ msgstr ""
|
|
|
276
277
|
|
|
277
278
|
#: templates/403.html:10 templates/404.html:8
|
|
278
279
|
msgid "← Go to the homepage"
|
|
279
|
-
msgstr ""
|
|
280
|
+
msgstr "← Idź do strony głównej"
|
|
280
281
|
|
|
281
282
|
#: templates/404.html:7
|
|
282
283
|
msgid "404 Page Not Found"
|
|
283
|
-
msgstr ""
|
|
284
|
+
msgstr "404 nie znaleziono strony"
|
|
284
285
|
|
|
285
286
|
#: templates/auth/user_detail.html:6
|
|
286
287
|
#, python-format
|
|
287
288
|
msgid "%(current_user)s’s maps"
|
|
288
|
-
msgstr ""
|
|
289
|
+
msgstr "Mapy %(current_user)s"
|
|
289
290
|
|
|
290
291
|
#: templates/auth/user_detail.html:12
|
|
291
292
|
#, python-format
|
|
@@ -299,7 +300,7 @@ msgstr "%(current_user)s nie posiada map."
|
|
|
299
300
|
|
|
300
301
|
#: templates/auth/user_form.html:6
|
|
301
302
|
msgid "My Profile"
|
|
302
|
-
msgstr ""
|
|
303
|
+
msgstr "Mój Profil"
|
|
303
304
|
|
|
304
305
|
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
|
305
306
|
msgid "Save"
|
|
@@ -307,17 +308,17 @@ msgstr "Zapisz"
|
|
|
307
308
|
|
|
308
309
|
#: templates/auth/user_form.html:30
|
|
309
310
|
msgid "Your current providers"
|
|
310
|
-
msgstr ""
|
|
311
|
+
msgstr "Twoi obecni dostawcy"
|
|
311
312
|
|
|
312
313
|
#: templates/auth/user_form.html:44
|
|
313
314
|
msgid "Connect to another provider"
|
|
314
|
-
msgstr ""
|
|
315
|
+
msgstr "Połącz się z innym dostawcą"
|
|
315
316
|
|
|
316
317
|
#: templates/auth/user_form.html:47
|
|
317
318
|
msgid ""
|
|
318
319
|
"It's a good habit to connect your account to more than one provider, in case"
|
|
319
320
|
" one provider becomes unavailable, temporarily or even permanently."
|
|
320
|
-
msgstr ""
|
|
321
|
+
msgstr "Dobrym nawykiem jest połączenie Twojego konta z więcej niż jednym dostawcą, na wypadek gdyby jeden z nich stał się niedostępny, tymczasowo lub nawet na stałe."
|
|
321
322
|
|
|
322
323
|
#: templates/auth/user_stars.html:6
|
|
323
324
|
#, python-format
|
|
@@ -362,7 +363,7 @@ msgstr "Hasło"
|
|
|
362
363
|
|
|
363
364
|
#: templates/registration/login.html:52
|
|
364
365
|
msgid "Please choose a provider:"
|
|
365
|
-
msgstr ""
|
|
366
|
+
msgstr "Wybierz dostawcę:"
|
|
366
367
|
|
|
367
368
|
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
|
368
369
|
msgid "About"
|
|
@@ -486,19 +487,19 @@ msgstr "To jest serwer demonstracyjny, używany do testów i niefinalnych wydań
|
|
|
486
487
|
|
|
487
488
|
#: templates/umap/content_footer.html:5
|
|
488
489
|
msgid "An OpenStreetMap project"
|
|
489
|
-
msgstr ""
|
|
490
|
+
msgstr "Projekt OpenStreetMap"
|
|
490
491
|
|
|
491
492
|
#: templates/umap/content_footer.html:6
|
|
492
493
|
msgid "version"
|
|
493
|
-
msgstr ""
|
|
494
|
+
msgstr "wersja"
|
|
494
495
|
|
|
495
496
|
#: templates/umap/content_footer.html:7
|
|
496
497
|
msgid "Hosted by"
|
|
497
|
-
msgstr ""
|
|
498
|
+
msgstr "Prowadzone przez"
|
|
498
499
|
|
|
499
500
|
#: templates/umap/content_footer.html:8
|
|
500
501
|
msgid "Contact"
|
|
501
|
-
msgstr ""
|
|
502
|
+
msgstr "Kontakt"
|
|
502
503
|
|
|
503
504
|
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
|
504
505
|
msgid "Help"
|
|
@@ -516,11 +517,11 @@ msgstr "Moje Mapy"
|
|
|
516
517
|
#: templates/umap/dashboard_menu.html:11
|
|
517
518
|
#, python-format
|
|
518
519
|
msgid "My Templates (%(count)s)"
|
|
519
|
-
msgstr ""
|
|
520
|
+
msgstr "Moje szablony (%(count)s)"
|
|
520
521
|
|
|
521
522
|
#: templates/umap/dashboard_menu.html:13 templates/umap/user_templates.html:6
|
|
522
523
|
msgid "My Templates"
|
|
523
|
-
msgstr ""
|
|
524
|
+
msgstr "Moje szablony"
|
|
524
525
|
|
|
525
526
|
#: templates/umap/dashboard_menu.html:17
|
|
526
527
|
msgid "My profile"
|
|
@@ -528,7 +529,7 @@ msgstr "Mój profil"
|
|
|
528
529
|
|
|
529
530
|
#: templates/umap/dashboard_menu.html:20
|
|
530
531
|
msgid "My teams"
|
|
531
|
-
msgstr ""
|
|
532
|
+
msgstr "Mój zespół"
|
|
532
533
|
|
|
533
534
|
#: templates/umap/home.html:14
|
|
534
535
|
msgid "Map of the uMaps"
|
|
@@ -544,7 +545,7 @@ msgstr "Jesteś zalogowany. Kontynuowanie..."
|
|
|
544
545
|
|
|
545
546
|
#: templates/umap/map_list.html:15
|
|
546
547
|
msgid "template"
|
|
547
|
-
msgstr ""
|
|
548
|
+
msgstr "szablon"
|
|
548
549
|
|
|
549
550
|
#: templates/umap/map_list.html:18 views.py:459
|
|
550
551
|
msgid "by"
|
|
@@ -552,11 +553,11 @@ msgstr "przez"
|
|
|
552
553
|
|
|
553
554
|
#: templates/umap/map_list.html:22
|
|
554
555
|
msgid "See the template"
|
|
555
|
-
msgstr ""
|
|
556
|
+
msgstr "Zobacz szablon"
|
|
556
557
|
|
|
557
558
|
#: templates/umap/map_list.html:22
|
|
558
559
|
msgid "See the map"
|
|
559
|
-
msgstr ""
|
|
560
|
+
msgstr "Zobacz mapę"
|
|
560
561
|
|
|
561
562
|
#: templates/umap/map_list.html:28
|
|
562
563
|
msgid "More"
|
|
@@ -639,7 +640,7 @@ msgstr "ostatni"
|
|
|
639
640
|
#: templates/umap/map_table.html:140
|
|
640
641
|
#, python-format
|
|
641
642
|
msgid "Lines per page: %(per_page)s"
|
|
642
|
-
msgstr ""
|
|
643
|
+
msgstr "Linijek na stronę: %(per_page)s"
|
|
643
644
|
|
|
644
645
|
#: templates/umap/map_table.html:145
|
|
645
646
|
#, python-format
|
|
@@ -725,7 +726,7 @@ msgstr "Nie znaleziono mapy."
|
|
|
725
726
|
|
|
726
727
|
#: templates/umap/search.html:36
|
|
727
728
|
msgid "Latest created maps in category"
|
|
728
|
-
msgstr ""
|
|
729
|
+
msgstr "Ostatnio utworzone mapy w kategorii"
|
|
729
730
|
|
|
730
731
|
#: templates/umap/search.html:43
|
|
731
732
|
msgid "Latest created maps"
|
|
@@ -737,7 +738,7 @@ msgstr "Znajdź mapy"
|
|
|
737
738
|
|
|
738
739
|
#: templates/umap/search_bar.html:14 templates/umap/user_map_table.html:15
|
|
739
740
|
msgid "Any category"
|
|
740
|
-
msgstr ""
|
|
741
|
+
msgstr "Dowolna kategoria"
|
|
741
742
|
|
|
742
743
|
#: templates/umap/search_bar.html:19
|
|
743
744
|
msgid "Search"
|
|
@@ -745,34 +746,34 @@ msgstr "Szukaj"
|
|
|
745
746
|
|
|
746
747
|
#: templates/umap/team_confirm_delete.html:6
|
|
747
748
|
msgid "Team deletion"
|
|
748
|
-
msgstr ""
|
|
749
|
+
msgstr "Usunięcie zespołu"
|
|
749
750
|
|
|
750
751
|
#: templates/umap/team_detail.html:6
|
|
751
752
|
#, python-format
|
|
752
753
|
msgid "%(current_team)s’s maps"
|
|
753
|
-
msgstr ""
|
|
754
|
+
msgstr "Mapy zespołu %(current_team)s"
|
|
754
755
|
|
|
755
756
|
#: templates/umap/team_detail.html:14
|
|
756
757
|
#, python-format
|
|
757
758
|
msgid "Browse %(current_team)s's maps"
|
|
758
|
-
msgstr ""
|
|
759
|
+
msgstr "Przeglądaj mapy zespołu %(current_team)s"
|
|
759
760
|
|
|
760
761
|
#: templates/umap/team_detail.html:26
|
|
761
762
|
#, python-format
|
|
762
763
|
msgid "%(current_team)s has no public maps."
|
|
763
|
-
msgstr ""
|
|
764
|
+
msgstr "Zespół %(current_team)s nie ma map publicznych"
|
|
764
765
|
|
|
765
766
|
#: templates/umap/team_form.html:6
|
|
766
767
|
msgid "Create or edit a team"
|
|
767
|
-
msgstr ""
|
|
768
|
+
msgstr "Utwórz lub edytuj zespół"
|
|
768
769
|
|
|
769
770
|
#: templates/umap/team_form.html:28
|
|
770
771
|
msgid "Delete this team"
|
|
771
|
-
msgstr ""
|
|
772
|
+
msgstr "Usuń ten zespół"
|
|
772
773
|
|
|
773
774
|
#: templates/umap/team_form.html:51
|
|
774
775
|
msgid "Add user"
|
|
775
|
-
msgstr ""
|
|
776
|
+
msgstr "Dodaj użytkownika"
|
|
776
777
|
|
|
777
778
|
#: templates/umap/user_dashboard.html:10
|
|
778
779
|
msgid "Search my maps"
|
umap/models.py
CHANGED
|
@@ -13,7 +13,7 @@ from django.utils.functional import classproperty
|
|
|
13
13
|
from django.utils.translation import gettext_lazy as _
|
|
14
14
|
|
|
15
15
|
from .managers import PrivateManager, PublicManager
|
|
16
|
-
from .utils import _urls_for_js
|
|
16
|
+
from .utils import _urls_for_js, normalize_string
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
# Did not find a clean way to do this in Django
|
|
@@ -289,7 +289,7 @@ class Map(NamedModel):
|
|
|
289
289
|
self.save()
|
|
290
290
|
|
|
291
291
|
def delete(self, **kwargs):
|
|
292
|
-
#
|
|
292
|
+
# Explicitly call datalayers.delete, so we can deal with removing files
|
|
293
293
|
# (the cascade delete would not call the model delete method)
|
|
294
294
|
# Use datalayer_set so to get also the deleted ones.
|
|
295
295
|
for datalayer in self.datalayer_set.all():
|
|
@@ -438,7 +438,11 @@ class Map(NamedModel):
|
|
|
438
438
|
"iconUrl": {
|
|
439
439
|
"default": "%sumap/img/marker.svg" % settings.STATIC_URL,
|
|
440
440
|
},
|
|
441
|
-
"tags": {
|
|
441
|
+
"tags": {
|
|
442
|
+
"choices": sorted(
|
|
443
|
+
settings.UMAP_TAGS, key=lambda i: normalize_string(i[1])
|
|
444
|
+
)
|
|
445
|
+
},
|
|
442
446
|
}
|
|
443
447
|
|
|
444
448
|
|
umap/settings/local.py.sample
CHANGED
|
@@ -59,7 +59,7 @@ SOCIAL_AUTH_REDIRECT_IS_HTTPS = True
|
|
|
59
59
|
SOCIAL_AUTH_RAISE_EXCEPTIONS = False
|
|
60
60
|
SOCIAL_AUTH_BACKEND_ERROR_URL = "/"
|
|
61
61
|
|
|
62
|
-
# If you want to add a
|
|
62
|
+
# If you want to add a playground map, add its primary key
|
|
63
63
|
# UMAP_DEMO_PK = 204
|
|
64
64
|
# If you want to add a showcase map on the home page, add its primary key
|
|
65
65
|
# UMAP_SHOWCASE_PK = 1156
|
umap/static/umap/content.css
CHANGED
|
@@ -342,12 +342,9 @@ ul.umap-autocomplete {
|
|
|
342
342
|
|
|
343
343
|
.umap-singleresult div,
|
|
344
344
|
.umap-multiresult li {
|
|
345
|
-
width: 100%;
|
|
346
|
-
background-color: #2e3436;
|
|
347
345
|
border-radius: 2px;
|
|
348
346
|
border: 1px solid #202425;
|
|
349
347
|
padding: 7px;
|
|
350
|
-
color: #eeeeec;
|
|
351
348
|
margin-bottom: 7px;
|
|
352
349
|
}
|
|
353
350
|
|
umap/static/umap/css/bar.css
CHANGED
|
@@ -255,14 +255,21 @@
|
|
|
255
255
|
flex-direction: column;
|
|
256
256
|
z-index: calc(var(--zindex-panels) - 1);
|
|
257
257
|
width: var(--control-size);
|
|
258
|
-
background-color: var(--background-color);
|
|
259
|
-
border-radius: var(--border-radius);
|
|
260
258
|
}
|
|
261
259
|
|
|
262
260
|
.umap-edit-enabled .umap-edit-bar {
|
|
263
261
|
display: flex;
|
|
264
262
|
}
|
|
265
263
|
|
|
264
|
+
.umap-edit-bar ul {
|
|
265
|
+
background-color: var(--background-color);
|
|
266
|
+
border-radius: var(--border-radius);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.umap-edit-bar ul+ul {
|
|
270
|
+
margin-top: var(--box-margin);
|
|
271
|
+
}
|
|
272
|
+
|
|
266
273
|
.umap-edit-bar li {
|
|
267
274
|
width: var(--control-size);
|
|
268
275
|
height: var(--control-size);
|
|
@@ -281,10 +288,6 @@
|
|
|
281
288
|
border-radius: 0 0 var(--border-radius) var(--border-radius);
|
|
282
289
|
}
|
|
283
290
|
|
|
284
|
-
.umap-edit-bar hr {
|
|
285
|
-
padding: 0;
|
|
286
|
-
margin: 0;
|
|
287
|
-
}
|
|
288
291
|
|
|
289
292
|
@media all and (max-width: 980px) {
|
|
290
293
|
.umap-main-edit-toolbox button span {
|
umap/static/umap/css/form.css
CHANGED
|
@@ -142,6 +142,10 @@ input[type="submit"] {
|
|
|
142
142
|
font-weight: bold;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
+
[type="button"].on {
|
|
146
|
+
background-color: var(--color-darkCyan);
|
|
147
|
+
}
|
|
148
|
+
|
|
145
149
|
.dark .button.primary:not([disabled]),
|
|
146
150
|
.dark [type="button"].primary:not([disabled]) {
|
|
147
151
|
background-color: var(--color-verySoftCyan);
|
|
@@ -162,7 +166,6 @@ input[type="submit"] {
|
|
|
162
166
|
background-color: var(--color-mediumGray);
|
|
163
167
|
}
|
|
164
168
|
|
|
165
|
-
.dark .anonymous:hover,
|
|
166
169
|
.dark .button.anonymous:hover,
|
|
167
170
|
.dark [type="button"].anonymous:hover {
|
|
168
171
|
background-color: var(--color-veryDarkViolet);
|
|
@@ -595,8 +598,7 @@ i.info {
|
|
|
595
598
|
.umap-to-polygon:before,
|
|
596
599
|
.umap-clone:before,
|
|
597
600
|
.umap-edit:before,
|
|
598
|
-
.umap-download:before
|
|
599
|
-
.umap-to-polyline:before {
|
|
601
|
+
.umap-download:before {
|
|
600
602
|
background-repeat: no-repeat;
|
|
601
603
|
text-indent: 36px;
|
|
602
604
|
height: 24px;
|
|
@@ -611,8 +613,7 @@ i.info {
|
|
|
611
613
|
.dark .umap-to-polygon:before,
|
|
612
614
|
.dark .umap-clone:before,
|
|
613
615
|
.dark .umap-edit:before,
|
|
614
|
-
.dark .umap-download:before
|
|
615
|
-
.dark .umap-to-polyline:before {
|
|
616
|
+
.dark .umap-download:before {
|
|
616
617
|
background-image: url('../img/24-white.svg');
|
|
617
618
|
vertical-align: middle;
|
|
618
619
|
}
|
|
@@ -621,10 +622,6 @@ i.info {
|
|
|
621
622
|
background-position: -72px -42px;
|
|
622
623
|
}
|
|
623
624
|
|
|
624
|
-
.umap-to-polyline:before {
|
|
625
|
-
background-position: -106px -42px;
|
|
626
|
-
}
|
|
627
|
-
|
|
628
625
|
.umap-clone:before {
|
|
629
626
|
background-position: -144px -78px;
|
|
630
627
|
}
|
|
@@ -773,6 +770,20 @@ input[type=hidden].blur+[type="button"] {
|
|
|
773
770
|
align-items: stretch;
|
|
774
771
|
}
|
|
775
772
|
|
|
773
|
+
.copiable-textarea div {
|
|
774
|
+
position: relative;
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
.copiable-textarea textarea {
|
|
778
|
+
min-height: 4rlh;
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
.copiable-textarea button {
|
|
782
|
+
position: absolute;
|
|
783
|
+
top: 0;
|
|
784
|
+
right: 0;
|
|
785
|
+
}
|
|
786
|
+
|
|
776
787
|
.copiable-input {
|
|
777
788
|
display: flex;
|
|
778
789
|
align-items: end;
|
|
@@ -782,12 +793,17 @@ input[type=hidden].blur+[type="button"] {
|
|
|
782
793
|
border-radius: initial;
|
|
783
794
|
}
|
|
784
795
|
|
|
785
|
-
.copiable-
|
|
796
|
+
.copiable-textarea button,
|
|
797
|
+
.copiable-input button[type=button] {
|
|
786
798
|
background-color: var(--background-color);
|
|
787
799
|
color: var(--text-color);
|
|
788
800
|
border: 2px solid var(--color-darkBlue);
|
|
789
|
-
border-left: none;
|
|
790
801
|
width: 40px;
|
|
802
|
+
height: 40px;
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
.copiable-input button[type=button] {
|
|
806
|
+
border-left: none;
|
|
791
807
|
}
|
|
792
808
|
|
|
793
809
|
input.highlightable:not(:placeholder-shown) {
|
umap/static/umap/css/popup.css
CHANGED
|
@@ -12,7 +12,7 @@ export class uMapElement extends HTMLElement {
|
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Retrieves a clone of the content template either using the `template`
|
|
15
|
-
* attribute or an id
|
|
15
|
+
* attribute or an id matching the name of the component:
|
|
16
16
|
*
|
|
17
17
|
* `umap-alert` component => `umap-alert-template` template id lookup.
|
|
18
18
|
*/
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import Umap from '../modules/umap.js'
|
|
2
|
+
import * as DOMUtils from '../modules/domutils.js'
|
|
3
|
+
import * as Utils from '../modules/utils.js'
|
|
4
|
+
import { translate } from '../modules/i18n.js'
|
|
5
|
+
|
|
6
|
+
class CopiableInput extends HTMLElement {
|
|
7
|
+
connectedCallback() {
|
|
8
|
+
DOMUtils.copiableInput(this, this.dataset.label, this.dataset.value || '')
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
class CopiableTextarea extends HTMLElement {
|
|
13
|
+
static get observedAttributes() {
|
|
14
|
+
return ['value']
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
constructor() {
|
|
18
|
+
super()
|
|
19
|
+
const id = `copiable-${Utils.generateId()}`
|
|
20
|
+
this.innerHTML = `
|
|
21
|
+
<div class="copiable-textarea">
|
|
22
|
+
<label for="${id}">${this.dataset.label}</label>
|
|
23
|
+
<div>
|
|
24
|
+
<textarea type="text" id="${id}" readOnly>${this.value}</textarea>
|
|
25
|
+
<button type="button" class="icon icon-24 icon-copy" title="${translate('copy')}" data-ref=button></button>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
`
|
|
29
|
+
this.textarea = this.querySelector('textarea')
|
|
30
|
+
this.button = this.querySelector('button')
|
|
31
|
+
this.button.addEventListener('click', () =>
|
|
32
|
+
DOMUtils.copyToClipboard(this.textarea.textContent)
|
|
33
|
+
)
|
|
34
|
+
}
|
|
35
|
+
attributeChangedCallback(name, oldValue, newValue) {
|
|
36
|
+
this.textarea.textContent = newValue
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function register(Class, tagName) {
|
|
41
|
+
if ('customElements' in window && !customElements.get(tagName)) {
|
|
42
|
+
customElements.define(tagName, Class)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
register(CopiableInput, 'copiable-input')
|
|
47
|
+
register(CopiableTextarea, 'copiable-textarea')
|