umap-project 2.7.2__py3-none-any.whl → 2.8.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.
Files changed (293) hide show
  1. umap/__init__.py +1 -1
  2. umap/forms.py +4 -14
  3. umap/locale/am_ET/LC_MESSAGES/django.mo +0 -0
  4. umap/locale/am_ET/LC_MESSAGES/django.po +278 -151
  5. umap/locale/ar/LC_MESSAGES/django.mo +0 -0
  6. umap/locale/ar/LC_MESSAGES/django.po +335 -141
  7. umap/locale/bg/LC_MESSAGES/django.mo +0 -0
  8. umap/locale/bg/LC_MESSAGES/django.po +279 -152
  9. umap/locale/br/LC_MESSAGES/django.mo +0 -0
  10. umap/locale/br/LC_MESSAGES/django.po +95 -79
  11. umap/locale/ca/LC_MESSAGES/django.mo +0 -0
  12. umap/locale/ca/LC_MESSAGES/django.po +85 -68
  13. umap/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
  14. umap/locale/cs_CZ/LC_MESSAGES/django.po +78 -66
  15. umap/locale/da/LC_MESSAGES/django.mo +0 -0
  16. umap/locale/da/LC_MESSAGES/django.po +280 -153
  17. umap/locale/de/LC_MESSAGES/django.mo +0 -0
  18. umap/locale/de/LC_MESSAGES/django.po +80 -64
  19. umap/locale/el/LC_MESSAGES/django.mo +0 -0
  20. umap/locale/el/LC_MESSAGES/django.po +82 -66
  21. umap/locale/en/LC_MESSAGES/django.po +73 -61
  22. umap/locale/es/LC_MESSAGES/django.mo +0 -0
  23. umap/locale/es/LC_MESSAGES/django.po +75 -63
  24. umap/locale/et/LC_MESSAGES/django.mo +0 -0
  25. umap/locale/et/LC_MESSAGES/django.po +280 -153
  26. umap/locale/eu/LC_MESSAGES/django.mo +0 -0
  27. umap/locale/eu/LC_MESSAGES/django.po +82 -66
  28. umap/locale/fa_IR/LC_MESSAGES/django.mo +0 -0
  29. umap/locale/fa_IR/LC_MESSAGES/django.po +80 -64
  30. umap/locale/fi/LC_MESSAGES/django.mo +0 -0
  31. umap/locale/fi/LC_MESSAGES/django.po +278 -151
  32. umap/locale/fr/LC_MESSAGES/django.mo +0 -0
  33. umap/locale/fr/LC_MESSAGES/django.po +75 -63
  34. umap/locale/gl/LC_MESSAGES/django.mo +0 -0
  35. umap/locale/gl/LC_MESSAGES/django.po +280 -153
  36. umap/locale/he/LC_MESSAGES/django.mo +0 -0
  37. umap/locale/he/LC_MESSAGES/django.po +281 -154
  38. umap/locale/hu/LC_MESSAGES/django.mo +0 -0
  39. umap/locale/hu/LC_MESSAGES/django.po +80 -64
  40. umap/locale/is/LC_MESSAGES/django.mo +0 -0
  41. umap/locale/is/LC_MESSAGES/django.po +280 -153
  42. umap/locale/it/LC_MESSAGES/django.mo +0 -0
  43. umap/locale/it/LC_MESSAGES/django.po +82 -66
  44. umap/locale/ja/LC_MESSAGES/django.mo +0 -0
  45. umap/locale/ja/LC_MESSAGES/django.po +280 -153
  46. umap/locale/ko/LC_MESSAGES/django.mo +0 -0
  47. umap/locale/ko/LC_MESSAGES/django.po +280 -153
  48. umap/locale/lt/LC_MESSAGES/django.mo +0 -0
  49. umap/locale/lt/LC_MESSAGES/django.po +280 -153
  50. umap/locale/ms/LC_MESSAGES/django.mo +0 -0
  51. umap/locale/ms/LC_MESSAGES/django.po +82 -66
  52. umap/locale/nl/LC_MESSAGES/django.mo +0 -0
  53. umap/locale/nl/LC_MESSAGES/django.po +280 -153
  54. umap/locale/pl/LC_MESSAGES/django.mo +0 -0
  55. umap/locale/pl/LC_MESSAGES/django.po +82 -66
  56. umap/locale/pt/LC_MESSAGES/django.mo +0 -0
  57. umap/locale/pt/LC_MESSAGES/django.po +75 -63
  58. umap/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  59. umap/locale/pt_BR/LC_MESSAGES/django.po +280 -153
  60. umap/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
  61. umap/locale/pt_PT/LC_MESSAGES/django.po +280 -153
  62. umap/locale/ru/LC_MESSAGES/django.mo +0 -0
  63. umap/locale/ru/LC_MESSAGES/django.po +280 -153
  64. umap/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
  65. umap/locale/sk_SK/LC_MESSAGES/django.po +280 -153
  66. umap/locale/sl/LC_MESSAGES/django.mo +0 -0
  67. umap/locale/sl/LC_MESSAGES/django.po +280 -153
  68. umap/locale/sr/LC_MESSAGES/django.mo +0 -0
  69. umap/locale/sr/LC_MESSAGES/django.po +280 -153
  70. umap/locale/sv/LC_MESSAGES/django.mo +0 -0
  71. umap/locale/sv/LC_MESSAGES/django.po +81 -65
  72. umap/locale/th_TH/LC_MESSAGES/django.mo +0 -0
  73. umap/locale/th_TH/LC_MESSAGES/django.po +257 -185
  74. umap/locale/tr/LC_MESSAGES/django.mo +0 -0
  75. umap/locale/tr/LC_MESSAGES/django.po +280 -153
  76. umap/locale/uk_UA/LC_MESSAGES/django.mo +0 -0
  77. umap/locale/uk_UA/LC_MESSAGES/django.po +280 -153
  78. umap/locale/vi/LC_MESSAGES/django.mo +0 -0
  79. umap/locale/vi/LC_MESSAGES/django.po +278 -151
  80. umap/locale/zh/LC_MESSAGES/django.mo +0 -0
  81. umap/locale/zh/LC_MESSAGES/django.po +278 -151
  82. umap/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
  83. umap/locale/zh_TW/LC_MESSAGES/django.po +97 -81
  84. umap/management/commands/empty_trash.py +35 -0
  85. umap/management/commands/migrate_to_S3.py +29 -0
  86. umap/migrations/0023_alter_datalayer_uuid.py +19 -0
  87. umap/migrations/0024_alter_map_share_status.py +30 -0
  88. umap/migrations/0025_alter_datalayer_geojson.py +24 -0
  89. umap/models.py +68 -116
  90. umap/settings/base.py +23 -3
  91. umap/settings/local_s3.py +45 -0
  92. umap/static/umap/base.css +3 -603
  93. umap/static/umap/content.css +5 -3
  94. umap/static/umap/css/bar.css +202 -0
  95. umap/static/umap/css/form.css +620 -0
  96. umap/static/umap/css/icon.css +21 -1
  97. umap/static/umap/css/popup.css +125 -0
  98. umap/static/umap/img/16-white.svg +16 -4
  99. umap/static/umap/img/16.svg +1 -1
  100. umap/static/umap/img/source/16-white.svg +46 -45
  101. umap/static/umap/img/source/16.svg +1 -753
  102. umap/static/umap/js/components/fragment.js +3 -1
  103. umap/static/umap/js/modules/browser.js +20 -19
  104. umap/static/umap/js/modules/caption.js +21 -22
  105. umap/static/umap/js/modules/data/features.js +120 -78
  106. umap/static/umap/js/modules/data/layer.js +195 -153
  107. umap/static/umap/js/modules/facets.js +9 -9
  108. umap/static/umap/js/modules/formatter.js +5 -5
  109. umap/static/umap/js/modules/global.js +4 -52
  110. umap/static/umap/js/modules/help.js +18 -21
  111. umap/static/umap/js/modules/importer.js +133 -56
  112. umap/static/umap/js/modules/importers/cadastrefr.js +4 -0
  113. umap/static/umap/js/modules/importers/geodatamine.js +3 -3
  114. umap/static/umap/js/modules/importers/overpass.js +5 -0
  115. umap/static/umap/js/modules/permissions.js +85 -87
  116. umap/static/umap/js/modules/rendering/icon.js +2 -1
  117. umap/static/umap/js/modules/rendering/layers/base.js +15 -15
  118. umap/static/umap/js/modules/rendering/layers/classified.js +1 -1
  119. umap/static/umap/js/modules/rendering/layers/cluster.js +1 -1
  120. umap/static/umap/js/modules/rendering/layers/heat.js +1 -1
  121. umap/static/umap/js/modules/rendering/map.js +390 -0
  122. umap/static/umap/js/modules/rendering/popup.js +19 -19
  123. umap/static/umap/js/modules/rendering/template.js +88 -21
  124. umap/static/umap/js/modules/rendering/ui.js +63 -14
  125. umap/static/umap/js/modules/request.js +2 -2
  126. umap/static/umap/js/modules/rules.js +22 -25
  127. umap/static/umap/js/modules/saving.js +47 -0
  128. umap/static/umap/js/modules/schema.js +6 -0
  129. umap/static/umap/js/modules/share.js +21 -24
  130. umap/static/umap/js/modules/slideshow.js +24 -20
  131. umap/static/umap/js/modules/sync/updaters.js +7 -9
  132. umap/static/umap/js/modules/tableeditor.js +20 -19
  133. umap/static/umap/js/modules/ui/bar.js +196 -0
  134. umap/static/umap/js/modules/ui/dialog.js +6 -1
  135. umap/static/umap/js/modules/ui/panel.js +10 -9
  136. umap/static/umap/js/modules/umap.js +1691 -0
  137. umap/static/umap/js/modules/urls.js +2 -2
  138. umap/static/umap/js/modules/utils.js +22 -6
  139. umap/static/umap/js/umap.controls.js +81 -305
  140. umap/static/umap/js/umap.core.js +29 -50
  141. umap/static/umap/js/umap.forms.js +78 -27
  142. umap/static/umap/keycloak.png +0 -0
  143. umap/static/umap/locale/am_ET.js +26 -10
  144. umap/static/umap/locale/am_ET.json +26 -10
  145. umap/static/umap/locale/ar.js +26 -10
  146. umap/static/umap/locale/ar.json +26 -10
  147. umap/static/umap/locale/ast.js +26 -10
  148. umap/static/umap/locale/ast.json +26 -10
  149. umap/static/umap/locale/bg.js +26 -10
  150. umap/static/umap/locale/bg.json +26 -10
  151. umap/static/umap/locale/br.js +27 -20
  152. umap/static/umap/locale/br.json +27 -20
  153. umap/static/umap/locale/ca.js +32 -29
  154. umap/static/umap/locale/ca.json +32 -29
  155. umap/static/umap/locale/cs_CZ.js +24 -17
  156. umap/static/umap/locale/cs_CZ.json +24 -17
  157. umap/static/umap/locale/da.js +26 -10
  158. umap/static/umap/locale/da.json +26 -10
  159. umap/static/umap/locale/de.js +21 -14
  160. umap/static/umap/locale/de.json +21 -14
  161. umap/static/umap/locale/el.js +28 -12
  162. umap/static/umap/locale/el.json +28 -12
  163. umap/static/umap/locale/en.js +14 -9
  164. umap/static/umap/locale/en.json +14 -9
  165. umap/static/umap/locale/en_US.json +26 -10
  166. umap/static/umap/locale/es.js +16 -13
  167. umap/static/umap/locale/es.json +16 -13
  168. umap/static/umap/locale/et.js +26 -10
  169. umap/static/umap/locale/et.json +26 -10
  170. umap/static/umap/locale/eu.js +16 -9
  171. umap/static/umap/locale/eu.json +16 -9
  172. umap/static/umap/locale/fa_IR.js +16 -9
  173. umap/static/umap/locale/fa_IR.json +16 -9
  174. umap/static/umap/locale/fi.js +26 -10
  175. umap/static/umap/locale/fi.json +26 -10
  176. umap/static/umap/locale/fr.js +14 -9
  177. umap/static/umap/locale/fr.json +14 -9
  178. umap/static/umap/locale/gl.js +26 -10
  179. umap/static/umap/locale/gl.json +26 -10
  180. umap/static/umap/locale/he.js +26 -10
  181. umap/static/umap/locale/he.json +26 -10
  182. umap/static/umap/locale/hr.js +26 -10
  183. umap/static/umap/locale/hr.json +26 -10
  184. umap/static/umap/locale/hu.js +16 -9
  185. umap/static/umap/locale/hu.json +16 -9
  186. umap/static/umap/locale/id.js +26 -10
  187. umap/static/umap/locale/id.json +26 -10
  188. umap/static/umap/locale/is.js +26 -10
  189. umap/static/umap/locale/is.json +26 -10
  190. umap/static/umap/locale/it.js +26 -10
  191. umap/static/umap/locale/it.json +26 -10
  192. umap/static/umap/locale/ja.js +26 -10
  193. umap/static/umap/locale/ja.json +26 -10
  194. umap/static/umap/locale/ko.js +26 -10
  195. umap/static/umap/locale/ko.json +26 -10
  196. umap/static/umap/locale/lt.js +26 -10
  197. umap/static/umap/locale/lt.json +26 -10
  198. umap/static/umap/locale/ms.js +28 -12
  199. umap/static/umap/locale/ms.json +28 -12
  200. umap/static/umap/locale/nl.js +28 -12
  201. umap/static/umap/locale/nl.json +28 -12
  202. umap/static/umap/locale/no.js +26 -10
  203. umap/static/umap/locale/no.json +26 -10
  204. umap/static/umap/locale/pl.js +28 -12
  205. umap/static/umap/locale/pl.json +28 -12
  206. umap/static/umap/locale/pl_PL.json +26 -10
  207. umap/static/umap/locale/pt.js +16 -9
  208. umap/static/umap/locale/pt.json +16 -9
  209. umap/static/umap/locale/pt_BR.js +26 -10
  210. umap/static/umap/locale/pt_BR.json +26 -10
  211. umap/static/umap/locale/pt_PT.js +16 -9
  212. umap/static/umap/locale/pt_PT.json +16 -9
  213. umap/static/umap/locale/ro.js +26 -10
  214. umap/static/umap/locale/ro.json +26 -10
  215. umap/static/umap/locale/ru.js +26 -10
  216. umap/static/umap/locale/ru.json +26 -10
  217. umap/static/umap/locale/si.js +7 -7
  218. umap/static/umap/locale/si.json +7 -7
  219. umap/static/umap/locale/sk_SK.js +26 -10
  220. umap/static/umap/locale/sk_SK.json +26 -10
  221. umap/static/umap/locale/sl.js +26 -10
  222. umap/static/umap/locale/sl.json +26 -10
  223. umap/static/umap/locale/sr.js +26 -10
  224. umap/static/umap/locale/sr.json +26 -10
  225. umap/static/umap/locale/sv.js +27 -11
  226. umap/static/umap/locale/sv.json +27 -11
  227. umap/static/umap/locale/th_TH.js +28 -12
  228. umap/static/umap/locale/th_TH.json +28 -12
  229. umap/static/umap/locale/tr.js +26 -10
  230. umap/static/umap/locale/tr.json +26 -10
  231. umap/static/umap/locale/uk_UA.js +26 -10
  232. umap/static/umap/locale/uk_UA.json +26 -10
  233. umap/static/umap/locale/vi.js +26 -10
  234. umap/static/umap/locale/vi.json +26 -10
  235. umap/static/umap/locale/vi_VN.json +26 -10
  236. umap/static/umap/locale/zh.js +26 -10
  237. umap/static/umap/locale/zh.json +26 -10
  238. umap/static/umap/locale/zh_CN.json +26 -10
  239. umap/static/umap/locale/zh_TW.Big5.json +26 -10
  240. umap/static/umap/locale/zh_TW.js +34 -27
  241. umap/static/umap/locale/zh_TW.json +34 -27
  242. umap/static/umap/map.css +39 -530
  243. umap/static/umap/unittests/URLs.js +15 -15
  244. umap/static/umap/unittests/utils.js +23 -1
  245. umap/static/umap/vars.css +2 -1
  246. umap/static/umap/vendors/formbuilder/Leaflet.FormBuilder.js +5 -1
  247. umap/storage/__init__.py +3 -0
  248. umap/storage/fs.py +101 -0
  249. umap/storage/s3.py +61 -0
  250. umap/templates/base.html +2 -0
  251. umap/templates/registration/login.html +7 -6
  252. umap/templates/umap/components/alerts/alert.html +4 -0
  253. umap/templates/umap/css.html +6 -0
  254. umap/templates/umap/js.html +3 -2
  255. umap/templates/umap/map_init.html +6 -5
  256. umap/templates/umap/user_dashboard.html +20 -19
  257. umap/tests/base.py +11 -1
  258. umap/tests/fixtures/empty_tile.png +0 -0
  259. umap/tests/fixtures/test_upload_simple_marker.json +19 -0
  260. umap/tests/integration/conftest.py +4 -1
  261. umap/tests/integration/test_anonymous_owned_map.py +18 -10
  262. umap/tests/integration/test_browser.py +16 -1
  263. umap/tests/integration/test_dashboard.py +1 -1
  264. umap/tests/integration/test_edit_datalayer.py +29 -7
  265. umap/tests/integration/test_import.py +28 -4
  266. umap/tests/integration/test_optimistic_merge.py +31 -8
  267. umap/tests/integration/test_owned_map.py +22 -16
  268. umap/tests/integration/test_popup.py +44 -0
  269. umap/tests/integration/test_save.py +35 -0
  270. umap/tests/integration/test_view_marker.py +12 -0
  271. umap/tests/integration/test_view_polyline.py +257 -0
  272. umap/tests/integration/test_websocket_sync.py +81 -9
  273. umap/tests/test_dashboard.py +82 -0
  274. umap/tests/test_datalayer.py +6 -7
  275. umap/tests/test_datalayer_s3.py +135 -0
  276. umap/tests/test_datalayer_views.py +28 -10
  277. umap/tests/test_empty_trash.py +34 -0
  278. umap/tests/test_map.py +12 -3
  279. umap/tests/test_map_views.py +69 -37
  280. umap/tests/test_statics.py +1 -1
  281. umap/tests/test_team_views.py +35 -1
  282. umap/tests/test_views.py +31 -52
  283. umap/urls.py +3 -3
  284. umap/views.py +126 -90
  285. {umap_project-2.7.2.dist-info → umap_project-2.8.0.dist-info}/METADATA +16 -14
  286. {umap_project-2.7.2.dist-info → umap_project-2.8.0.dist-info}/RECORD +290 -269
  287. {umap_project-2.7.2.dist-info → umap_project-2.8.0.dist-info}/WHEEL +1 -1
  288. umap/management/commands/purge_purgatory.py +0 -28
  289. umap/static/umap/js/umap.js +0 -1903
  290. umap/tests/test_purge_purgatory.py +0 -25
  291. /umap/{storage.py → storage/staticfiles.py} +0 -0
  292. {umap_project-2.7.2.dist-info → umap_project-2.8.0.dist-info}/entry_points.txt +0 -0
  293. {umap_project-2.7.2.dist-info → umap_project-2.8.0.dist-info}/licenses/LICENSE +0 -0
