umap-project 2.6.2__py3-none-any.whl → 2.7.0__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.
- umap/__init__.py +1 -1
- umap/admin.py +64 -1
- umap/asgi.py +15 -0
- umap/context_processors.py +1 -0
- umap/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
- umap/locale/cs_CZ/LC_MESSAGES/django.po +96 -92
- umap/locale/de/LC_MESSAGES/django.mo +0 -0
- umap/locale/de/LC_MESSAGES/django.po +19 -18
- umap/locale/en/LC_MESSAGES/django.po +47 -43
- umap/locale/es/LC_MESSAGES/django.mo +0 -0
- umap/locale/es/LC_MESSAGES/django.po +134 -128
- umap/locale/fr/LC_MESSAGES/django.mo +0 -0
- umap/locale/fr/LC_MESSAGES/django.po +51 -47
- umap/locale/pt/LC_MESSAGES/django.mo +0 -0
- umap/locale/pt/LC_MESSAGES/django.po +64 -60
- umap/management/commands/clean_tilelayer.py +152 -0
- umap/management/commands/purge_purgatory.py +28 -0
- umap/models.py +27 -2
- umap/settings/base.py +3 -1
- umap/static/umap/base.css +4 -4
- umap/static/umap/css/contextmenu.css +6 -1
- umap/static/umap/css/icon.css +7 -2
- umap/static/umap/css/importers.css +4 -0
- umap/static/umap/img/16-white.svg +9 -2
- umap/static/umap/img/16.svg +1 -181
- umap/static/umap/img/24-white.svg +1 -0
- umap/static/umap/img/24.svg +1 -0
- umap/static/umap/img/importers/cadastrefr.svg +23 -0
- umap/static/umap/img/source/16-white.svg +10 -3
- umap/static/umap/img/source/16.svg +753 -197
- umap/static/umap/img/source/24-white.svg +3 -2
- umap/static/umap/img/source/24.svg +3 -2
- umap/static/umap/js/modules/autocomplete.js +7 -3
- umap/static/umap/js/modules/browser.js +55 -2
- umap/static/umap/js/modules/caption.js +16 -5
- umap/static/umap/js/modules/data/features.js +183 -8
- umap/static/umap/js/modules/data/layer.js +57 -40
- umap/static/umap/js/modules/formatter.js +3 -2
- umap/static/umap/js/modules/global.js +2 -0
- umap/static/umap/js/modules/importer.js +3 -0
- umap/static/umap/js/modules/importers/cadastrefr.js +62 -0
- umap/static/umap/js/modules/importers/communesfr.js +15 -3
- umap/static/umap/js/modules/permissions.js +123 -93
- umap/static/umap/js/modules/rendering/layers/classified.js +2 -0
- umap/static/umap/js/modules/rendering/ui.js +60 -213
- umap/static/umap/js/modules/share.js +1 -3
- umap/static/umap/js/modules/slideshow.js +1 -1
- umap/static/umap/js/modules/sync/engine.js +371 -14
- umap/static/umap/js/modules/sync/hlc.js +106 -0
- umap/static/umap/js/modules/sync/updaters.js +18 -6
- umap/static/umap/js/modules/sync/websocket.js +1 -1
- umap/static/umap/js/modules/tableeditor.js +1 -1
- umap/static/umap/js/modules/ui/base.js +2 -2
- umap/static/umap/js/modules/ui/contextmenu.js +51 -18
- umap/static/umap/js/modules/urls.js +5 -1
- umap/static/umap/js/modules/utils.js +28 -4
- umap/static/umap/js/umap.controls.js +76 -55
- umap/static/umap/js/umap.core.js +3 -3
- umap/static/umap/js/umap.forms.js +3 -1
- umap/static/umap/js/umap.js +115 -124
- umap/static/umap/locale/am_ET.js +2 -2
- umap/static/umap/locale/am_ET.json +2 -2
- umap/static/umap/locale/ar.js +2 -2
- umap/static/umap/locale/ar.json +2 -2
- umap/static/umap/locale/ast.js +2 -2
- umap/static/umap/locale/ast.json +2 -2
- umap/static/umap/locale/bg.js +2 -2
- umap/static/umap/locale/bg.json +2 -2
- umap/static/umap/locale/br.js +13 -4
- umap/static/umap/locale/br.json +13 -4
- umap/static/umap/locale/ca.js +30 -17
- umap/static/umap/locale/ca.json +30 -17
- umap/static/umap/locale/cs_CZ.js +89 -80
- umap/static/umap/locale/cs_CZ.json +89 -80
- umap/static/umap/locale/da.js +2 -2
- umap/static/umap/locale/da.json +2 -2
- umap/static/umap/locale/de.js +17 -8
- umap/static/umap/locale/de.json +17 -8
- umap/static/umap/locale/el.js +2 -2
- umap/static/umap/locale/el.json +2 -2
- umap/static/umap/locale/en.js +15 -4
- umap/static/umap/locale/en.json +15 -4
- umap/static/umap/locale/en_US.json +2 -2
- umap/static/umap/locale/es.js +338 -325
- umap/static/umap/locale/es.json +338 -325
- umap/static/umap/locale/et.js +2 -2
- umap/static/umap/locale/et.json +2 -2
- umap/static/umap/locale/eu.js +11 -4
- umap/static/umap/locale/eu.json +11 -4
- umap/static/umap/locale/fa_IR.js +11 -4
- umap/static/umap/locale/fa_IR.json +11 -4
- umap/static/umap/locale/fi.js +2 -2
- umap/static/umap/locale/fi.json +2 -2
- umap/static/umap/locale/fr.js +15 -4
- umap/static/umap/locale/fr.json +15 -4
- umap/static/umap/locale/gl.js +2 -2
- umap/static/umap/locale/gl.json +2 -2
- umap/static/umap/locale/he.js +2 -2
- umap/static/umap/locale/he.json +2 -2
- umap/static/umap/locale/hr.js +2 -2
- umap/static/umap/locale/hr.json +2 -2
- umap/static/umap/locale/hu.js +12 -5
- umap/static/umap/locale/hu.json +12 -5
- umap/static/umap/locale/id.js +2 -2
- umap/static/umap/locale/id.json +2 -2
- umap/static/umap/locale/is.js +2 -2
- umap/static/umap/locale/is.json +2 -2
- umap/static/umap/locale/it.js +2 -2
- umap/static/umap/locale/it.json +2 -2
- umap/static/umap/locale/ja.js +2 -2
- umap/static/umap/locale/ja.json +2 -2
- umap/static/umap/locale/ko.js +2 -2
- umap/static/umap/locale/ko.json +2 -2
- umap/static/umap/locale/lt.js +2 -2
- umap/static/umap/locale/lt.json +2 -2
- umap/static/umap/locale/ms.js +2 -2
- umap/static/umap/locale/ms.json +2 -2
- umap/static/umap/locale/nl.js +2 -2
- umap/static/umap/locale/nl.json +2 -2
- umap/static/umap/locale/no.js +2 -2
- umap/static/umap/locale/no.json +2 -2
- umap/static/umap/locale/pl.js +2 -2
- umap/static/umap/locale/pl.json +2 -2
- umap/static/umap/locale/pl_PL.json +2 -2
- umap/static/umap/locale/pt.js +19 -10
- umap/static/umap/locale/pt.json +19 -10
- umap/static/umap/locale/pt_BR.js +2 -2
- umap/static/umap/locale/pt_BR.json +2 -2
- umap/static/umap/locale/pt_PT.js +13 -4
- umap/static/umap/locale/pt_PT.json +13 -4
- umap/static/umap/locale/ro.js +2 -2
- umap/static/umap/locale/ro.json +2 -2
- umap/static/umap/locale/ru.js +2 -2
- umap/static/umap/locale/ru.json +2 -2
- umap/static/umap/locale/si.js +2 -2
- umap/static/umap/locale/si.json +2 -2
- umap/static/umap/locale/sk_SK.js +2 -2
- umap/static/umap/locale/sk_SK.json +2 -2
- umap/static/umap/locale/sl.js +2 -2
- umap/static/umap/locale/sl.json +2 -2
- umap/static/umap/locale/sr.js +2 -2
- umap/static/umap/locale/sr.json +2 -2
- umap/static/umap/locale/sv.js +2 -2
- umap/static/umap/locale/sv.json +2 -2
- umap/static/umap/locale/th_TH.js +2 -2
- umap/static/umap/locale/th_TH.json +2 -2
- umap/static/umap/locale/tr.js +2 -2
- umap/static/umap/locale/tr.json +2 -2
- umap/static/umap/locale/uk_UA.js +2 -2
- umap/static/umap/locale/uk_UA.json +2 -2
- umap/static/umap/locale/vi.js +2 -2
- umap/static/umap/locale/vi.json +2 -2
- umap/static/umap/locale/vi_VN.json +2 -2
- umap/static/umap/locale/zh.js +2 -2
- umap/static/umap/locale/zh.json +2 -2
- umap/static/umap/locale/zh_CN.json +2 -2
- umap/static/umap/locale/zh_TW.Big5.json +2 -2
- umap/static/umap/locale/zh_TW.js +13 -4
- umap/static/umap/locale/zh_TW.json +13 -4
- umap/static/umap/map.css +44 -29
- umap/static/umap/unittests/hlc.js +165 -0
- umap/static/umap/unittests/sync.js +321 -15
- umap/static/umap/unittests/utils.js +47 -0
- umap/static/umap/vars.css +2 -1
- umap/static/umap/vendors/colorbrewer/colorbrewer.js +309 -317
- umap/static/umap/vendors/dompurify/purify.es.js +15 -16
- umap/static/umap/vendors/dompurify/purify.es.mjs.map +1 -1
- umap/static/umap/vendors/georsstogeojson/GeoRSSToGeoJSON.js +111 -80
- umap/static/umap/vendors/locatecontrol/L.Control.Locate.min.js +2 -2
- umap/static/umap/vendors/locatecontrol/L.Control.Locate.min.js.map +1 -1
- umap/static/umap/vendors/simple-statistics/simple-statistics.min.js +1 -1
- umap/static/umap/vendors/simple-statistics/simple-statistics.min.js.map +1 -1
- umap/templates/umap/css.html +0 -2
- umap/templates/umap/dashboard_menu.html +4 -2
- umap/templates/umap/js.html +0 -5
- umap/templates/umap/map_detail.html +2 -2
- umap/tests/fixtures/test_upload_data.csv +2 -2
- umap/tests/integration/test_anonymous_owned_map.py +1 -0
- umap/tests/integration/test_basics.py +1 -1
- umap/tests/integration/test_browser.py +69 -7
- umap/tests/integration/test_caption.py +3 -3
- umap/tests/integration/test_circles_layer.py +12 -0
- umap/tests/integration/test_cluster.py +53 -0
- umap/tests/integration/test_datalayer.py +2 -1
- umap/tests/integration/test_draw_polygon.py +17 -9
- umap/tests/integration/test_draw_polyline.py +84 -7
- umap/tests/integration/test_edit_datalayer.py +5 -8
- umap/tests/integration/test_edit_map.py +2 -2
- umap/tests/integration/test_edit_marker.py +1 -1
- umap/tests/integration/test_facets_browser.py +3 -3
- umap/tests/integration/test_import.py +1 -0
- umap/tests/integration/test_map.py +1 -0
- umap/tests/integration/test_owned_map.py +1 -1
- umap/tests/integration/test_view_marker.py +63 -0
- umap/tests/integration/test_view_polygon.py +12 -12
- umap/tests/integration/test_websocket_sync.py +65 -3
- umap/tests/test_clean_tilelayer.py +83 -0
- umap/tests/test_datalayer.py +24 -0
- umap/tests/test_map_views.py +20 -0
- umap/tests/test_purge_purgatory.py +25 -0
- umap/tests/test_websocket_server.py +22 -0
- umap/urls.py +5 -1
- umap/views.py +6 -3
- umap/websocket_server.py +130 -27
- {umap_project-2.6.2.dist-info → umap_project-2.7.0.dist-info}/METADATA +18 -14
- {umap_project-2.6.2.dist-info → umap_project-2.7.0.dist-info}/RECORD +209 -200
- umap/static/umap/vendors/contextmenu/leaflet.contextmenu.min.css +0 -1
- umap/static/umap/vendors/contextmenu/leaflet.contextmenu.min.js +0 -7
- {umap_project-2.6.2.dist-info → umap_project-2.7.0.dist-info}/WHEEL +0 -0
- {umap_project-2.6.2.dist-info → umap_project-2.7.0.dist-info}/entry_points.txt +0 -0
- {umap_project-2.6.2.dist-info → umap_project-2.7.0.dist-info}/licenses/LICENSE +0 -0
umap/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
VERSION = "2.
|
|
1
|
+
VERSION = "2.7.0"
|
umap/admin.py
CHANGED
|
@@ -1,8 +1,39 @@
|
|
|
1
|
+
import csv
|
|
2
|
+
from datetime import datetime
|
|
3
|
+
|
|
4
|
+
from django.contrib.auth.admin import UserAdmin as UserAdminBase
|
|
5
|
+
from django.contrib.auth.models import User
|
|
1
6
|
from django.contrib.gis import admin
|
|
7
|
+
from django.http import HttpResponse
|
|
8
|
+
from django.utils.translation import gettext_lazy as _
|
|
2
9
|
|
|
3
10
|
from .models import DataLayer, Licence, Map, Pictogram, Team, TileLayer
|
|
4
11
|
|
|
5
12
|
|
|
13
|
+
class CSVExportMixin:
|
|
14
|
+
actions = ["as_csv"]
|
|
15
|
+
|
|
16
|
+
@admin.action(description=_("CSV Export"))
|
|
17
|
+
def as_csv(self, request, queryset):
|
|
18
|
+
modelname = queryset.model.__name__.lower()
|
|
19
|
+
filename = f"umap_{modelname}_{datetime.now().isoformat()}.csv"
|
|
20
|
+
response = HttpResponse(
|
|
21
|
+
content_type="text/csv",
|
|
22
|
+
headers={"Content-Disposition": f'attachment; filename="{filename}"'},
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
def get_cell(user, field):
|
|
26
|
+
if hasattr(self, field):
|
|
27
|
+
return getattr(self, field)(user)
|
|
28
|
+
return getattr(user, field)
|
|
29
|
+
|
|
30
|
+
writer = csv.writer(response)
|
|
31
|
+
writer.writerow(self.csv_fields)
|
|
32
|
+
for user in queryset:
|
|
33
|
+
writer.writerow(get_cell(user, field) for field in self.csv_fields)
|
|
34
|
+
return response
|
|
35
|
+
|
|
36
|
+
|
|
6
37
|
class TileLayerAdmin(admin.ModelAdmin):
|
|
7
38
|
list_display = (
|
|
8
39
|
"name",
|
|
@@ -11,10 +42,22 @@ class TileLayerAdmin(admin.ModelAdmin):
|
|
|
11
42
|
list_editable = ("rank",)
|
|
12
43
|
|
|
13
44
|
|
|
14
|
-
class MapAdmin(admin.GISModelAdmin):
|
|
45
|
+
class MapAdmin(CSVExportMixin, admin.GISModelAdmin):
|
|
15
46
|
search_fields = ("name",)
|
|
16
47
|
autocomplete_fields = ("owner", "editors")
|
|
17
48
|
list_filter = ("share_status",)
|
|
49
|
+
csv_fields = (
|
|
50
|
+
"pk",
|
|
51
|
+
"name",
|
|
52
|
+
"center",
|
|
53
|
+
"zoom",
|
|
54
|
+
"created_at",
|
|
55
|
+
"modified_at",
|
|
56
|
+
"edit_status",
|
|
57
|
+
"share_status",
|
|
58
|
+
"owner_id",
|
|
59
|
+
"team_id",
|
|
60
|
+
)
|
|
18
61
|
|
|
19
62
|
|
|
20
63
|
class PictogramAdmin(admin.ModelAdmin):
|
|
@@ -30,9 +73,29 @@ class TeamAdmin(admin.ModelAdmin):
|
|
|
30
73
|
filter_horizontal = ("users",)
|
|
31
74
|
|
|
32
75
|
|
|
76
|
+
class UserAdmin(CSVExportMixin, UserAdminBase):
|
|
77
|
+
csv_fields = [
|
|
78
|
+
"pk",
|
|
79
|
+
"username",
|
|
80
|
+
"email",
|
|
81
|
+
"first_name",
|
|
82
|
+
"last_name",
|
|
83
|
+
"last_login",
|
|
84
|
+
"date_joined",
|
|
85
|
+
"maps_count",
|
|
86
|
+
]
|
|
87
|
+
list_display = list(UserAdminBase.list_display) + ["maps_count"]
|
|
88
|
+
|
|
89
|
+
def maps_count(self, obj):
|
|
90
|
+
# owner maps + maps as editor
|
|
91
|
+
return obj.owned_maps.count() + obj.map_set.count()
|
|
92
|
+
|
|
93
|
+
|
|
33
94
|
admin.site.register(Map, MapAdmin)
|
|
34
95
|
admin.site.register(DataLayer)
|
|
35
96
|
admin.site.register(Pictogram, PictogramAdmin)
|
|
36
97
|
admin.site.register(TileLayer, TileLayerAdmin)
|
|
37
98
|
admin.site.register(Licence)
|
|
38
99
|
admin.site.register(Team, TeamAdmin)
|
|
100
|
+
admin.site.unregister(User)
|
|
101
|
+
admin.site.register(User, UserAdmin)
|
umap/asgi.py
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
from channels.routing import ProtocolTypeRouter
|
|
4
|
+
from django.core.asgi import get_asgi_application
|
|
5
|
+
|
|
6
|
+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "umap.settings")
|
|
7
|
+
# Initialize Django ASGI application early to ensure the AppRegistry
|
|
8
|
+
# is populated before importing code that may import ORM models.
|
|
9
|
+
django_asgi_app = get_asgi_application()
|
|
10
|
+
|
|
11
|
+
application = ProtocolTypeRouter(
|
|
12
|
+
{
|
|
13
|
+
"http": django_asgi_app,
|
|
14
|
+
}
|
|
15
|
+
)
|
umap/context_processors.py
CHANGED
|
Binary file
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
# Jakub A. Tesinsky, 2014
|
|
8
8
|
# Jakub A. Tesinsky, 2014
|
|
9
9
|
# Jiří Podhorecký, 2018-2019
|
|
10
|
-
# Jiří Podhorecký <jirka.p@volny.cz>, 2023
|
|
10
|
+
# Jiří Podhorecký <jirka.p@volny.cz>, 2023-2024
|
|
11
11
|
# Jiří Podhorecký <jirka.p@volny.cz>, 2019
|
|
12
12
|
# Jiří Podhorecký <jirka.p@volny.cz>, 2018
|
|
13
13
|
# Jiří Podhorecký <jirka.p@volny.cz>, 2018
|
|
@@ -16,9 +16,9 @@ msgid ""
|
|
|
16
16
|
msgstr ""
|
|
17
17
|
"Project-Id-Version: uMap\n"
|
|
18
18
|
"Report-Msgid-Bugs-To: \n"
|
|
19
|
-
"POT-Creation-Date: 2024-
|
|
19
|
+
"POT-Creation-Date: 2024-10-04 16:35+0000\n"
|
|
20
20
|
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
|
21
|
-
"Last-Translator: Jiří Podhorecký <jirka.p@volny.cz>, 2023\n"
|
|
21
|
+
"Last-Translator: Jiří Podhorecký <jirka.p@volny.cz>, 2023-2024\n"
|
|
22
22
|
"Language-Team: Czech (Czech Republic) (http://app.transifex.com/openstreetmap/umap/language/cs_CZ/)\n"
|
|
23
23
|
"MIME-Version: 1.0\n"
|
|
24
24
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
@@ -26,6 +26,10 @@ msgstr ""
|
|
|
26
26
|
"Language: cs_CZ\n"
|
|
27
27
|
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
|
28
28
|
|
|
29
|
+
#: admin.py:16
|
|
30
|
+
msgid "CSV Export"
|
|
31
|
+
msgstr ""
|
|
32
|
+
|
|
29
33
|
#: forms.py:44 forms.py:70
|
|
30
34
|
msgid "Only editable with secret edit link"
|
|
31
35
|
msgstr "Lze upravovat jen pomocí tajného odkazu"
|
|
@@ -34,7 +38,7 @@ msgstr "Lze upravovat jen pomocí tajného odkazu"
|
|
|
34
38
|
msgid "Everyone can edit"
|
|
35
39
|
msgstr "Kdokoli může editovat"
|
|
36
40
|
|
|
37
|
-
#: forms.py:69 models.py:
|
|
41
|
+
#: forms.py:69 models.py:441
|
|
38
42
|
msgid "Inherit"
|
|
39
43
|
msgstr "Zdědit"
|
|
40
44
|
|
|
@@ -42,111 +46,111 @@ msgstr "Zdědit"
|
|
|
42
46
|
msgid "Site is readonly for maintenance"
|
|
43
47
|
msgstr "Stránka je jen ke čtení kvůli údržbě"
|
|
44
48
|
|
|
45
|
-
#: models.py:
|
|
49
|
+
#: models.py:55 models.py:74
|
|
46
50
|
msgid "name"
|
|
47
51
|
msgstr "název"
|
|
48
52
|
|
|
49
|
-
#: models.py:
|
|
53
|
+
#: models.py:57 models.py:451
|
|
50
54
|
msgid "description"
|
|
51
55
|
msgstr "popis"
|
|
52
56
|
|
|
53
|
-
#: models.py:
|
|
57
|
+
#: models.py:105
|
|
54
58
|
msgid "details"
|
|
55
59
|
msgstr "podrobnosti"
|
|
56
60
|
|
|
57
|
-
#: models.py:
|
|
61
|
+
#: models.py:106
|
|
58
62
|
msgid "Link to a page where the licence is detailed."
|
|
59
63
|
msgstr "Odkaz na stránku s podrobnějším popisem licence."
|
|
60
64
|
|
|
61
|
-
#: models.py:
|
|
65
|
+
#: models.py:116
|
|
62
66
|
msgid "URL template using OSM tile format"
|
|
63
67
|
msgstr "Vzor URL ve formátu pro dlaždice OSM "
|
|
64
68
|
|
|
65
|
-
#: models.py:
|
|
69
|
+
#: models.py:122
|
|
66
70
|
msgid "Order of the tilelayers in the edit box"
|
|
67
71
|
msgstr "Pořadí vrstev při editaci"
|
|
68
72
|
|
|
69
|
-
#: models.py:
|
|
73
|
+
#: models.py:168 models.py:442
|
|
70
74
|
msgid "Everyone"
|
|
71
75
|
msgstr "Kdokoli"
|
|
72
76
|
|
|
73
|
-
#: models.py:
|
|
77
|
+
#: models.py:169 models.py:175 models.py:443
|
|
74
78
|
msgid "Editors and team only"
|
|
75
|
-
msgstr ""
|
|
79
|
+
msgstr "Pouze pro editory a tým"
|
|
76
80
|
|
|
77
|
-
#: models.py:
|
|
81
|
+
#: models.py:170 models.py:444
|
|
78
82
|
msgid "Owner only"
|
|
79
83
|
msgstr "Jen vlastník"
|
|
80
84
|
|
|
81
|
-
#: models.py:
|
|
85
|
+
#: models.py:173
|
|
82
86
|
msgid "Everyone (public)"
|
|
83
87
|
msgstr "Kdokoli (veřejná)"
|
|
84
88
|
|
|
85
|
-
#: models.py:
|
|
89
|
+
#: models.py:174
|
|
86
90
|
msgid "Anyone with link"
|
|
87
91
|
msgstr "Kdokoli kdo má odkaz"
|
|
88
92
|
|
|
89
|
-
#: models.py:
|
|
93
|
+
#: models.py:176
|
|
90
94
|
msgid "Blocked"
|
|
91
95
|
msgstr "Blokováno"
|
|
92
96
|
|
|
93
|
-
#: models.py:
|
|
97
|
+
#: models.py:179
|
|
94
98
|
msgid "center"
|
|
95
99
|
msgstr "střed"
|
|
96
100
|
|
|
97
|
-
#: models.py:
|
|
101
|
+
#: models.py:180
|
|
98
102
|
msgid "zoom"
|
|
99
103
|
msgstr "přiblížení"
|
|
100
104
|
|
|
101
|
-
#: models.py:
|
|
105
|
+
#: models.py:182
|
|
102
106
|
msgid "locate"
|
|
103
107
|
msgstr "lokalizuj"
|
|
104
108
|
|
|
105
|
-
#: models.py:
|
|
109
|
+
#: models.py:182
|
|
106
110
|
msgid "Locate user on load?"
|
|
107
111
|
msgstr "Najdi poluhu uživatele na startu?"
|
|
108
112
|
|
|
109
|
-
#: models.py:
|
|
113
|
+
#: models.py:186
|
|
110
114
|
msgid "Choose the map licence."
|
|
111
115
|
msgstr "Vyberte si licenci mapy."
|
|
112
116
|
|
|
113
|
-
#: models.py:
|
|
117
|
+
#: models.py:187
|
|
114
118
|
msgid "licence"
|
|
115
119
|
msgstr "licence"
|
|
116
120
|
|
|
117
|
-
#: models.py:
|
|
121
|
+
#: models.py:198
|
|
118
122
|
msgid "owner"
|
|
119
123
|
msgstr "vlastník"
|
|
120
124
|
|
|
121
|
-
#: models.py:
|
|
125
|
+
#: models.py:202
|
|
122
126
|
msgid "editors"
|
|
123
127
|
msgstr "přispěvovatelé"
|
|
124
128
|
|
|
125
|
-
#: models.py:
|
|
129
|
+
#: models.py:208
|
|
126
130
|
msgid "team"
|
|
127
|
-
msgstr ""
|
|
131
|
+
msgstr "tým"
|
|
128
132
|
|
|
129
|
-
#: models.py:
|
|
133
|
+
#: models.py:214 models.py:465
|
|
130
134
|
msgid "edit status"
|
|
131
135
|
msgstr "kdo může provádět úpravy"
|
|
132
136
|
|
|
133
|
-
#: models.py:
|
|
137
|
+
#: models.py:219
|
|
134
138
|
msgid "share status"
|
|
135
139
|
msgstr "nastavení sdílení"
|
|
136
140
|
|
|
137
|
-
#: models.py:
|
|
141
|
+
#: models.py:222 models.py:460
|
|
138
142
|
msgid "settings"
|
|
139
143
|
msgstr "nastavení"
|
|
140
144
|
|
|
141
|
-
#: models.py:
|
|
145
|
+
#: models.py:382
|
|
142
146
|
msgid "Clone of"
|
|
143
147
|
msgstr "Kopie"
|
|
144
148
|
|
|
145
|
-
#: models.py:
|
|
149
|
+
#: models.py:455
|
|
146
150
|
msgid "display on load"
|
|
147
151
|
msgstr "zobrazit při startu"
|
|
148
152
|
|
|
149
|
-
#: models.py:
|
|
153
|
+
#: models.py:456
|
|
150
154
|
msgid "Display this layer on load."
|
|
151
155
|
msgstr "Zobrazit tuto vrstvu na startu."
|
|
152
156
|
|
|
@@ -271,7 +275,7 @@ msgstr "Vyzkoušejte si to hned"
|
|
|
271
275
|
#: templates/umap/components/alerts/alert.html:64
|
|
272
276
|
#: templates/umap/components/alerts/alert.html:92
|
|
273
277
|
msgid "Close"
|
|
274
|
-
msgstr ""
|
|
278
|
+
msgstr "Zavřít"
|
|
275
279
|
|
|
276
280
|
#: templates/umap/components/alerts/alert.html:30
|
|
277
281
|
#, python-format
|
|
@@ -279,39 +283,39 @@ msgid ""
|
|
|
279
283
|
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
|
280
284
|
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
|
281
285
|
"target=\"_blank\">log in</a>."
|
|
282
|
-
msgstr ""
|
|
286
|
+
msgstr "Tip pro uživatele: Chcete-li snadno najít zpět své mapy, <a href=\"%(login_url)s\" target=\"_blank\">vytvořte si účet</a> nebo se <a href=\"%(login_url)s\" target=\"_blank\">přihlaste</a>."
|
|
283
287
|
|
|
284
288
|
#: templates/umap/components/alerts/alert.html:35
|
|
285
289
|
msgid "Here is your secret link to edit the map, please keep it safe:"
|
|
286
|
-
msgstr ""
|
|
290
|
+
msgstr "Zde je váš tajný odkaz pro úpravu mapy, prosím, mějte ho v bezpečí:"
|
|
287
291
|
|
|
288
292
|
#: templates/umap/components/alerts/alert.html:39
|
|
289
293
|
msgid "Copy link"
|
|
290
|
-
msgstr ""
|
|
294
|
+
msgstr "Zkopírovat odkaz"
|
|
291
295
|
|
|
292
296
|
#: templates/umap/components/alerts/alert.html:46
|
|
293
297
|
msgid "Enter your email address to receive the secret link:"
|
|
294
|
-
msgstr ""
|
|
298
|
+
msgstr "Zadejte svou e-mailovou adresu, abyste obdrželi tajný odkaz:"
|
|
295
299
|
|
|
296
300
|
#: templates/umap/components/alerts/alert.html:52
|
|
297
301
|
msgid "Email"
|
|
298
|
-
msgstr ""
|
|
302
|
+
msgstr "E-mail"
|
|
299
303
|
|
|
300
304
|
#: templates/umap/components/alerts/alert.html:55
|
|
301
305
|
msgid "Send me the link"
|
|
302
|
-
msgstr ""
|
|
306
|
+
msgstr "Pošlete mi odkaz"
|
|
303
307
|
|
|
304
308
|
#: templates/umap/components/alerts/alert.html:79
|
|
305
309
|
msgid "See their edits in another tab"
|
|
306
|
-
msgstr ""
|
|
310
|
+
msgstr "Zobrazit jejich úpravy na jiné kartě"
|
|
307
311
|
|
|
308
312
|
#: templates/umap/components/alerts/alert.html:82
|
|
309
313
|
msgid "Keep your changes and loose theirs"
|
|
310
|
-
msgstr ""
|
|
314
|
+
msgstr "Ponechte si své změny a opusťte cizí"
|
|
311
315
|
|
|
312
316
|
#: templates/umap/components/alerts/alert.html:85
|
|
313
317
|
msgid "Keep their changes and loose yours"
|
|
314
|
-
msgstr ""
|
|
318
|
+
msgstr "Ponechte si jejich změny a opusťte své"
|
|
315
319
|
|
|
316
320
|
#: templates/umap/content.html:26
|
|
317
321
|
msgid ""
|
|
@@ -330,19 +334,19 @@ msgstr "Toto je ukázková verze, používaná na testování nových vydání u
|
|
|
330
334
|
|
|
331
335
|
#: templates/umap/content_footer.html:5
|
|
332
336
|
msgid "An OpenStreetMap project"
|
|
333
|
-
msgstr ""
|
|
337
|
+
msgstr "Projekt OpenStreetMap"
|
|
334
338
|
|
|
335
339
|
#: templates/umap/content_footer.html:6
|
|
336
340
|
msgid "version"
|
|
337
|
-
msgstr ""
|
|
341
|
+
msgstr "verze"
|
|
338
342
|
|
|
339
343
|
#: templates/umap/content_footer.html:7
|
|
340
344
|
msgid "Hosted by"
|
|
341
|
-
msgstr ""
|
|
345
|
+
msgstr "Běží na"
|
|
342
346
|
|
|
343
347
|
#: templates/umap/content_footer.html:8
|
|
344
348
|
msgid "Contact"
|
|
345
|
-
msgstr ""
|
|
349
|
+
msgstr "Kontakt"
|
|
346
350
|
|
|
347
351
|
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
|
348
352
|
msgid "Help"
|
|
@@ -351,19 +355,19 @@ msgstr "Nápověda"
|
|
|
351
355
|
#: templates/umap/dashboard_menu.html:6
|
|
352
356
|
#, python-format
|
|
353
357
|
msgid "My Maps (%(count)s)"
|
|
354
|
-
msgstr ""
|
|
358
|
+
msgstr "Moje mapy (%(count)s)"
|
|
355
359
|
|
|
356
360
|
#: templates/umap/dashboard_menu.html:8
|
|
357
361
|
msgid "My Maps"
|
|
358
|
-
msgstr ""
|
|
362
|
+
msgstr "Moje mapy"
|
|
359
363
|
|
|
360
|
-
#: templates/umap/dashboard_menu.html:
|
|
364
|
+
#: templates/umap/dashboard_menu.html:12
|
|
361
365
|
msgid "My profile"
|
|
362
366
|
msgstr "Můj profil"
|
|
363
367
|
|
|
364
|
-
#: templates/umap/dashboard_menu.html:
|
|
368
|
+
#: templates/umap/dashboard_menu.html:15
|
|
365
369
|
msgid "My teams"
|
|
366
|
-
msgstr ""
|
|
370
|
+
msgstr "Moje týmy"
|
|
367
371
|
|
|
368
372
|
#: templates/umap/home.html:14
|
|
369
373
|
msgid "Map of the uMaps"
|
|
@@ -377,11 +381,11 @@ msgstr "Inspirujte se, koukněte na mapy jiných"
|
|
|
377
381
|
msgid "You are logged in. Continuing..."
|
|
378
382
|
msgstr "Jste přihlášeni. Jedeme dál ..."
|
|
379
383
|
|
|
380
|
-
#: templates/umap/map_list.html:
|
|
384
|
+
#: templates/umap/map_list.html:11 views.py:433
|
|
381
385
|
msgid "by"
|
|
382
386
|
msgstr ", autor:"
|
|
383
387
|
|
|
384
|
-
#: templates/umap/map_list.html:
|
|
388
|
+
#: templates/umap/map_list.html:20
|
|
385
389
|
msgid "More"
|
|
386
390
|
msgstr "Více"
|
|
387
391
|
|
|
@@ -391,15 +395,15 @@ msgstr "Název"
|
|
|
391
395
|
|
|
392
396
|
#: templates/umap/map_table.html:11
|
|
393
397
|
msgid "Preview"
|
|
394
|
-
msgstr ""
|
|
398
|
+
msgstr "Náhled"
|
|
395
399
|
|
|
396
400
|
#: templates/umap/map_table.html:14
|
|
397
401
|
msgid "Who can see"
|
|
398
|
-
msgstr ""
|
|
402
|
+
msgstr "Kdo může vidět"
|
|
399
403
|
|
|
400
404
|
#: templates/umap/map_table.html:17
|
|
401
405
|
msgid "Who can edit"
|
|
402
|
-
msgstr ""
|
|
406
|
+
msgstr "Kdo může upravit"
|
|
403
407
|
|
|
404
408
|
#: templates/umap/map_table.html:20
|
|
405
409
|
msgid "Last save"
|
|
@@ -415,7 +419,7 @@ msgstr "Akce"
|
|
|
415
419
|
|
|
416
420
|
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
|
417
421
|
msgid "Open preview"
|
|
418
|
-
msgstr ""
|
|
422
|
+
msgstr "Otevřít náhled"
|
|
419
423
|
|
|
420
424
|
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
|
421
425
|
msgid "Share"
|
|
@@ -432,42 +436,42 @@ msgstr "Stažení"
|
|
|
432
436
|
|
|
433
437
|
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
|
434
438
|
msgid "Clone"
|
|
435
|
-
msgstr ""
|
|
439
|
+
msgstr "Klonovat"
|
|
436
440
|
|
|
437
441
|
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
|
438
442
|
msgid "Delete"
|
|
439
|
-
msgstr ""
|
|
443
|
+
msgstr "Smazat"
|
|
440
444
|
|
|
441
445
|
#: templates/umap/map_table.html:117
|
|
442
446
|
msgid "first"
|
|
443
|
-
msgstr ""
|
|
447
|
+
msgstr "první"
|
|
444
448
|
|
|
445
449
|
#: templates/umap/map_table.html:118
|
|
446
450
|
msgid "previous"
|
|
447
|
-
msgstr ""
|
|
451
|
+
msgstr "předchozí"
|
|
448
452
|
|
|
449
453
|
#: templates/umap/map_table.html:126
|
|
450
454
|
#, python-format
|
|
451
455
|
msgid "Page %(maps_number)s of %(num_pages)s"
|
|
452
|
-
msgstr ""
|
|
456
|
+
msgstr "Strana %(maps_number)s z %(num_pages)s"
|
|
453
457
|
|
|
454
458
|
#: templates/umap/map_table.html:131
|
|
455
459
|
msgid "next"
|
|
456
|
-
msgstr ""
|
|
460
|
+
msgstr "další"
|
|
457
461
|
|
|
458
462
|
#: templates/umap/map_table.html:132
|
|
459
463
|
msgid "last"
|
|
460
|
-
msgstr ""
|
|
464
|
+
msgstr "poslední"
|
|
461
465
|
|
|
462
466
|
#: templates/umap/map_table.html:140
|
|
463
467
|
#, python-format
|
|
464
468
|
msgid "Lines per page: %(per_page)s"
|
|
465
|
-
msgstr ""
|
|
469
|
+
msgstr "Řádek na stranu: %(per_page)s"
|
|
466
470
|
|
|
467
471
|
#: templates/umap/map_table.html:145
|
|
468
472
|
#, python-format
|
|
469
473
|
msgid "%(count)s maps"
|
|
470
|
-
msgstr ""
|
|
474
|
+
msgstr "%(count)s map"
|
|
471
475
|
|
|
472
476
|
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
|
473
477
|
msgid "My Dashboard"
|
|
@@ -559,20 +563,20 @@ msgstr "Hledej"
|
|
|
559
563
|
#: templates/umap/team_detail.html:10
|
|
560
564
|
#, python-format
|
|
561
565
|
msgid "Browse %(current_team)s's maps"
|
|
562
|
-
msgstr ""
|
|
566
|
+
msgstr "Prohlížet mapy týmu %(current_team)s"
|
|
563
567
|
|
|
564
568
|
#: templates/umap/team_detail.html:22
|
|
565
569
|
#, python-format
|
|
566
570
|
msgid "%(current_team)s has no public maps."
|
|
567
|
-
msgstr ""
|
|
571
|
+
msgstr "%(current_team)s nemá veřejné mapy."
|
|
568
572
|
|
|
569
573
|
#: templates/umap/team_form.html:24
|
|
570
574
|
msgid "Delete this team"
|
|
571
|
-
msgstr ""
|
|
575
|
+
msgstr "Smazat tento tým"
|
|
572
576
|
|
|
573
577
|
#: templates/umap/team_form.html:47
|
|
574
578
|
msgid "Add user"
|
|
575
|
-
msgstr ""
|
|
579
|
+
msgstr "Přidat uživatele"
|
|
576
580
|
|
|
577
581
|
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
|
578
582
|
msgid "Search my maps"
|
|
@@ -580,12 +584,12 @@ msgstr "Prohledávat moje mapy"
|
|
|
580
584
|
|
|
581
585
|
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
|
582
586
|
msgid "Map’s title"
|
|
583
|
-
msgstr ""
|
|
587
|
+
msgstr "Název mapy"
|
|
584
588
|
|
|
585
589
|
#: templates/umap/user_dashboard.html:30
|
|
586
590
|
#, python-format
|
|
587
591
|
msgid "Download %(count)s maps"
|
|
588
|
-
msgstr ""
|
|
592
|
+
msgstr "Stáhnout %(count)s map"
|
|
589
593
|
|
|
590
594
|
#: templates/umap/user_dashboard.html:40
|
|
591
595
|
msgid "You have no map yet."
|
|
@@ -593,76 +597,76 @@ msgstr "Zatím nemáte žádnou mapu."
|
|
|
593
597
|
|
|
594
598
|
#: templates/umap/user_teams.html:17
|
|
595
599
|
msgid "Users"
|
|
596
|
-
msgstr ""
|
|
600
|
+
msgstr "Uživatelé"
|
|
597
601
|
|
|
598
602
|
#: templates/umap/user_teams.html:48
|
|
599
603
|
msgid "New team"
|
|
600
|
-
msgstr ""
|
|
604
|
+
msgstr "Nový tým"
|
|
601
605
|
|
|
602
606
|
#: views.py:235
|
|
603
607
|
msgid "Cannot delete a team with more than one member"
|
|
604
|
-
msgstr ""
|
|
608
|
+
msgstr "Nelze smazat tým s více než jedním členem"
|
|
605
609
|
|
|
606
610
|
#: views.py:239
|
|
607
611
|
#, python-format
|
|
608
612
|
msgid "Team “%(name)s” has been deleted"
|
|
609
|
-
msgstr ""
|
|
613
|
+
msgstr "Tým \"%(name)s\" byl smazán"
|
|
610
614
|
|
|
611
615
|
#: views.py:438
|
|
612
616
|
msgid "View the map"
|
|
613
617
|
msgstr "Prohlídnout si tuto mapu"
|
|
614
618
|
|
|
615
|
-
#: views.py:
|
|
619
|
+
#: views.py:818
|
|
616
620
|
msgid "See full screen"
|
|
617
|
-
msgstr ""
|
|
621
|
+
msgstr "Zobrazit celou obrazovku"
|
|
618
622
|
|
|
619
|
-
#: views.py:
|
|
623
|
+
#: views.py:950
|
|
620
624
|
msgid "Map editors updated with success!"
|
|
621
625
|
msgstr "Seznam přispěvovatelů byl úspěšně upraven!"
|
|
622
626
|
|
|
623
|
-
#: views.py:
|
|
627
|
+
#: views.py:986
|
|
624
628
|
#, python-format
|
|
625
629
|
msgid "The uMap edit link for your map: %(map_name)s"
|
|
626
630
|
msgstr "Odkaz na úpravu uMap pro vaši mapu: %(map_name)s"
|
|
627
631
|
|
|
628
|
-
#: views.py:
|
|
632
|
+
#: views.py:989
|
|
629
633
|
#, python-format
|
|
630
634
|
msgid "Here is your secret edit link: %(link)s"
|
|
631
635
|
msgstr "Zde je váš tajný odkaz na úpravu: %(link)s"
|
|
632
636
|
|
|
633
|
-
#: views.py:
|
|
637
|
+
#: views.py:996
|
|
634
638
|
#, python-format
|
|
635
639
|
msgid "Can't send email to %(email)s"
|
|
636
|
-
msgstr ""
|
|
640
|
+
msgstr "Nelze odeslat e-mail na %(email)s"
|
|
637
641
|
|
|
638
|
-
#: views.py:
|
|
642
|
+
#: views.py:999
|
|
639
643
|
#, python-format
|
|
640
644
|
msgid "Email sent to %(email)s"
|
|
641
645
|
msgstr "E-mail odeslán na %(email)s"
|
|
642
646
|
|
|
643
|
-
#: views.py:
|
|
647
|
+
#: views.py:1010
|
|
644
648
|
msgid "Only its owner can delete the map."
|
|
645
649
|
msgstr "Jen vlastník může vymzat tuto mapu."
|
|
646
650
|
|
|
647
|
-
#: views.py:
|
|
651
|
+
#: views.py:1013
|
|
648
652
|
msgid "Map successfully deleted."
|
|
649
|
-
msgstr ""
|
|
653
|
+
msgstr "Mapa byla úspěšně smazána."
|
|
650
654
|
|
|
651
|
-
#: views.py:
|
|
655
|
+
#: views.py:1039
|
|
652
656
|
#, python-format
|
|
653
657
|
msgid ""
|
|
654
658
|
"Your map has been cloned! If you want to edit this map from another "
|
|
655
659
|
"computer, please use this link: %(anonymous_url)s"
|
|
656
660
|
msgstr "Byla vytvořena kopie mapy! Pokud chcete upravovat tuto mapu z jiného počítače, použijte tento odkaz: %(anonymous_url)s"
|
|
657
661
|
|
|
658
|
-
#: views.py:
|
|
662
|
+
#: views.py:1044
|
|
659
663
|
msgid "Congratulations, your map has been cloned!"
|
|
660
664
|
msgstr "Gratulujeme, byla vytvořena kopie mapy!"
|
|
661
665
|
|
|
662
|
-
#: views.py:
|
|
666
|
+
#: views.py:1277
|
|
663
667
|
msgid "Layer successfully deleted."
|
|
664
668
|
msgstr "Vrstva úspěšně vymazána."
|
|
665
669
|
|
|
666
|
-
#: views.py:
|
|
670
|
+
#: views.py:1299
|
|
667
671
|
msgid "Permissions updated with success!"
|
|
668
672
|
msgstr "Oprávnění úspěšně aktualizována!"
|
|
Binary file
|