Yohan Boniface
4e54a93ee0
Add DataLayer.INHERIT edit status option
2023-09-22 17:32:19 +02:00
Yohan Boniface
3cbd6cca40
Add back Map.edit_status
...
Revert "Fix existing permissions related tests"
This reverts commit 36d7d87301c54a1a40bc6bbc164120768b258fae.
WIP
2023-09-22 17:32:19 +02:00
Yohan Boniface
3dc4efe7b1
Remove data migration for edit_status
2023-09-22 17:32:19 +02:00
Yohan Boniface
360b6415cb
Make OWNER mode the default edit_status for anonymous owned maps
2023-09-22 17:32:19 +02:00
Yohan Boniface
5f5196a52d
Make sure to select only editable layers for attachin to features
2023-09-22 17:32:19 +02:00
Yohan Boniface
0afb0bff82
Include layer name in translation
2023-09-22 17:32:19 +02:00
Yohan Boniface
36befefbc6
Fix permissions related frontend tests
2023-09-22 17:32:19 +02:00
Yohan Boniface
84e3aa7121
Add default value for DataLayer.options.editMode
2023-09-22 17:32:19 +02:00
Yohan Boniface
6b269125d4
Make sure only owner see the delete map button
2023-09-22 17:32:19 +02:00
David Larlet
ddada8fb2b
Remove the hasDirty concept
...
And only save the map in case of an `advanced` `editMode`.
2023-09-22 17:32:19 +02:00
Yohan Boniface
24e4aed8d3
Rename allowEdit in editMode
2023-09-22 17:32:17 +02:00
Yohan Boniface
de7c693c7b
Remove console.log
2023-09-22 17:30:08 +02:00
Yohan Boniface
2d1d9281d9
Add SQL migration to populate DataLayer.edit_status from Map.edit_status
2023-09-22 17:30:08 +02:00
Yohan Boniface
af44b3a0a6
Add playwright test for editor's permissions form
2023-09-22 17:30:07 +02:00
Yohan Boniface
a15aa3566a
Add playwright tests for anonymous map
2023-09-22 17:30:07 +02:00
Yohan Boniface
d902546da4
Add map update playwright tests
2023-09-22 17:30:07 +02:00
Yohan Boniface
168cc01c2e
Do not try to access self.object in MapCreate
2023-09-22 17:30:07 +02:00
Yohan Boniface
42eb0e6ded
Add more tests for datalayer permissions
2023-09-22 17:30:06 +02:00
Yohan Boniface
d6d55e619a
Fix existing permissions related tests
2023-09-22 17:26:57 +02:00
Yohan Boniface
e52b40807a
Expose correct edit statuses in anonymous mode
2023-09-22 17:26:57 +02:00
Yohan Boniface
e06da18f1e
Fix helptext not displayed in anonymous permissions panel
2023-09-22 17:26:57 +02:00
Yohan Boniface
1cefd4e851
Hide create/delete datalayers button + map settings to users without rights
2023-09-22 17:26:57 +02:00
Yohan Boniface
35d7a5c550
Remove unused icon in 16.svg
2023-09-22 17:26:57 +02:00
Yohan Boniface
9189262855
Do not try to save map itself unless it has been modified
2023-09-22 17:26:57 +02:00
Yohan Boniface
ee9acf3427
Fix map check in DataLayerUpdate view
2023-09-22 17:26:57 +02:00
Yohan Boniface
70a1a1d584
Move copyToClipboard to L.Util
2023-09-22 17:26:57 +02:00
Yohan Boniface
76239ef55c
Make DataLayer.isReadOnly explicit and true by default
2023-09-22 17:26:56 +02:00
Yohan Boniface
3d2e62c858
Do not use Map.edit_status anymore
...
But keep it for now, for data migration, and just in case
2023-09-22 17:26:55 +02:00
Yohan Boniface
de907dcb50
Do not expose readonly datalayers for features
2023-09-22 17:25:55 +02:00
Yohan Boniface
89ab029cab
WIP: move edit_status from Map to DataLayer
2023-09-22 17:25:55 +02:00
Yohan Boniface
73d19e849f
Refactor share_status check in datalayers views
2023-09-22 17:24:01 +02:00
Yohan Boniface
9bcc18b790
Merge pull request #1329 from umap-project/prune-gz
...
Prune old .gz when saving a datalayer
2023-09-22 17:14:31 +02:00
Yohan Boniface
b6b9943264
Prune old .gz when saving a datalayer
...
We'll not consume them.
fix #1317
2023-09-21 19:12:07 +02:00
Yohan Boniface
5b7fec5f9b
Merge pull request #1314 from openbrian/docker-compose-app-depends-on-db
...
Replace wait_for_database with depends_on and healthcheck.
2023-09-21 10:11:56 +02:00
Brian DeRocher
6720f76d85
Set the map option. No need for setting boolean from query string.
...
Only add the owner property if the feature flag (map.options.featuresHaveOwner) is enabled.
Default to features do NOT have owners.
2023-09-20 13:16:52 -04:00
Brian DeRocher
77b56623ed
Remove field from map settings form.
2023-09-20 13:07:12 -04:00
Brian DeRocher
6c58bf367d
Use camelcase and fix typo.
2023-09-20 13:03:36 -04:00
Brian DeRocher
e25fb5d04f
Add FeaturesHaveOwners map option.
...
WIP
2023-09-20 12:48:32 -04:00
Brian DeRocher
e76c147b65
owner is no longer a form field.
2023-09-20 10:53:27 -04:00
Brian DeRocher
35e37c2d4b
Add translation for "owner".
2023-09-20 10:52:13 -04:00
Brian DeRocher
e2b789e575
Do not use the form for the owner property.
...
Only add the owner property to defaultProperties, if there is a user. In other words the user can use the map without logging in.
2023-09-20 10:51:01 -04:00
Brian DeRocher
204db34282
Replace bash based waiting with python based django-probes.
2023-09-20 09:45:26 -04:00
Yohan Boniface
f6730a9829
Update umap/views.py
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2023-09-20 15:17:29 +02:00
Yohan Boniface
43e5391c49
Fix map displayed more than once in user dashboard when multiple editors
...
fix #1325
2023-09-20 11:30:05 +02:00
Brian DeRocher
9c89c50560
Set a default property for features that the owner is the current user.
...
https://github.com/umap-project/umap/issues/430
2023-09-19 19:13:14 -04:00
Yohan Boniface
038a1a3c4d
Merge pull request #1315 from umap-project/dot-in-property
...
Remove dot in property name
2023-09-19 07:35:10 +02:00
Yohan Boniface
9120d54be7
Fix table editor not closing anymore from fullwidth
...
(From f3b5c82767
)
2023-09-18 13:02:19 +02:00
Yohan Boniface
647d8910c0
Remove dot in property name
...
Otherwise it will break when trying to access it in FormBuilder
2023-09-18 12:21:06 +02:00
Yohan Boniface
417dde04b0
1.7.3
2023-09-18 11:19:59 +02:00
Yohan Boniface
9f47b0fc55
i18n
2023-09-18 11:19:40 +02:00
Yohan Boniface
0a83c42724
Merge pull request #1313 from jschleic/feature-1312
...
Add outlinkTarget to default interactionProperties
2023-09-15 12:15:47 +02:00
Yohan Boniface
13d398318d
Tests: fix toggle edit panel check
...
We do not remove the panel content anymore
2023-09-15 12:11:13 +02:00
Joachim Schleicher
db31aa119e
Add outlinkTarget to default interactionProperties
...
Fix #1312
2023-09-14 10:36:23 +02:00
David Larlet
f535993201
Add a powered by uMap
footer
...
Fix #1304
2023-09-08 17:17:11 -04:00
David Larlet
2152ca3d1a
Merge pull request #1069 from umap-project/playwright-integration-tests
...
Setup to create integration tests with Playwright
2023-09-08 11:24:35 -04:00
Yohan Boniface
aa1b04b3ad
Merge pull request #1298 from umap-project/fix-remotelayer-with-zoom-onload
...
Try to fix remote datalayer not sending dataloaded
2023-09-08 16:02:37 +02:00
Yohan Boniface
aca473692a
Merge pull request #1303 from umap-project/icons-quick-changes
...
Enhance icon selector form
2023-09-08 16:01:25 +02:00
Yohan Boniface
4857d7c29c
Use css width for img custom width
...
The width attribute is the intrinsic width of the image, and thus
it will not overwrite the default CSS
cf https://forum.openstreetmap.fr/t/bugs-divers-relevees-sur-une-umap-absent-sur-une-autre/17254/5
2023-09-07 07:16:55 +02:00
Yohan Boniface
4009e759dc
Prevent HTML blinking when loading icons list
2023-09-05 11:21:17 +02:00
Yohan Boniface
d72ae3fc34
Very minimal search input for icons list
...
fix #1302
2023-09-05 10:55:35 +02:00
Yohan Boniface
ce7575c5eb
But back icon preview
2023-09-05 10:29:44 +02:00
Yohan Boniface
c5084c4332
Add toggle link to show/hide iconUrl raw input
2023-09-05 10:14:24 +02:00
Yohan Boniface
91e71eccda
Change button look in icon form
2023-09-05 09:41:09 +02:00
Yohan Boniface
bfd36bc0e1
Do not reset icon list on icon choice
...
cf #1302
2023-09-05 09:38:07 +02:00
Yohan Boniface
c08e7c5527
Remove duplicate help text in icon advanced free field
2023-09-05 09:36:30 +02:00
Yohan Boniface
09d0891318
Change link color in dark mode
2023-09-05 09:36:05 +02:00
Yohan Boniface
3a5174c003
Fix tests with playwright
...
Basically:
- when using playwright, we use live_server
- live_server make django-pytest switch in "transactional db" mode
- when in this mode, it will reset all data of all tables in db
- we relied on data created during the migrations, so only available
for first test run
2023-09-04 15:04:00 +02:00
Yohan Boniface
c35c6ee78c
test: allow to run playwright tests directly with py.test cli
2023-09-04 15:00:51 +02:00
David Larlet
29547d0bd6
Add a test to verify marker creation at position
2023-09-04 11:03:31 +02:00
David Larlet
95bf685159
Setup to create integration tests with Playwright
2023-09-04 11:03:28 +02:00
Yohan Boniface
648fe65f14
WIP: try to fix remote datalayer not sending dataloaded
...
This occurs when the remote datalayer has a min or maxZoom defined,
and the map is loaded outside those zooms. In this case, when
calling fetchRemoteData, the fetch was never done, nor the final
call to fromGeoJSON, which would have sent the dataloaded event.
2023-09-01 20:31:34 +02:00
Yohan Boniface
dcb884f0d7
1.7.2
2023-09-01 17:35:24 +02:00
Yohan Boniface
33e1bb87ca
i18n
2023-09-01 17:35:05 +02:00
Yohan Boniface
d4c0bc0854
Merge pull request #1292 from umap-project/panel-portrait
...
Better distinguish panel behaviour in portrait vs landscape modes
2023-09-01 17:28:58 +02:00
Yohan Boniface
1cd1094398
Merge pull request #1293 from umap-project/feature-name-focus
...
Put focus on name when opening feature edit panel
2023-09-01 17:26:10 +02:00
Yohan Boniface
078bff3f2b
Merge pull request #1294 from umap-project/help-button-icon
...
Restore help button icon
2023-09-01 17:24:42 +02:00
Yohan Boniface
6ce541e899
Merge pull request #1291 from umap-project/guess-mime-type-return
...
Avoid using a tuple as a content type when guessed
2023-09-01 17:24:03 +02:00
Yohan Boniface
cb13b4e04d
Merge pull request #1297 from umap-project/popup-large-img-min-width
...
Add back min-width for img in popup-large
2023-09-01 17:23:01 +02:00
Yohan Boniface
87f6b98a99
Add back min-width for img in popup-large
2023-09-01 17:21:43 +02:00
Yohan Boniface
d89d2287b9
Fix datalayers with min/maxZoom never sending dataloaded event
2023-09-01 17:02:23 +02:00
Yohan Boniface
1b60b46a3f
Delete old options after consuming them
2023-09-01 17:00:51 +02:00
Yohan Boniface
562f516272
Minimap exports tests
2023-08-31 17:48:59 +02:00
Yohan Boniface
bf66036b7b
Make sure we load all data before downloading it
...
fix #980
2023-08-31 16:36:34 +02:00
Yohan Boniface
d78f2e087e
Restore help button icon
...
While changing the edit header help link, I've changed all help
buttons, which was not intended.
2023-08-31 15:24:21 +02:00
Yohan Boniface
3d32bf206b
i18n
2023-08-31 12:07:33 +02:00
Yohan Boniface
96d6b45734
Put focus on name when opening feature edit panel
...
cf #243
2023-08-30 13:26:16 +02:00
Yohan Boniface
f3b5c82767
Better distinguish panel behaviour in portrait vs landscape modes
...
fix #870
2023-08-30 12:36:40 +02:00
Yohan Boniface
7ed6cfb2a4
Better position for disable icon
2023-08-30 11:35:52 +02:00
David Larlet
6cacc7122b
Avoid using a tuple as a content type when guessed
...
Only use the content type with mimetypes.guess_type
2023-08-29 15:24:58 -04:00
David Larlet
c122ecf5e4
Merge pull request #1287 from umap-project/edit-header-polish
...
Edit header polish: move "My Dashboard" and "Help" to the right, display asterisk in dirty mode
2023-08-29 13:14:30 -04:00
Yohan Boniface
4c8b4c66d0
Add border around minor button in edit toolbar
2023-08-29 18:14:36 +02:00
Yohan Boniface
2986e8cec9
Merge pull request #1288 from umap-project/clean-onbeforeunload
...
Remove custom message from onbeforeunload event
2023-08-29 17:52:11 +02:00
Yohan Boniface
51c1990681
Explicitly set DataLayer._dataloaded status, instead of guessing it
...
fix #438
2023-08-29 17:49:19 +02:00
Yohan Boniface
02eb69a280
Add a button to load remote data from configuration form
...
cf #438
2023-08-29 16:56:04 +02:00
Yohan Boniface
ed7181ba24
Remove custom message from onbeforeunload event
...
It's not supported anymore by browsers.
2023-08-29 16:36:04 +02:00
Yohan Boniface
38bed0a6cf
Move "My Dashboard" and "Help" to the right of the edit toolbar
2023-08-29 13:57:00 +02:00
Yohan Boniface
fc42eb2573
Add a small asterisk near map title when it's dirty
2023-08-29 11:22:23 +02:00
Yohan Boniface
949f245c00
1.7.1
2023-08-28 18:00:58 +02:00
Yohan Boniface
bcdac413be
ajax proxy: quote URL before passing it to Nginx
2023-08-28 18:00:40 +02:00
Yohan Boniface
8c9ee91b42
Add test for ajax-proxy internal redirect
2023-08-28 16:49:32 +02:00
Yohan Boniface
a4b0961163
1.7.0
2023-08-28 16:42:24 +02:00
Yohan Boniface
dbba8d2744
Merge pull request #1280 from umap-project/ajax-proxy-redirect
...
Use X-Accel-Redirect for serving ajax-proxy request
2023-08-28 16:37:19 +02:00
Yohan Boniface
6f3803cce3
1.6.1
2023-08-25 10:19:45 +02:00
Yohan Boniface
174e6ddc6b
i18n
2023-08-25 10:18:22 +02:00
Yohan Boniface
1b769bf07c
Change "My Maps" to "My Dashboard" in navigation
2023-08-25 10:11:04 +02:00
Yohan Boniface
77a13eb0f0
Merge pull request #1284 from umap-project/fix-minimap-changing-center-3
...
Remove default center to prevent multiple map initialisations
2023-08-25 10:07:23 +02:00
Yohan Boniface
bdbde7cfd2
Ensure default view when map as no data at load
2023-08-25 09:59:02 +02:00
Yohan Boniface
e636ced4c6
Set default center in case of location error at load
2023-08-24 21:24:02 +02:00
Yohan Boniface
9c16bbfe51
Remove default center to prevent multiple map initialisations
...
We want to init the map view once, in our initCenter method,
so we remove any center from the option, to prevent Leaflet
to init the map on this centers
fix #1277
2023-08-24 20:48:24 +02:00
Yohan Boniface
f12e87e727
Fix datalayers being shown on zoom even if displayOnLoad is false
...
fix #1276
2023-08-24 19:57:47 +02:00
Yohan Boniface
c4bdb04795
Use X-Accel-Redirect for serving ajax-proxy request
...
uMap allows to use remote URL as data sources, but those URLs
are not always CORS open, so this is why there is this "ajax-proxy"
feature, where the URL is passed to the backend.
Additionally, there is a caching feature, which duration is configurable
through frontend settings. Valid values are: disabled, 5 min, 1 hour,
1 day.
Initially, I wanted this to be totally handled by Nginx, but I never
found a wayt to set the proxy_cache_valid value from a query string.
Since then, at least in OSM France servers, the ajax-proxy is still
handled by a Django view, which then opens the remote URL and transfert
the data. This is not optimal. And I suppose this is what is causing
hicups on the OSM France servers lately.
This PR provides a mix option, where python deals with validating the
URL and parsing the TTL parameter, and then it passes the hand to
nginx which will serve the remote content.
So, roughtly:
- the client calls /ajax-proxy/?url=xxx&ttl=300
- python will validate the URL (not internal calls…)
- if UMAP_SENDFILE_HEADER is set, then the python returns an empty
response with the path /proxy/http://url plus it will set the
cache ttl through the header X-Accel-Expires
- this /proxy/ location is then handled by nginx
2023-08-24 13:41:34 +02:00
Brice Maron
cd29486b84
fix: correct changelog link
2023-08-23 08:31:15 +02:00
David Larlet
29a96e5fdc
Fix tests with the latest version of mocha
2023-08-22 12:29:13 -04:00
Yohan Boniface
994a73ef2d
1.6.0
2023-08-22 15:33:50 +02:00
Yohan Boniface
debe128bd7
i18n
2023-08-22 15:33:27 +02:00
Yohan Boniface
1e1d271064
Only call propagateShow at init if layer is visible
...
fix #1263
We were calling popagateShow at datalayer init, which then
add a listener to "loaded" event, and then do the propagate.
So when the layer is hidden at load, when dragging it in the
datalayers list, it will be loaded (because we need to save it
with its new position) and it will appears as shown whatever
its real status.
2023-08-22 10:20:46 +02:00
Yohan Boniface
08f1e3f61b
i18n
2023-08-21 17:26:48 +02:00
Yohan Boniface
a997b5454b
Merge pull request #1268 from umap-project/search-bounds
...
When map has max bounds, use those bounds for limiting search
2023-08-21 17:20:30 +02:00
Yohan Boniface
8095c5721d
Merge pull request #1266 from umap-project/zoom-from-to-at-load
...
Store DataLayer's settings in DB
2023-08-21 17:18:48 +02:00
Yohan Boniface
085721e3de
Merge pull request #1270 from umap-project/protect-username
...
Protect back username field from being modified by social auth login
2023-08-21 17:18:09 +02:00
Yohan Boniface
90a272aabc
Merge pull request #1271 from umap-project/add-provider
...
Allow to add more than one OAuth provider
2023-08-21 17:17:45 +02:00
Yohan Boniface
a89e6622ed
User profile page: only display providers if there are some
...
Someone uses uMap with classic auth username/password, and they
don't want those empty HTML elements
2023-08-21 17:16:34 +02:00
Yohan Boniface
7814702721
Lite styling of user profile form
2023-08-21 17:10:12 +02:00
Yohan Boniface
25b3a66351
Allow to add more than one OAuth provider
2023-08-21 17:08:57 +02:00
Yohan Boniface
15e9cf0b5f
Protect back username field from being modified by social auth login
2023-08-21 17:05:01 +02:00
Yohan Boniface
2b471be171
Very lite "My Profile" page to allow changing username
2023-08-21 15:09:30 +02:00
Yohan Boniface
311809520c
When map has max bounds, use those bounds for limiting search
...
fix #1264
2023-08-21 10:06:54 +02:00
Yohan Boniface
fb6b0f4d9b
Tests: fix CSS selector
2023-08-21 08:27:47 +02:00
Yohan Boniface
9bbc901150
Make sure tilelayers exist before trying to create miniMap
2023-08-20 18:44:25 +02:00
Yohan Boniface
fa090b89df
Store DataLayer's settings in DB
...
This allows to known the full datalayer behaviour without needing
to load all the data, including the zoom from and to (new settings),
but also the color for example.
This will help also understanding datalayers usage and making
stats.
But no data migration is provided, it's retrocompatible (data
migration in OSM FR servers would be huge, so let's see if it's
really needed).
2023-08-20 09:48:01 +02:00
Yohan Boniface
b5d0b50183
Catch timeout error in ajax proxy
2023-08-17 17:43:25 +02:00
Yohan Boniface
bb922d1418
Call DataLayer.show instead of manually adding layer to the map
2023-08-17 08:14:53 +02:00
Yohan Boniface
7452681b31
Rename forgotten DataLayer.openFilter to DataLayer.openFacet
2023-08-17 08:14:22 +02:00
Yohan Boniface
ea21857bd3
1.5.1
2023-08-15 23:09:42 +02:00
Yohan Boniface
99c0271285
Update edit header when map has been saved
...
We need to update the share status display at first save
2023-08-15 22:42:58 +02:00
Yohan Boniface
26b3b4b5c7
Do not try to display share status until map is created
2023-08-15 22:36:11 +02:00
Yohan Boniface
b06cfca1f2
Revert "More readable check from DataLayer.showAtZoom"
...
This reverts commit c0dd8901e4
.
2023-08-15 22:26:33 +02:00
Yohan Boniface
7078557831
Fix tests: add now mandatory share_statuses in test map
2023-08-15 21:48:54 +02:00
Yohan Boniface
88e3da70f5
1.5.0
2023-08-15 16:51:25 +02:00
Yohan Boniface
0e81030481
i18n
2023-08-15 16:47:23 +02:00
Yohan Boniface
b083bae906
Merge pull request #1238 from umap-project/iframe-popup-large
...
adapt iframe min-width for popup large
2023-08-15 16:39:13 +02:00
Yohan Boniface
5765daa4bf
Merge pull request #1233 from umap-project/edit-header-revamp
...
Edit header revamp
2023-08-15 16:35:57 +02:00
Yohan Boniface
379d75239d
Update umap/static/umap/js/umap.core.js
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2023-08-15 16:21:44 +02:00
Yohan Boniface
d2c3b8694b
Allow to control facet labels
2023-08-15 16:21:42 +02:00
Yohan Boniface
b013692527
Make sure filters are called before actually displaying a feature
...
on the map
fix #1005
2023-08-15 16:20:49 +02:00
Yohan Boniface
80e62f3046
Better CSS for facet search
2023-08-15 16:20:49 +02:00
Yohan Boniface
d188525c74
Compute _layers for MarkerCluster, so to easily know if layer has data
2023-08-15 16:20:49 +02:00
Yohan Boniface
81a7bdcd6a
Rename advancedFilters to facet search
2023-08-15 16:20:49 +02:00
Yohan Boniface
9abbfbc01e
Use Leaflet.FormBuilder to build advanced filters form
2023-08-15 16:20:49 +02:00
Yohan Boniface
56cb4b44d0
Factorize about link
2023-08-15 16:20:49 +02:00