@@ -8,7 +8,7 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: uMap\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2024-02-15 13:53+0000\n"
11
+ "POT-Creation-Date: 2024-12-11 17:05+0000\n"
12
12
  "PO-Revision-Date: 2013-11-22 14:00+0000\n"
13
13
  "Last-Translator: Thanh Le Viet <lethanhx2k@gmail.com>, 2014\n"
14
14
  "Language-Team: Vietnamese (http://app.transifex.com/openstreetmap/umap/language/vi/)\n"
@@ -18,258 +18,316 @@ msgstr ""
18
18
  "Language: vi\n"
19
19
  "Plural-Forms: nplurals=1; plural=0;\n"
20
20
 
21
- #: forms.py:44 forms.py:70
22
- msgid "Only editable with secret edit link"
23
- msgstr "Chỉ có thể sửa với liên kết chỉnh sửa bí mật"
24
-
25
- #: forms.py:45 forms.py:71
26
- msgid "Everyone can edit"
27
- msgstr "Ai cũng có thể chỉnh sửa"
28
-
29
- #: forms.py:69 models.py:371
30
- msgid "Inherit"
21
+ #: admin.py:16
22
+ msgid "CSV Export"
31
23
  msgstr ""
32
24
 
33
25
  #: middleware.py:13
34
26
  msgid "Site is readonly for maintenance"
35
27
  msgstr ""
36
28
 
37
- #: models.py:50
29
+ #: models.py:60 models.py:79
38
30
  msgid "name"
39
31
  msgstr "tên"
40
32
 
41
- #: models.py:81
33
+ #: models.py:62 models.py:475
34
+ msgid "description"
35
+ msgstr "mô tả"
36
+
37
+ #: models.py:110
42
38
  msgid "details"
43
39
  msgstr "chi tiết"
44
40
 
45
- #: models.py:82
41
+ #: models.py:111
46
42
  msgid "Link to a page where the licence is detailed."
47
43
  msgstr "Liên kết đến trang có chi tiết về bản quyền"
48
44
 
49
- #: models.py:92
45
+ #: models.py:121
50
46
  msgid "URL template using OSM tile format"
51
47
  msgstr "Mẫu URL sử dụng định dạng tile của OSM"
52
48
 
53
- #: models.py:98
49
+ #: models.py:127
54
50
  msgid "Order of the tilelayers in the edit box"
55
51
  msgstr "Thứ tự các titlelayer trong hộp chỉnh sửa"
56
52
 
57
- #: models.py:144 models.py:372
53
+ #: models.py:175 models.py:469
54
+ msgid "Only editable with secret edit link"
55
+ msgstr "Chỉ có thể sửa với liên kết chỉnh sửa bí mật"
56
+
57
+ #: models.py:176 models.py:470
58
+ msgid "Everyone can edit"
59
+ msgstr "Ai cũng có thể chỉnh sửa"
60
+
61
+ #: models.py:179 models.py:463
58
62
  msgid "Everyone"
59
63
  msgstr ""
60
64
 
61
- #: models.py:145 models.py:151 models.py:373
62
- msgid "Editors only"
65
+ #: models.py:180 models.py:189 models.py:464
66
+ msgid "Editors and team only"
63
67
  msgstr ""
64
68
 
65
- #: models.py:146 models.py:374
69
+ #: models.py:181 models.py:465
66
70
  msgid "Owner only"
67
71
  msgstr ""
68
72
 
69
- #: models.py:149
73
+ #: models.py:184
74
+ msgid "Draft (private)"
75
+ msgstr ""
76
+
77
+ #: models.py:185
70
78
  msgid "Everyone (public)"
71
79
  msgstr ""
72
80
 
73
- #: models.py:150
81
+ #: models.py:188
74
82
  msgid "Anyone with link"
75
83
  msgstr ""
76
84
 
77
- #: models.py:152
85
+ #: models.py:190
78
86
  msgid "Blocked"
79
87
  msgstr ""
80
88
 
81
- #: models.py:155 models.py:378
82
- msgid "description"
83
- msgstr "mô tả"
89
+ #: models.py:191
90
+ msgid "Deleted"
91
+ msgstr ""
84
92
 
85
- #: models.py:156
93
+ #: models.py:194
86
94
  msgid "center"
87
95
  msgstr "trung tâm"
88
96
 
89
- #: models.py:157
97
+ #: models.py:195
90
98
  msgid "zoom"
91
99
  msgstr "thu phóng"
92
100
 
93
- #: models.py:159
101
+ #: models.py:197
94
102
  msgid "locate"
95
103
  msgstr "xác định"
96
104
 
97
- #: models.py:159
105
+ #: models.py:197
98
106
  msgid "Locate user on load?"
99
107
  msgstr "Xác định người dùng khi tải trang?"
100
108
 
101
- #: models.py:163
109
+ #: models.py:201
102
110
  msgid "Choose the map licence."
103
111
  msgstr "Chọn bản quyền cho bản đồ"
104
112
 
105
- #: models.py:164
113
+ #: models.py:202
106
114
  msgid "licence"
107
115
  msgstr "bản quyền"
108
116
 
109
- #: models.py:175
117
+ #: models.py:213
110
118
  msgid "owner"
111
119
  msgstr "chủ nhân"
112
120
 
113
- #: models.py:179
121
+ #: models.py:217
114
122
  msgid "editors"
115
123
  msgstr "người chỉnh sửa"
116
124
 
117
- #: models.py:184 models.py:392
125
+ #: models.py:223
126
+ msgid "team"
127
+ msgstr ""
128
+
129
+ #: models.py:229 models.py:491
118
130
  msgid "edit status"
119
131
  msgstr "trạng thái chỉnh sửa"
120
132
 
121
- #: models.py:189
133
+ #: models.py:234
122
134
  msgid "share status"
123
135
  msgstr "chia sẻ trạng thái"
124
136
 
125
- #: models.py:192 models.py:387
137
+ #: models.py:237 models.py:486
126
138
  msgid "settings"
127
139
  msgstr "thiết lập"
128
140
 
129
- #: models.py:320
141
+ #: models.py:402
130
142
  msgid "Clone of"
131
143
  msgstr "Sao chép của"
132
144
 
133
- #: models.py:382
145
+ #: models.py:462 models.py:468
146
+ msgid "Inherit"
147
+ msgstr ""
148
+
149
+ #: models.py:481
134
150
  msgid "display on load"
135
151
  msgstr "hiển thị khi tải trang"
136
152
 
137
- #: models.py:383
153
+ #: models.py:482
138
154
  msgid "Display this layer on load."
139
155
  msgstr "Hiển thị layer này khi tải trang"
140
156
 
141
- #: templates/404.html:6
157
+ #: templates/404.html:8
142
158
  msgid "Take me to the home page"
143
159
  msgstr ""
144
160
 
145
- #: templates/auth/user_detail.html:5
161
+ #: templates/auth/user_detail.html:8
146
162
  #, python-format
147
163
  msgid "Browse %(current_user)s's maps"
148
164
  msgstr "Xem bản đồ của %(current_user)s"
149
165
 
150
- #: templates/auth/user_detail.html:12
166
+ #: templates/auth/user_detail.html:17
151
167
  #, python-format
152
168
  msgid "%(current_user)s has no maps."
153
169
  msgstr ""
154
170
 
155
- #: templates/auth/user_form.html:6
156
- msgid "My Maps"
157
- msgstr ""
158
-
159
- #: templates/auth/user_form.html:7
160
- msgid "My Profile"
161
- msgstr ""
162
-
163
- #: templates/auth/user_form.html:20
171
+ #: templates/auth/user_form.html:21 templates/umap/team_form.html:21
164
172
  msgid "Save"
165
173
  msgstr ""
166
174
 
167
- #: templates/auth/user_form.html:25
175
+ #: templates/auth/user_form.html:27
168
176
  msgid "Your current providers"
169
177
  msgstr ""
170
178
 
171
- #: templates/auth/user_form.html:31
179
+ #: templates/auth/user_form.html:39
172
180
  msgid "Connect to another provider"
173
181
  msgstr ""
174
182
 
175
- #: templates/auth/user_form.html:33
183
+ #: templates/auth/user_form.html:42
176
184
  msgid ""
177
185
  "It's a good habit to connect your account to more than one provider, in case"
178
186
  " one provider becomes unavailable, temporarily or even permanently."
179
187
  msgstr ""
180
188
 
181
- #: templates/auth/user_stars.html:5
189
+ #: templates/auth/user_stars.html:8
182
190
  #, python-format
183
191
  msgid "Browse %(current_user)s's starred maps"
184
192
  msgstr ""
185
193
 
186
- #: templates/auth/user_stars.html:12
194
+ #: templates/auth/user_stars.html:17
187
195
  #, python-format
188
196
  msgid "%(current_user)s has no starred maps yet."
189
197
  msgstr ""
190
198
 
191
- #: templates/base.html:12
199
+ #: templates/base.html:13
192
200
  msgid ""
193
201
  "uMap lets you create maps with OpenStreetMap layers in a minute and embed "
194
202
  "them in your site."
195
203
  msgstr ""
196
204
 
197
- #: templates/registration/login.html:16
198
- msgid "Please log in with your account"
205
+ #: templates/registration/login.html:6 templates/registration/login.html:46
206
+ msgid "Login"
207
+ msgstr ""
208
+
209
+ #: templates/registration/login.html:22
210
+ msgid "To save and easily find your maps, identify yourself."
211
+ msgstr ""
212
+
213
+ #: templates/registration/login.html:25
214
+ msgid "Please log in with your account:"
199
215
  msgstr ""
200
216
 
201
- #: templates/registration/login.html:28
217
+ #: templates/registration/login.html:42
202
218
  msgid "Username"
203
219
  msgstr ""
204
220
 
205
- #: templates/registration/login.html:31
221
+ #: templates/registration/login.html:45
206
222
  msgid "Password"
207
223
  msgstr ""
208
224
 
209
- #: templates/registration/login.html:32
210
- msgid "Login"
225
+ #: templates/registration/login.html:52
226
+ msgid "Please choose a provider:"
211
227
  msgstr ""
212
228
 
213
- #: templates/registration/login.html:37
214
- msgid "Please choose a provider"
215
- msgstr "Hãy chọn một nhà cung cấp"
216
-
217
- #: templates/umap/about_summary.html:11
229
+ #: templates/umap/about_summary.html:12
218
230
  #, python-format
219
231
  msgid ""
220
232
  "uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
221
233
  "layers in a minute and embed them in your site."
222
234
  msgstr ""
223
235
 
224
- #: templates/umap/about_summary.html:21
236
+ #: templates/umap/about_summary.html:23
225
237
  msgid "Choose the layers of your map"
226
238
  msgstr "Chọn layer của bản đồ"
227
239
 
228
- #: templates/umap/about_summary.html:22
240
+ #: templates/umap/about_summary.html:26
229
241
  msgid "Add POIs: markers, lines, polygons..."
230
242
  msgstr "Thêm POI: điểm, đường, vùng..."
231
243
 
232
- #: templates/umap/about_summary.html:23
244
+ #: templates/umap/about_summary.html:29
233
245
  msgid "Manage POIs colours and icons"
234
246
  msgstr "Quản lý màu và biểu tượng POI"
235
247
 
236
- #: templates/umap/about_summary.html:24
248
+ #: templates/umap/about_summary.html:32
237
249
  msgid "Manage map options: display a minimap, locate user on load…"
238
250
  msgstr "Quản lý thiết lập bản đồ: hiển thị bản đồ con, xác định vị trí người dùng khi tải bản đồ..."
239
251
 
240
- #: templates/umap/about_summary.html:25
252
+ #: templates/umap/about_summary.html:35
241
253
  msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
242
254
  msgstr "Import hàng loạt dữ liệu địa lý (geojson, gpx, kml, osm...)"
243
255
 
244
- #: templates/umap/about_summary.html:26
256
+ #: templates/umap/about_summary.html:38
245
257
  msgid "Choose the license for your data"
246
258
  msgstr "Chọn bản quyền cho dữ liệu của bạn"
247
259
 
248
- #: templates/umap/about_summary.html:27
260
+ #: templates/umap/about_summary.html:41
249
261
  msgid "Embed and share your map"
250
262
  msgstr "Chèn và chia sẻ bản đồ"
251
263
 
252
- #: templates/umap/about_summary.html:37
264
+ #: templates/umap/about_summary.html:52
253
265
  #, python-format
254
266
  msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
255
267
  msgstr "Và nó là <a href=\"%(repo_url)s\">mã nguồn mở <a>! "
256
268
 
257
- #: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
258
- #: templates/umap/user_dashboard.html:42
269
+ #: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
270
+ #: templates/umap/user_dashboard.html:40
259
271
  msgid "Create a map"
260
272
  msgstr "Tạo bản đồ"
261
273
 
262
- #: templates/umap/about_summary.html:51
274
+ #: templates/umap/about_summary.html:66
263
275
  msgid "Play with the demo"
264
276
  msgstr "Xem thử demo"
265
277
 
266
- #: templates/umap/content.html:22
278
+ #: templates/umap/components/alerts/alert.html:15
279
+ #: templates/umap/components/alerts/alert.html:64
280
+ #: templates/umap/components/alerts/alert.html:92
281
+ msgid "Close"
282
+ msgstr ""
283
+
284
+ #: templates/umap/components/alerts/alert.html:30
285
+ #, python-format
286
+ msgid ""
287
+ "Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
288
+ "target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
289
+ "target=\"_blank\">log in</a>."
290
+ msgstr ""
291
+
292
+ #: templates/umap/components/alerts/alert.html:35
293
+ msgid "Here is your secret link to edit the map, please keep it safe:"
294
+ msgstr ""
295
+
296
+ #: templates/umap/components/alerts/alert.html:39
297
+ msgid "Copy link"
298
+ msgstr ""
299
+
300
+ #: templates/umap/components/alerts/alert.html:46
301
+ msgid "Enter your email address to receive the secret link:"
302
+ msgstr ""
303
+
304
+ #: templates/umap/components/alerts/alert.html:52
305
+ msgid "Email"
306
+ msgstr ""
307
+
308
+ #: templates/umap/components/alerts/alert.html:55
309
+ msgid "Send me the link"
310
+ msgstr ""
311
+
312
+ #: templates/umap/components/alerts/alert.html:79
313
+ msgid "See their edits in another tab"
314
+ msgstr ""
315
+
316
+ #: templates/umap/components/alerts/alert.html:82
317
+ msgid "Keep your changes and loose theirs"
318
+ msgstr ""
319
+
320
+ #: templates/umap/components/alerts/alert.html:85
321
+ msgid "Keep their changes and loose yours"
322
+ msgstr ""
323
+
324
+ #: templates/umap/content.html:26
267
325
  msgid ""
268
326
  "This instance of uMap is currently in read only mode, no creation/edit is "
269
327
  "allowed."
270
328
  msgstr ""
271
329
 
272
- #: templates/umap/content.html:30
330
+ #: templates/umap/content.html:34
273
331
  #, python-format
274
332
  msgid ""
275
333
  "This is a demo instance, used for tests and pre-rolling releases. If you "
@@ -278,269 +336,338 @@ msgid ""
278
336
  "instance, it's <a href=\"%(repo_url)s\">open source</a>!"
279
337
  msgstr "Đây là một bản demo được dùng để kiểm tra và xuất bản thử. Nếu bạn cần một bản ổ định, hãy sử dụng <a href=\"%(stable_url)s\">%(stable_url)s</a>. Bạn cũng có thể chạy nó trên máy tính của mình vì nó là phần mềm <a href=\"%(repo_url)s\">nguồn mở</a>"
280
338
 
281
- #: templates/umap/home.html:8
339
+ #: templates/umap/content_footer.html:5
340
+ msgid "An OpenStreetMap project"
341
+ msgstr ""
342
+
343
+ #: templates/umap/content_footer.html:6
344
+ msgid "version"
345
+ msgstr ""
346
+
347
+ #: templates/umap/content_footer.html:7
348
+ msgid "Hosted by"
349
+ msgstr ""
350
+
351
+ #: templates/umap/content_footer.html:8
352
+ msgid "Contact"
353
+ msgstr ""
354
+
355
+ #: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
356
+ msgid "Help"
357
+ msgstr ""
358
+
359
+ #: templates/umap/dashboard_menu.html:6
360
+ #, python-format
361
+ msgid "My Maps (%(count)s)"
362
+ msgstr ""
363
+
364
+ #: templates/umap/dashboard_menu.html:8
365
+ msgid "My Maps"
366
+ msgstr ""
367
+
368
+ #: templates/umap/dashboard_menu.html:12
369
+ msgid "My profile"
370
+ msgstr ""
371
+
372
+ #: templates/umap/dashboard_menu.html:15
373
+ msgid "My teams"
374
+ msgstr ""
375
+
376
+ #: templates/umap/home.html:14
282
377
  msgid "Map of the uMaps"
283
378
  msgstr "Bản đồ của uMaps"
284
379
 
285
- #: templates/umap/home.html:14
380
+ #: templates/umap/home.html:24
286
381
  msgid "Get inspired, browse maps"
287
382
  msgstr "Tham khảo các bản đồ"
288
383
 
289
- #: templates/umap/login_popup_end.html:2
384
+ #: templates/umap/login_popup_end.html:4
290
385
  msgid "You are logged in. Continuing..."
291
386
  msgstr "Bạn đã đăng nhập, Đang tiếp tục..."
292
387
 
293
- #: templates/umap/map_list.html:9 views.py:341
388
+ #: templates/umap/map_list.html:11 views.py:433
294
389
  msgid "by"
295
390
  msgstr ""
296
391
 
297
- #: templates/umap/map_list.html:17
392
+ #: templates/umap/map_list.html:20
298
393
  msgid "More"
299
394
  msgstr "Thêm"
300
395
 
301
- #: templates/umap/map_table.html:6
396
+ #: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
302
397
  msgid "Name"
303
398
  msgstr ""
304
399
 
305
- #: templates/umap/map_table.html:7
400
+ #: templates/umap/map_table.html:11
306
401
  msgid "Preview"
307
402
  msgstr ""
308
403
 
309
- #: templates/umap/map_table.html:8
404
+ #: templates/umap/map_table.html:14
310
405
  msgid "Who can see"
311
406
  msgstr ""
312
407
 
313
- #: templates/umap/map_table.html:9
408
+ #: templates/umap/map_table.html:17
314
409
  msgid "Who can edit"
315
410
  msgstr ""
316
411
 
317
- #: templates/umap/map_table.html:10
412
+ #: templates/umap/map_table.html:20
318
413
  msgid "Last save"
319
414
  msgstr ""
320
415
 
321
- #: templates/umap/map_table.html:11
416
+ #: templates/umap/map_table.html:23
322
417
  msgid "Owner"
323
418
  msgstr ""
324
419
 
325
- #: templates/umap/map_table.html:12
420
+ #: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
326
421
  msgid "Actions"
327
422
  msgstr ""
328
423
 
329
- #: templates/umap/map_table.html:25 templates/umap/map_table.html:27
424
+ #: templates/umap/map_table.html:41 templates/umap/map_table.html:43
330
425
  msgid "Open preview"
331
426
  msgstr ""
332
427
 
333
- #: templates/umap/map_table.html:46 templates/umap/map_table.html:48
428
+ #: templates/umap/map_table.html:72 templates/umap/map_table.html:74
334
429
  msgid "Share"
335
430
  msgstr ""
336
431
 
337
- #: templates/umap/map_table.html:51 templates/umap/map_table.html:53
432
+ #: templates/umap/map_table.html:78 templates/umap/map_table.html:80
433
+ #: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
338
434
  msgid "Edit"
339
435
  msgstr ""
340
436
 
341
- #: templates/umap/map_table.html:56 templates/umap/map_table.html:58
437
+ #: templates/umap/map_table.html:84 templates/umap/map_table.html:86
342
438
  msgid "Download"
343
439
  msgstr ""
344
440
 
345
- #: templates/umap/map_table.html:63 templates/umap/map_table.html:65
441
+ #: templates/umap/map_table.html:90 templates/umap/map_table.html:92
346
442
  msgid "Clone"
347
443
  msgstr ""
348
444
 
349
- #: templates/umap/map_table.html:73 templates/umap/map_table.html:75
445
+ #: templates/umap/map_table.html:101 templates/umap/map_table.html:103
350
446
  msgid "Delete"
351
447
  msgstr ""
352
448
 
353
- #: templates/umap/map_table.html:88
449
+ #: templates/umap/map_table.html:117
354
450
  msgid "first"
355
451
  msgstr ""
356
452
 
357
- #: templates/umap/map_table.html:89
453
+ #: templates/umap/map_table.html:118
358
454
  msgid "previous"
359
455
  msgstr ""
360
456
 
361
- #: templates/umap/map_table.html:98
457
+ #: templates/umap/map_table.html:126
362
458
  #, python-format
363
459
  msgid "Page %(maps_number)s of %(num_pages)s"
364
460
  msgstr ""
365
461
 
366
- #: templates/umap/map_table.html:104
462
+ #: templates/umap/map_table.html:131
367
463
  msgid "next"
368
464
  msgstr ""
369
465
 
370
- #: templates/umap/map_table.html:105
466
+ #: templates/umap/map_table.html:132
371
467
  msgid "last"
372
468
  msgstr ""
373
469
 
374
- #: templates/umap/map_table.html:113
470
+ #: templates/umap/map_table.html:140
375
471
  #, python-format
376
472
  msgid "Lines per page: %(per_page)s"
377
473
  msgstr ""
378
474
 
379
- #: templates/umap/map_table.html:118
475
+ #: templates/umap/map_table.html:145
380
476
  #, python-format
381
477
  msgid "%(count)s maps"
382
478
  msgstr ""
383
479
 
384
- #: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
480
+ #: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
385
481
  msgid "My Dashboard"
386
482
  msgstr ""
387
483
 
388
- #: templates/umap/navigation.html:13
484
+ #: templates/umap/navigation.html:14
389
485
  msgid "Starred maps"
390
486
  msgstr ""
391
487
 
392
- #: templates/umap/navigation.html:17
488
+ #: templates/umap/navigation.html:18
393
489
  msgid "Log in"
394
490
  msgstr "Đăng nhập"
395
491
 
396
- #: templates/umap/navigation.html:17
492
+ #: templates/umap/navigation.html:18
397
493
  msgid "Sign in"
398
494
  msgstr "Đăng nhập"
399
495
 
400
- #: templates/umap/navigation.html:21
496
+ #: templates/umap/navigation.html:22
401
497
  msgid "About"
402
498
  msgstr "Về"
403
499
 
404
- #: templates/umap/navigation.html:24
405
- msgid "Help"
406
- msgstr ""
407
-
408
- #: templates/umap/navigation.html:29
500
+ #: templates/umap/navigation.html:30
409
501
  msgid "Change password"
410
502
  msgstr ""
411
503
 
412
- #: templates/umap/navigation.html:33
504
+ #: templates/umap/navigation.html:34
413
505
  msgid "Log out"
414
506
  msgstr "Thoát"
415
507
 
416
- #: templates/umap/password_change.html:4
508
+ #: templates/umap/password_change.html:7
417
509
  msgid "Password change"
418
510
  msgstr ""
419
511
 
420
- #: templates/umap/password_change.html:6
512
+ #: templates/umap/password_change.html:10
421
513
  msgid ""
422
514
  "Please enter your old password, for security's sake, and then enter your new"
423
515
  " password twice so we can verify you typed it in correctly."
424
516
  msgstr ""
425
517
 
426
- #: templates/umap/password_change.html:13
518
+ #: templates/umap/password_change.html:17
427
519
  msgid "Old password"
428
520
  msgstr ""
429
521
 
430
- #: templates/umap/password_change.html:18
522
+ #: templates/umap/password_change.html:22
431
523
  msgid "New password"
432
524
  msgstr ""
433
525
 
434
- #: templates/umap/password_change.html:22
526
+ #: templates/umap/password_change.html:26
435
527
  msgid "New password confirmation"
436
528
  msgstr ""
437
529
 
438
- #: templates/umap/password_change.html:23
530
+ #: templates/umap/password_change.html:27
439
531
  msgid "Change my password"
440
532
  msgstr ""
441
533
 
442
- #: templates/umap/password_change_done.html:4
534
+ #: templates/umap/password_change_done.html:7
443
535
  msgid "Password change successful"
444
536
  msgstr ""
445
537
 
446
- #: templates/umap/password_change_done.html:5
538
+ #: templates/umap/password_change_done.html:10
447
539
  msgid "Your password was changed."
448
540
  msgstr ""
449
541
 
450
- #: templates/umap/search.html:10
542
+ #: templates/umap/search.html:15
451
543
  #, python-format
452
544
  msgid "%(count)s map found:"
453
545
  msgid_plural "%(count)s maps found:"
454
546
  msgstr[0] ""
455
547
 
456
- #: templates/umap/search.html:18
548
+ #: templates/umap/search.html:24
457
549
  msgid "No map found."
458
550
  msgstr ""
459
551
 
460
- #: templates/umap/search.html:21
552
+ #: templates/umap/search.html:29
461
553
  msgid "Latest created maps"
462
554
  msgstr ""
463
555
 
464
- #: templates/umap/search_bar.html:3
556
+ #: templates/umap/search_bar.html:4
465
557
  msgid "Search maps"
466
558
  msgstr "Tìm bản đồ"
467
559
 
468
- #: templates/umap/search_bar.html:14
560
+ #: templates/umap/search_bar.html:15
469
561
  msgid "Search"
470
562
  msgstr "Tìm"
471
563
 
472
- #: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
473
- msgid "Search my maps"
564
+ #: templates/umap/team_detail.html:10
565
+ #, python-format
566
+ msgid "Browse %(current_team)s's maps"
474
567
  msgstr ""
475
568
 
476
- #: templates/umap/user_dashboard.html:11
569
+ #: templates/umap/team_detail.html:22
477
570
  #, python-format
478
- msgid "My Maps (%(count)s)"
571
+ msgid "%(current_team)s has no public maps."
479
572
  msgstr ""
480
573
 
481
- #: templates/umap/user_dashboard.html:13
482
- msgid "My profile"
574
+ #: templates/umap/team_form.html:24
575
+ msgid "Delete this team"
576
+ msgstr ""
577
+
578
+ #: templates/umap/team_form.html:47
579
+ msgid "Add user"
580
+ msgstr ""
581
+
582
+ #: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
583
+ msgid "Search my maps"
483
584
  msgstr ""
484
585
 
485
- #: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
586
+ #: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
486
587
  msgid "Map’s title"
487
588
  msgstr ""
488
589
 
489
- #: templates/umap/user_dashboard.html:32
590
+ #: templates/umap/user_dashboard.html:30
490
591
  #, python-format
491
592
  msgid "Download %(count)s maps"
492
593
  msgstr ""
493
594
 
494
- #: templates/umap/user_dashboard.html:42
595
+ #: templates/umap/user_dashboard.html:40
495
596
  msgid "You have no map yet."
496
597
  msgstr ""
497
598
 
498
- #: views.py:346
599
+ #: templates/umap/user_teams.html:17
600
+ msgid "Users"
601
+ msgstr ""
602
+
603
+ #: templates/umap/user_teams.html:48
604
+ msgid "New team"
605
+ msgstr ""
606
+
607
+ #: views.py:234
608
+ msgid "Cannot delete a team with more than one member"
609
+ msgstr ""
610
+
611
+ #: views.py:238
612
+ #, python-format
613
+ msgid "Team “%(name)s” has been deleted"
614
+ msgstr ""
615
+
616
+ #: views.py:438
499
617
  msgid "View the map"
500
618
  msgstr "Xem bản đồ"
501
619
 
502
- #: views.py:704
620
+ #: views.py:820
503
621
  msgid "See full screen"
504
622
  msgstr ""
505
623
 
506
- #: views.py:803
624
+ #: views.py:963
507
625
  msgid "Map editors updated with success!"
508
626
  msgstr "Bản đồ được cập nhật thành công!"
509
627
 
510
- #: views.py:841
628
+ #: views.py:999
511
629
  #, python-format
512
630
  msgid "The uMap edit link for your map: %(map_name)s"
513
631
  msgstr ""
514
632
 
515
- #: views.py:844
633
+ #: views.py:1002
516
634
  #, python-format
517
635
  msgid "Here is your secret edit link: %(link)s"
518
636
  msgstr ""
519
637
 
520
- #: views.py:850
638
+ #: views.py:1009
639
+ #, python-format
640
+ msgid "Can't send email to %(email)s"
641
+ msgstr ""
642
+
643
+ #: views.py:1012
521
644
  #, python-format
522
645
  msgid "Email sent to %(email)s"
523
646
  msgstr ""
524
647
 
525
- #: views.py:861
648
+ #: views.py:1023
526
649
  msgid "Only its owner can delete the map."
527
650
  msgstr "Chỉ chủ nhân của bản đồ mới có quyền xóa."
528
651
 
529
- #: views.py:889
652
+ #: views.py:1026
653
+ msgid "Map successfully deleted."
654
+ msgstr ""
655
+
656
+ #: views.py:1052
530
657
  #, python-format
531
658
  msgid ""
532
659
  "Your map has been cloned! If you want to edit this map from another "
533
660
  "computer, please use this link: %(anonymous_url)s"
534
661
  msgstr "Bản đồ của bạn đã được sao chép. Nếu bạn muốn chỉnh sửa bản đồ từ máy tính khác, vui lòng sử dụng liên kết này %(anonymous_url)s"
535
662
 
536
- #: views.py:894
663
+ #: views.py:1057
537
664
  msgid "Congratulations, your map has been cloned!"
538
665
  msgstr "Chúc mừng, bản đồ của bạn đã được sao chép!"
539
666
 
540
- #: views.py:1130
667
+ #: views.py:1308
541
668
  msgid "Layer successfully deleted."
542
669
  msgstr "Đã xóa layer"
543
670
 
544
- #: views.py:1152
671
+ #: views.py:1330
545
672
  msgid "Permissions updated with success!"
546
673
  msgstr ""