fc2de3fc53
tests(sync): Change the way the websocket server is run in the tests
...
Using [pytest-xprocess](https://pytest-xprocess.readthedocs.io/ ) proved
not being as useful as I thought at first, because it was causing
intermitent failures when starting the process.
The code now directly uses `subprocess.popen` calls to start the server.
The tests are grouped together using the following decorator:
`@pytest.mark.xdist_group(name="websockets")`
Tests now need to be run with the `pytest --dist loadgroup` so that all
tests of the same group happen on the same process.
More details on this blogpost:
https://blog.notmyidea.org/start-a-process-when-using-pytest-xdist.html
2024-06-07 18:21:30 +02:00
940ae77602
settings: Make the websocket settings clearer.
...
It is now using `WEBSOCKET_BACK_HOST`, `WEBSOCKET_BACK_PORT` and
`WEBSOCKET_FRONT_URI`.
We need to take in consideration that the "front" WebSocket address
(that clients will connect to) might be different than the "back" ip and
port which are bound in the host.
This happens for instance for reverse proxies, or when running inside
a container.
We considered using a `WEBSOCKET_TLS` setting, to try guessing the
"front" address based on `WEBSOCKET_HOST`, `WEBSOCKET_PORT` and
`WEBSOCKET_TLS`, but as the back and front address can differ, this
would need to introduce a `WEBSOCKET_URI` in any case, so we went with
just using it, and not adding an extra `WEBSOCKET_TLS`.
2024-06-07 18:21:30 +02:00
516c3d9a0d
tests(sync): Add a test ensuring cloned features aren't duplicated
...
This is currently a bug in the current implementation. Hopefully fixed
in later commits.
2024-06-07 18:21:30 +02:00
b5eee142e7
test(sync): Ensure feature properties are synced
2024-06-07 18:21:30 +02:00
8fc116e7a8
chore(test): remove empty test
2024-06-07 18:21:30 +02:00
dfbdc1f975
chore(test): fix a typo
...
(but I would really like to see what web socker would look like)
2024-06-07 18:21:30 +02:00
10a68a75e4
test(sync): Ensure datalayer properties are synced
2024-06-07 18:21:30 +02:00
d10a7b70f1
test(sync): Ensure map properties are synced
...
This tests that the name of the map, and that zoom-control visibility is
properly synced over websockets.
2024-06-07 18:21:30 +02:00
6f7dd61023
test(sync): ensure polygon drag-n-drop is synced
2024-06-07 18:21:30 +02:00
ad4d6ac672
test(sync): Ensure polygons and their edits can be synced
2024-06-07 18:21:30 +02:00
5feabd4c14
test(sync): Marker drag-n-drop and delete are synced
2024-06-07 18:21:30 +02:00
80f7efc810
tests(sync): Test that marker sync works properly
...
This commit handles the start and stop of the websocket server during
the tests, using the xprocess library
2024-06-07 18:21:30 +02:00
d0e2d900f7
chore(tests): Rename "collaboration" tests to "optimistic merge"
...
As "collaboration" can be mistaken between "websocket" and
"server-merge". This naming makes it explicit.
2024-06-07 18:21:30 +02:00
9be613e3ce
feat(sync): add tests for the websocket token view
2024-06-07 18:21:30 +02:00
9e36476abe
chore(sync) make the test pass
2024-06-07 18:21:30 +02:00
Yohan Boniface
776d92e7cc
chore: add minimal dialog class to replace custom made help box
2024-05-22 14:00:53 +02:00
Yohan Boniface
8ddc570e23
chore: move alert to dedicated module
2024-05-22 11:39:16 +02:00
Yohan Boniface
6294886faa
Merge pull request #1829 from umap-project/panel-mode
...
fix: make explicit default panel modes
2024-05-17 17:39:47 +02:00
Yohan Boniface
284ef1d7f3
feat: remove defaultPanelMode from now
...
After discussion, we prefer to go with decent defaults and see
how it goes.
2024-05-17 17:18:05 +02:00
Yohan Boniface
6327c988ab
fix: do not close blindly editPanel when deleting a layer
...
fix #498
fix #1831
2024-05-17 17:01:47 +02:00
Yohan Boniface
c860866fe9
feat: add defaultPanelMode setting
...
cf https://forum.openstreetmap.fr/t/umap-2-3-changement-de-gestion-des-pop-up/23680/3
Trying to make this panel expanded/condenses thing simpler and more intuitive.
It's mode can be set:
- by explicitely setting defaultPanelMode = xxx
- or, if defaultPanelMode is undefined, with sensible default when there is
an onLoadPanel defined, and to respect previous uMap behaviour
- or, if defaultPanelMode is unset, and some feature opens in the panel, it
will be set to expanded (here again to respect previous behaviour
- then, when user change it manually (by clicking on the toggle button), then
we should never change it automatically, and respect the previous mode when
reopening the panel
(We are only talking about the left panel, here.)
2024-05-16 19:48:19 +02:00
Yohan Boniface
e6b4a54499
fix: show non visible layers in caption
...
fix #1820
2024-05-14 16:26:00 +02:00
Yohan Boniface
0ce1971b4e
Merge pull request #1794 from umap-project/integrate-facets
...
feat: integrate facets into browser filters
2024-05-09 17:57:15 +02:00
Yohan Boniface
58588761d5
fix: open edit panel when pressing ESC while drawing, if valid
2024-05-09 16:43:01 +02:00
Yohan Boniface
6c5bdf8670
wip: add integration test to make sure filters are kept when closing panel
2024-05-09 15:57:14 +02:00
Yohan Boniface
2f3e7d03ab
chore: fix tests after fieldset refactor
2024-05-07 13:29:03 +02:00
Yohan Boniface
aa78b13f8e
feat: integrate facets into browser filters
2024-05-03 12:53:06 +02:00
Yohan Boniface
e688ce8f57
chore: try to change Playwright expect timeout
...
Some tests randomly fail in the CI because of timeout a bit short.
2024-05-02 14:30:54 +02:00
Yohan Boniface
85e2a8ef5b
Merge pull request #1785 from umap-project/fix-modifier-macos
...
fix: deal with the modifier key under macOS
2024-05-01 17:51:58 +02:00
David Larlet
d00c394a99
fix: deal with the modifier key under macOS
2024-05-01 11:40:37 -04:00
Yohan Boniface
cd10a6259f
Merge pull request #1784 from umap-project/fix-alert-anonymous
...
fix: make sure to display anonymous edit link even if email is not configured
2024-05-01 17:07:57 +02:00
Yohan Boniface
713214e258
Merge pull request #1782 from umap-project/fix-caption
...
fix: ensure tilelayer attribution with smart text is displayed as HMTL
2024-05-01 17:05:24 +02:00
Yohan Boniface
0002b22f5c
chore: skip failing test for now
...
This test was relying on changing DEFAULT_FROM_EMAIL in the test,
but given this setting is used at load from urls.py, it has no
effect.
2024-05-01 16:57:46 +02:00
Yohan Boniface
fedb083612
chore: be more explicit on what HTML we allow when escaping
2024-05-01 16:26:38 +02:00
Yohan Boniface
200ee6ea10
chore: fix formatting
2024-05-01 16:26:38 +02:00
Yohan Boniface
8c20397209
fix: make sure to display anonymous edit link even if email is not configured
2024-05-01 15:43:10 +02:00
Yohan Boniface
757cc1ee6c
fix: open caption form when clicking on map name, not advanced props
2024-05-01 15:31:32 +02:00
Yohan Boniface
cdb46752a9
fix: ensure tilelayer attribution with smart text is displayed as HMTL
2024-04-30 20:02:13 +02:00
Yohan Boniface
52ab531362
Merge pull request #1751 from umap-project/browse-data-expanded
...
make that "browse data" opens the browser in expanded mode
2024-04-19 17:39:26 +02:00
David Larlet
dc40addef4
Merge pull request #1766 from umap-project/redraw-popup-on-marker-change
...
fix: redraw popup on marker’s modifications
2024-04-19 11:34:04 -04:00
David Larlet
dd69efb45b
chore: set default navigation timeout for CI
2024-04-19 11:33:38 -04:00
David Larlet
788c638f3d
fix: redraw popup on marker’s modifications
2024-04-19 11:24:06 -04:00
David Larlet
d8c2e14b42
Merge pull request #1763 from umap-project/flammermann-facet-date
...
Date and number support for facets
2024-04-19 10:58:02 -04:00
David Larlet
c5507fbafe
fix: tests with iso dates and explicit days
2024-04-19 10:27:32 -04:00
Yohan Boniface
65e226ff1c
Merge pull request #1753 from umap-project/msg-no-csv-header
...
feat: display a message when importer cannot find lat/lng columns
2024-04-19 16:05:04 +02:00
Yohan Boniface
37e0582b30
chore: try to parse naive dates as UTC
2024-04-19 13:15:53 +02:00
Yohan Boniface
0b1693a1a2
chore: add some tests for facet search
2024-04-19 13:15:53 +02:00
David Larlet
836c3361d7
ci: mock OSM tiles requests in Playwright for speed
...
Also, cast the PLAYWRIGHT_TIMEOUT parameter.
2024-04-18 14:08:57 -04:00
Yohan Boniface
9a46901795
Merge pull request #1750 from umap-project/latest-open-popup
...
feat: open popup when default view is set to latest
2024-04-17 19:30:10 +02:00
Yohan Boniface
62e7e3c01a
Merge pull request #1755 from umap-project/browser-no-control
...
fix: make sure we do not render browser in map fragment
2024-04-17 18:33:54 +02:00
Yohan Boniface
1bf2642090
Merge pull request #1762 from umap-project/pw-timeout
...
chore: allow to set playwright timeout from env var
2024-04-17 15:03:46 +02:00
Yohan Boniface
c79660c354
chore: allow to set playwright timeout from env var
...
so we can increase it in the CI
2024-04-17 14:57:02 +02:00
Yohan Boniface
17e96e6c63
feat: add minimal OpenGraph links
...
cf #1591
2024-04-17 10:55:07 +02:00
Yohan Boniface
99d5165fcf
fix: make sure we do not render browser in map fragment
...
There was an edge case when map has "dataLayersControl=expanded":
we only overrided "onLoadPanel", so dataLayersControl was still
considerer. Let's have a more generic stop.
2024-04-17 08:27:58 +02:00
Yohan Boniface
a6ed20b120
wip: make that "browse data" opens the browser in expanded mode
...
And also add a "See layer" action in the context menu.
I'm not totally sure it's the way to go, but it's closer to the
current behaviour, and as a user a way missing a way to go straight
to the extanded browser version.
2024-04-16 18:07:21 +02:00
Yohan Boniface
8c418287e4
feat: display a message when importer cannot find lat/lng columns
...
fix #1699
2024-04-16 17:39:15 +02:00
Yohan Boniface
e2413d1b83
Merge pull request #1749 from umap-project/layers-list-import-panel
...
fix: update layers list in import panel
2024-04-16 16:36:12 +02:00
Yohan Boniface
4b05a62b8b
feat: open popup when default view is set to latest
...
fix #1726
2024-04-16 14:52:52 +02:00
Yohan Boniface
4f58b64ce5
fix: update layers list in import panel
...
fix #1729
2024-04-16 13:49:03 +02:00
Yohan Boniface
d3bf9fcdf0
fix: hide delete button for editors in dashboard
...
fix #1739
2024-04-16 11:32:00 +02:00
Yohan Boniface
2602b27f34
chore: fix tests after rebase
2024-04-16 10:30:05 +02:00
Yohan Boniface
e615e0926a
chore: fix tests
2024-04-16 09:09:59 +02:00
Yohan Boniface
211a86f27c
chore: lint
2024-04-16 09:09:59 +02:00
Yohan Boniface
c5e3dfb95c
chore: fix JS syntax to be compatible with browser >= 2020
...
Safari only supports public field since 2021…
2024-04-16 09:09:59 +02:00
Yohan Boniface
581f7134fd
chore: fix integration tests
2024-04-16 09:09:59 +02:00
Yohan Boniface
2a2f38e3cd
chore: change edit button order
2024-04-16 09:08:15 +02:00
Yohan Boniface
e4ecb1a847
chore: fix test
...
This action is managed in the header panel, thus it's not a button.
We may make all header actions proper buttons, but maybe in another
PR ?
2024-04-16 09:08:15 +02:00
Yohan Boniface
87f611d0b5
chore: refactore panel header/toolbox
2024-04-16 09:08:15 +02:00
Yohan Boniface
8524cc785f
chore: fix tests
2024-04-16 09:08:15 +02:00
517d3a1a81
tests: move functional tests in test_edit_map.py
.
2024-04-15 23:46:43 +02:00
6841b5fc0f
tests: Fix the test with the proper data.
2024-04-15 23:46:43 +02:00
3764bcfe3e
tests: Use the first visible name when testing.
...
There are now multiple elements accessed with the same CSS selector.
2024-04-15 23:46:43 +02:00
2bcb862319
tests: Add on_edit integration tests
2024-04-15 23:46:43 +02:00
David Larlet
8c4d887999
chore: bump the timeout for integration tests
2024-04-02 14:01:27 -04:00
Yohan Boniface
a28db94f72
chore: move Feature.js integration tests to PW
2024-04-01 11:12:26 +02:00
Yohan Boniface
90ced76a11
fix: honour old_id in datalayers= query string parameter
...
fix #1714
2024-03-27 22:10:38 +01:00
Yohan Boniface
c92d24100f
Merge pull request #1716 from umap-project/refactor-init-center
...
chore: refactor initCenter and controls ordering
2024-03-27 21:38:22 +01:00
Yohan Boniface
e0ff82298a
chore: move table editor tests to PW
2024-03-27 21:06:46 +01:00
Yohan Boniface
4669053b18
chore: refactor initCenter and controls ordering
...
We had an issue (not in Github :p) where a map was not loading
because the defaultView was set to "data", and the layers were
remote data layers. In this case, when computing the remote URL,
we allow to replace georelated variables (like east, west, north,
lat…), which needs the map to have a view.
So:
- the default view was expecting the data to be loaded (="data")
- the data to be loaded needed a default view…
So instead of adding yet another call to _setDefaultView in an
edge case, we reordered the way we initialize the map elements:
- first we initialize the controls (because initCenter needs the
locate control to exist)
- then we call initCenter
- then we initialize the tile layers (because the miniMap needs it
to render itself)
- then we call renderControls
2024-03-27 20:14:43 +01:00
Yohan Boniface
ca8f7bf280
chore: add openmap fixture
2024-03-27 13:01:01 +01:00
Yohan Boniface
490a1a6e19
chore: port DataLayer.js tests to PW
2024-03-27 13:00:45 +01:00
Yohan Boniface
b1fbccbdc5
chore: move Map and import tests to PW
2024-03-27 13:00:45 +01:00
Yohan Boniface
8392a748f1
Merge pull request #1704 from umap-project/remove-js-tests
...
chore: move js tests to PW
2024-03-26 08:55:20 +01:00
Yohan Boniface
c57469ee8b
chore: move part of Polyline.js tests to PW
2024-03-26 08:50:55 +01:00
Yohan Boniface
1a2482f1e4
chore: move Polygon integration tests to PW
2024-03-26 08:50:55 +01:00
Yohan Boniface
99207638d9
fix: make sure to order datalayer versions by time
...
When we changed from id to uuid, we broke the sorting, which
supposed to have a constant id as string prefix from version to
the other.
2024-03-25 20:13:34 +01:00
Yohan Boniface
b9e27fc885
chore: change default playwright timeout to 5000ms
2024-03-25 15:20:16 +01:00
Yohan Boniface
5d8706c261
chore: remove Permissions tests from JS and update PW ones
2024-03-25 15:20:16 +01:00
Yohan Boniface
98f1e48df9
chore: move Choropleth tests to PW
2024-03-25 15:20:16 +01:00
Yohan Boniface
288c7983fc
fix: Path.replace called instead str.replace
2024-03-25 14:40:48 +01:00
Yohan Boniface
15964b2edb
chore: lint
2024-03-22 11:16:32 +01:00
Yohan Boniface
f8d08ea539
chore: more pw tests
2024-03-22 11:10:56 +01:00
Yohan Boniface
9e3eef341e
chore: move exports tests from js to playwright
2024-03-22 10:50:50 +01:00
Yohan Boniface
01e94d45dc
Merge pull request #1666 from umap-project/almet/fix-same-second-last-modified
...
fix: Replace Last-Modified with custom headers
2024-03-14 18:15:36 +01:00
David Larlet
d050a70017
Set CORS-related header for oEmbed and map views
2024-03-13 14:02:34 -04:00
Yohan Boniface
8cc6d58752
Merge pull request #1688 from umap-project/fix-oembed-i18n
...
fix: deal with i18n in oembed URLs
2024-03-13 18:36:14 +01:00
Yohan Boniface
409c79415f
fix: deal with i18n in oembed URLs
2024-03-13 18:03:20 +01:00
29992e10e6
fix: Replace Last-Modified with custom headers.
...
`X-Datalayer-Version` and `X-Datalayer-Reference` are now used instead
of the `Last-Modified` and `If-Unmodified-Since` headers.
`Last-Modified` is granular to the second, which led to problems with
the versionning. The new system uses timestamps instead.
This commit also changes the way versions were created. Previously,
the associated version was coming from two different places:
the last modified time from the filesystem and a `time.time()` call
done when saving the model, which could result in the two getting
out of sync.
2024-03-08 22:34:54 +01:00
9071d92986
chore: ensure merge + assigning ids are rejected
...
The current code already ensures that items
changed in the reference weren't also changed
in the latest changes, so we are covered.
2024-03-08 18:01:58 +01:00
Yohan Boniface
6396ee5e58
Merge pull request #1661 from umap-project/schema-i18n
...
Add minimal schema module
2024-03-05 17:57:40 +01:00
Yohan Boniface
6ed5ebc9fb
Merge pull request #1630 from umap-project/datalayer-uuids
...
chore: replace datalayer ids with uuids
2024-03-05 17:26:50 +01:00
Yohan Boniface
bfcdfdcfc1
chore: bump ruff
2024-03-05 17:23:49 +01:00
1b41ff0ddc
chore: Rename datalayer id to old_id
2024-03-05 11:23:12 +01:00
David Larlet
ba41ae4000
fix: wait for agnocomplete in test
2024-03-04 17:43:40 +01:00
Yohan Boniface
fa0208519e
Merge pull request #1649 from umap-project/add-features-ids
...
chore: add ids on features
2024-03-04 11:18:39 +01:00
Yohan Boniface
c658b28f6e
2.0.4
2024-03-01 18:18:07 +01:00
Yohan Boniface
40d0095b3c
Merge pull request #1658 from umap-project/catch-mail-error
...
fix: catch SMTPException when sending secret edit link
2024-03-01 17:45:18 +01:00
Yohan Boniface
42129a3a45
Merge pull request #1667 from umap-project/fix-querystring-feature
...
fix: make sure to reset feature query string parameter
2024-03-01 17:02:03 +01:00
Yohan Boniface
dee6073428
chore: add test to cover opening feature on load
2024-03-01 15:49:27 +01:00
Yohan Boniface
2a084466df
fix: make sure to reset feature query string parameter
...
fix #1662
2024-03-01 15:45:07 +01:00
d0738e93e7
fix: allow empty datalayers reference on merges.
...
Previously, an error was thrown when the reference datalayer
had no `features`defined.
When looking for features, it now defaults to an empty list if the key
doesn't exist.
2024-02-29 22:41:20 +01:00
Yohan Boniface
ef7a6b9f8f
Merge pull request #1645 from umap-project/fix-zoomcontrol-duplicated
...
fix: zoomControl rendered twice
2024-02-27 14:54:48 +01:00
Yohan Boniface
9cad054746
fix: catch SMTPException when sending secret edit link
2024-02-26 19:41:07 +01:00
ffe7f18af1
chore: enhance naming in tests
2024-02-26 15:03:37 +01:00
51889f3238
chore: fetch datalayer index name before dropping it.
...
This can be helpful in situations where the name of the index is not known, as it can be with pre 1.0 deployed instance.
This commit also generates the UUIDs directly using an SQL statement.
2024-02-26 15:01:19 +01:00
ff4870730a
chore: ensure old-format layers' versions are returned
2024-02-26 15:01:19 +01:00
1415f96c6f
chore: fix tests
2024-02-26 15:01:19 +01:00
c5fd72fe2b
chore: use Django JSON serializer when calling json.dumps
2024-02-26 15:01:19 +01:00
d5b1821117
chore: format templates
2024-02-26 09:11:57 +01:00
bcd650e844
chore: add ids on features
2024-02-22 16:32:18 +01:00
Yohan Boniface
371af7827f
fix: zoomControl rendered twice
...
fix #1644
2024-02-21 23:24:37 +01:00
Yohan Boniface
eb755c02c6
chore: attempt to fix randomly failing test
2024-02-20 13:59:59 +01:00
Yohan Boniface
2b196ab614
Merge pull request #1614 from umap-project/fix-send-edit-link
...
fix: send edit link was using old post method
2024-02-16 16:55:36 +01:00
Yohan Boniface
217aec5556
Merge pull request #1615 from umap-project/default-from-email
...
chore: replace settings.FROM_EMAIL by settings.DEFAULT_FROM_EMAIL
2024-02-16 16:40:16 +01:00
Yohan Boniface
8eb2a518f1
Merge pull request #1613 from umap-project/fix-star-control
...
fix: star control was using old post method
2024-02-16 14:46:33 +01:00
Yohan Boniface
434a292878
fix: dashboard preview was still calling L.U.
2024-02-16 12:36:05 +01:00
Yohan Boniface
1db2455d51
chore: replace settings.FROM_EMAIL by settings.DEFAULT_FROM_EMAIL
...
DEFAULT_FROM_EMAIL is a Django standard setting
2024-02-16 11:49:38 +01:00
Yohan Boniface
4c224fccbc
fix: send edit link was using old post method
2024-02-16 11:43:29 +01:00
Yohan Boniface
b3ce523ba2
fix: star control was using old post method
...
Also, only display it if the user is already logged in, given
we do not deal anymore with login during ajax calls.
2024-02-16 10:59:25 +01:00
Yohan Boniface
2dd7266d21
feat: show recent picto in a separate tab
2024-02-15 10:56:07 +01:00
Yohan Boniface
126e47eef9
feat: show last used pictograms in list
...
This feature was planned in the initial rework of the pictogram
form UI, but not yet done. Some recent discussion in the OSM French
forum reactivated the need for it.
cf https://forum.openstreetmap.fr/t/marker-and-marker-colors/21051
2024-02-15 10:54:59 +01:00
David Larlet
cf319ca53e
fix: only query OEmbed map on id and fallback to 404
2024-02-12 21:14:21 -05:00
David Larlet
9426570b6e
fix: encode the whole url parameter for OEmbed
...
See https://github.com/umap-project/umap/pull/1526#issuecomment-1937040472
2024-02-12 15:58:16 -05:00
Yohan Boniface
92cc014c2e
fix: delete map from dashboard confirm was not active
2024-02-09 18:58:58 +01:00
Yohan Boniface
1f5bfcb567
Merge pull request #1586 from umap-project/fix-browser-inbbox
...
fix: browser inBbox setting not persistent and features click not opening popup
2024-02-09 17:09:11 +01:00
David Larlet
afdc732204
Merge pull request #1430 from umap-project/download-all-from-dashboard
...
Ability to clone, delete and download all maps from user’s dashboard
2024-02-08 09:51:01 -05:00
Yohan Boniface
355cdd9f07
fix: browser inBbox setting not persistent and features click not opening popup
...
Refactor the way it updates itself in the process.
2024-02-08 12:57:08 +01:00
David Larlet
1acadc746a
fix: use the regular delete view instead of ajax
2024-02-07 17:38:39 -05:00
Yohan Boniface
009f2c916f
fix: use variable for color in browser if any
2024-02-07 19:38:46 +01:00
Yohan Boniface
10efc5d103
Merge pull request #1573 from umap-project/map-preview
...
feat: add experimental "map preview" in /map/ endpoint
2024-02-07 19:14:37 +01:00
David Larlet
bc8679a597
chore: put login fixture in a dedicated conftest
2024-02-07 12:42:37 -05:00
David Larlet
2af7705d4c
Use the request module for dashboard deletions
2024-02-07 12:32:01 -05:00
David Larlet
8a6e992b9c
Ability to clone a map and overall UI improvements
2024-02-07 12:32:00 -05:00
David Larlet
5d69d3c22f
Provide a link to delete maps from user’s dashboard
2024-02-07 12:32:00 -05:00
Yohan Boniface
f09e399b3c
chore: refactor setting Map options from querystring
2024-02-07 17:53:45 +01:00
Yohan Boniface
77b35d079a
Merge pull request #1581 from umap-project/fix-legend-onload
...
fix: non loaded layers should still be visible in legend and data browser
2024-02-07 17:04:57 +01:00
Yohan Boniface
bd626690ef
fix: non loaded layers should still be visible in legend and data browser
...
Also rework the browsable/browse methods to try to make them more
understandable…
fix #1554
2024-02-07 16:32:51 +01:00
Yohan Boniface
c334f7554e
feat: add experimental "map preview"
...
This is the same as "map new", but it is not in edit mode. This
allow to click on the elements and see the popups instead of editing
it when using a `dataUrl` query string.
This way of using uMap is not documented, but it's used by some
partners (Deveco recently, data.gouv.fr historicaly).
In the same time, this PR adds two things:
- possibility to pass data direclty in querystring (instead of an URL):
in the case of Deveco, they have pages where only point is shown (for
each company)
- possibility to pass style options directly from query string: may
allow for example to control the `popupTemplate`, eg. to use a table
one that will display all properties of the clicked feature
Note: dataUrl and such also works in normal "map new" view. There are
two use cases around those parameters, from external sites:
- see this data on uMap (should point on map preview)
- create a map with those data (should point on map new)
2024-02-07 13:57:20 +01:00
Yohan Boniface
33b4dc093d
tests: remove sleep from test_owned_map
...
fix #1441
2024-02-07 13:48:16 +01:00
Yohan Boniface
4a99f357f2
chore: lint
2024-02-05 07:23:16 +01:00
Yohan Boniface
6b5ecac9c6
chore: move Map.Init.js test to playwright suite
2024-02-05 07:23:16 +01:00
Yohan Boniface
0b65d0dd9d
chore: move iframe options test to playwright
2024-02-05 07:23:16 +01:00
Yohan Boniface
2271669e80
chore: move browser tests to playwright
2024-02-05 07:23:16 +01:00
Yohan Boniface
d07d9f61d2
chore: refactore datalayers loading
2024-02-05 07:22:53 +01:00
Yohan Boniface
ab966722f9
wip: rework request error flow
2024-02-05 07:22:53 +01:00
Yohan Boniface
60832797d0
feat: adapt browser counter to the currently displayed features
2024-01-31 08:06:21 +01:00
Yohan Boniface
20998f05be
Merge pull request #1565 from umap-project/playwright-wait-for-ajax
...
tests: fix test_collaborative_editing_draw_markers
2024-01-29 18:26:51 +01:00
Yohan Boniface
074fc1bc18
Merge pull request #1552 from umap-project/preconnect-tilelayer
...
feat: set preconnect link for tilelayer
2024-01-29 18:26:24 +01:00
Yohan Boniface
dd57794ca6
Merge pull request #1562 from umap-project/svg-default-icon
...
feat: use svg for default icon (circle)
2024-01-29 18:05:45 +01:00
Yohan Boniface
902240fe34
tests: fix test_collaborative_editing_draw_markers
...
We needed to:
- make playwright to wait for ajax requests
- add a sleep to prevent saving two datalayer's version in the same
second
2024-01-29 17:36:43 +01:00
Yohan Boniface
caeb9d5b44
Merge pull request #1531 from umap-project/home-highlighted
...
Introduce UMAP_HOME_FEED to control which maps are shown on the home page
2024-01-29 12:48:24 +01:00
Yohan Boniface
dee5af33a5
Merge pull request #1535 from umap-project/empty-fileinput
...
fix: empty file input when closing the importer panel
2024-01-29 12:47:15 +01:00
Yohan Boniface
c5270fb165
Merge pull request #1538 from umap-project/test-querystring
...
fix: honour datalayersControl=expanded in querystring
2024-01-29 12:46:55 +01:00
Yohan Boniface
95b457b38c
Merge pull request #1551 from umap-project/fix-browser-with-variable
...
fix: build browser once features are on the map, not before
2024-01-29 12:45:16 +01:00
Yohan Boniface
dadcaa0b76
Merge pull request #1526 from umap-project/oembed
...
Create an oEmbed endpoint for maps
2024-01-29 12:44:03 +01:00
Yohan Boniface
256d6c631c
feat: use svg for default icon (circle)
...
fix #1560
2024-01-29 12:24:16 +01:00
Yohan Boniface
9ee9c5892e
Merge pull request #1559 from umap-project/fix-list.delete
...
fix: replace `list.delete` call by the proper `remove` method
2024-01-25 15:58:16 +01:00
Yohan Boniface
bc8084af97
fix: replace list.delete
call by the proper remove
method
2024-01-25 15:49:01 +01:00
Yohan Boniface
53ad987aea
fix: prevent datalayer to resetting to an old version on save
...
This happens in collaborative mode only.
cf #1536
cf #1537
cf https://forum.openstreetmap.fr/t/probleme-de-sauvegarde-des-cartes/20596
cf https://forum.openstreetmap.fr/t/umap-soucis-de-debutants/20538
cf https://forum.openstreetmap.fr/t/probleme-de-maj-des-icones/20565
2024-01-25 15:42:00 +01:00
Yohan Boniface
d4e253190f
feat: set preconnect link for tilelayer
2024-01-22 18:14:41 +01:00
Yohan Boniface
ae4c1a9454
fix: build browser once features are on the map, not before
...
Features title may contain variables, which include geographical
ones (center, lat, lon…), and in this case the feature must be
on the map to be able to compute them (eg. the polygon center).
fix #1519
2024-01-22 12:49:33 +01:00
Yohan Boniface
23af4c60cd
chore: move UmapManifestStaticFilesStorage to a dedicated file
2024-01-19 17:16:35 +01:00
Yohan Boniface
96ae7ddbc7
chore: deactivate custom statics manager for test by default
...
And add one file that run it and check all js files are loaded.
2024-01-17 18:42:46 +01:00
David Larlet
656e29c72b
Use custom storage instead of django-compressor
2024-01-17 09:09:00 -05:00
Yohan Boniface
cf13d15753
fix: honour datalayersControl=expanded in querystring
...
fix #1525
2024-01-16 19:58:10 +01:00
Yohan Boniface
9f377da1b2
Introduce UMAP_HOME_FEED to control which maps are shown on the home page
...
For now we have only three modes:
- latest, which is the default and shows the last updated maps
- highlighted, which shows only the map that have been starred by a least
one staff member
- None, which does not show any map
2024-01-16 12:31:50 +01:00
Yohan Boniface
4227e171f3
fix: empty file input when closing the importer panel
...
Otherwise, we cannot import anything else than a file, even when
closing and reopening the panel. User needs to refresh the page.
2024-01-16 12:28:59 +01:00
David Larlet
df76ffd80e
feat: Create an oEmbed endpoint for maps
...
Fix #162
2024-01-11 15:08:10 -05:00
d303330f2e
chore: use system-specific modifier when running tests
2024-01-08 18:42:18 +01:00
Yohan Boniface
cea5e30582
Merge pull request #1499 from umap-project/dedicated-layer-settings
...
Move layer specific settings to a dedicated fieldset
2024-01-08 12:30:41 +01:00
Yohan Boniface
75ff147371
Move layer specific settings to a dedicated fieldset
...
cf #1490
2024-01-08 12:25:40 +01:00
Yohan Boniface
ecd4c73a7e
Add basic facet search integration test
2024-01-04 13:33:38 +01:00
Yohan Boniface
05401af06b
Merge pull request #1454 from jschleic/download-ui
...
Refactor Share & Download UI for better usability
2024-01-02 21:42:34 +01:00
Joachim Schleicher
dbf0179297
cleanup sharebox changes
...
* "data" moved to helptext
* drop css introduced in previous draft
* prettier.js
2023-12-29 21:23:03 +01:00
Yohan Boniface
da2fb856c2
Better way of handling escape while drawing
...
With previous fix (in 60c002f94a
), the
feature was created even if invalid.
cf #1428
2023-12-22 13:01:06 +01:00
Joachim Schleicher
d19cc60a7a
refactor shareBox into separate class
...
download() and format() functions as well as dialog itself and
IFrameExporter helper moved into new file umap.share.js
2023-12-18 19:26:16 +01:00
Yohan Boniface
a0279165ce
Add minimal integration tests for tilelayers
2023-12-16 19:26:10 +01:00
Yohan Boniface
b9f6645162
Use real tile URL in tests
...
It's easier to debug integration tests screenshots (otherwise
background is only grey).
2023-12-15 09:37:21 +01:00
Yohan Boniface
a32b680a74
Merge pull request #1465 from umap-project/defaultview-latest-path
...
Use bounds instead of center when zooming to Polyline/Polygon
2023-12-15 08:24:58 +01:00
Yohan Boniface
0852077634
Use bounds instead of center when zooming to Polyline/Polygon
...
Here is the initial issue:
- when using defaultView=latest (means latest element of the default layer)
- when map loads, we find the element, call getCenter to center the map on it
- but Polygon/Polyline needs the element to be already on the map to call
this method (at least because the map CRS is needed)
So while trying to fix that issue, I also found that using a centroid for
a complex geometry was not very friendly: the map zoom on a part of this
geometry, while it seems to be that it's better to have a full view of it.
Now that we highlight the selected element, it's also easier to get which
element is focused when there are a lot close one to the others.
2023-12-14 15:45:43 +01:00
Joachim Schleicher
259a002705
fix picto tests
2023-12-09 20:32:07 +01:00
Joachim Schleicher
20bbbbad0c
fixup tests
2023-12-08 21:47:11 +01:00
Yohan Boniface
50da2c0e1c
Add integration test for textarea import
2023-12-05 14:28:11 +01:00
Yohan Boniface
9b28a48c9b
Merge pull request #772 from umap-project/optimistic-merge
...
Optimistic conflicts resolution mecanism
2023-11-29 17:56:17 +01:00
Yohan Boniface
7591031e63
Add integration tests covering basic polygon drawing
2023-11-29 17:34:12 +01:00
Yohan Boniface
64e90bb4c1
Add integrations tests covering basic line creation
2023-11-29 17:26:01 +01:00
f37ed700f6
[feat] add a simple conflict resolution mecanism.
...
The server tries to merge conflicting saves of
the same layer.
What it does:
- use the `If-Unmodified-Since` header to check
if changes happened to the stored data ;
- Compare the incoming version with its reference version
to get a diff.
- Reapply the diff on top of the latest version.
- If the merge is not possible, return a
"422 Conflict" HTTP response.
- If the merge worked, return the merged document,
to be updated by the client.
2023-11-29 13:04:24 +01:00
aff0181636
[style] Format the code
2023-11-24 23:31:18 +01:00
35dc1acb07
[fix] Use timezone aware datetimes
2023-11-24 23:31:18 +01:00
51c3ee3ce4
[ci] Add support for Github Actions
...
This runs the tests for different python versions,
with different working sets, and also run
a linter.
2023-11-24 23:31:18 +01:00
David Larlet
b4464a7ca2
Reuse the map_download view/url for the dashboard
...
Refs #1396
2023-11-24 15:28:58 -05:00
Yohan Boniface
42ebe43698
Add minimal playwright test case for slideshow
2023-11-23 14:53:52 +01:00
Yohan Boniface
0db7f377c3
Merge pull request #1395 from umap-project/picto-ui
...
Refactor icon selector: use tabs, make options more explicit
2023-11-18 12:13:14 +01:00
Yohan Boniface
c99892b51e
Picto field: fix clicking on preview to open the form
2023-11-16 11:46:49 +01:00
Yohan Boniface
cdfcce297d
picto field: better handling of default input values
...
We don't want to have an URL in the "char" field, and vice versa
2023-11-16 10:31:40 +01:00
David Larlet
13ca7e3e5d
Add tests for favicon-related views
2023-11-15 14:13:33 -05:00
David Larlet
2274243662
Fix integration tests for download view
2023-11-14 14:10:25 -05:00
David Larlet
30e83a143c
Tests download view for permissions
2023-11-14 13:37:02 -05:00
Yohan Boniface
4bfc3d6666
Picto field: make sure we open on the right tab
2023-11-14 18:45:40 +01:00
David Larlet
0be42d39cb
Full map download endpoint
2023-11-14 12:07:17 -05:00
3cc5d3b2af
Speedup the tests by using a weaker hash algo.
...
On my machine, it reduced the time to run the
test suite from 86s to 53s.
(Most of the remaining time is consumed by the
integration tests spawning chrome in the background)
2023-11-14 17:45:14 +01:00
Yohan Boniface
7810cba660
Test: reset MEDIA_ROOT after each test
...
We need uploaded pictograms path to be deterministic.
2023-11-13 19:28:30 +01:00
Yohan Boniface
0562055b65
Picot fied: add test for changing picto from marker itself
2023-11-13 19:28:07 +01:00
Yohan Boniface
00a13acb83
Add test covering changing picto from the datalayer
2023-11-13 16:58:54 +01:00
Yohan Boniface
d63d81fec3
Refactor icon search
2023-11-09 08:31:24 +01:00
Yohan Boniface
e509687956
Add first test for pictogram selection
2023-11-09 00:02:44 +01:00
Yohan Boniface
e5c616b49c
Fix tests
2023-10-27 20:51:50 +02:00
Yohan Boniface
a0da0b31a7
Merge pull request #1383 from umap-project/default-view-datalayer
...
Split defaultDatalayer in defaultView/EditDatalayer
2023-10-27 16:03:14 +02:00
Yohan Boniface
882cc74bcf
Fix displayOnLoad not honoured at import
...
fix #1043
2023-10-27 12:25:40 +02:00
Yohan Boniface
29ab98ede3
Split defaultDatalayer in defaultView/EditDatalayer
...
In view mode, we don't want the fallback to create a new datalayer.
2023-10-27 11:54:35 +02:00
Yohan Boniface
78b6025ef1
Add minimal CSV export
...
cf https://forum.openstreetmap.fr/t/export-csv-depuis-une-umap/18290
cf #123
fix #608
2023-10-26 14:28:18 +02:00
Yohan Boniface
739626351c
Choropleth: replace chromajs by colorbrewer + simple-statistics
...
simple-statistics has a few advantages:
- faster
- more accurate kmeans algo
- Jenks-Fisher algo
Also, I suspect will use it again for next step, which is Bubble
mode layer.
2023-10-11 19:36:12 +02:00
Yohan Boniface
7be238a4ab
Add minimal Choropleth integration test
2023-10-10 21:22:17 +02:00
Yohan Boniface
3b304e5249
Tests: populate settings from _umap_options when data is passed
2023-10-10 21:19:20 +02:00
Yohan Boniface
547485e50f
Allow to hide a datalayer from the caption list
2023-10-06 22:26:31 +02:00
Yohan Boniface
de6c9f3b84
Make sure we don't use DataLayer.settings by reference
2023-10-06 22:25:56 +02:00
Yohan Boniface
677fd3d982
Merge pull request #1336 from umap-project/shared-edit-url
...
Redirect to canonical when URL contains the ?edit parameter
2023-09-27 07:17:29 +02:00
Yohan Boniface
013d2fd5ee
Always remove ?edit from URL, so users do not share it by mistake
2023-09-27 07:13:30 +02:00
Yohan Boniface
0ad6e425b5
Refactor data browser
...
- move a dedicated class (function was becoming big)
- user FormBuilder instead of custom form elements
2023-09-25 13:42:14 +02:00
Yohan Boniface
e0e7fc5844
Better way to set DataLayer.geojson content during tests
2023-09-25 13:40:01 +02:00
Yohan Boniface
dcbec3534c
Fix datalayer's data duplicated at first save
2023-09-22 20:48:08 +02:00
Yohan Boniface
27f3e08bc1
Fix anonymous maps displayed by mistake in user dashboard
2023-09-22 19:00:42 +02:00
Yohan Boniface
c36ea1e4b8
Fix error when trying to change map owner
...
This bug has been introduced with this change:
8b4842ff21
That was not the correct fix, and this one should be the proper one.
We don't want to edit the permissions reference until we do save, otherwise user
cannot save as it is already no more the owner.
So:
- change permissions.options
- save
- commit those changes to map.options.permissions
- use only those values to check for isOwner and isAnonymousMap
2023-09-22 17:34:44 +02:00
Yohan Boniface
a9b9a7e955
Tests: reuse name var
2023-09-22 17:32:19 +02:00
Yohan Boniface
dfd04c33b0
Fix typo in tests
2023-09-22 17:32:19 +02:00
Yohan Boniface
e13f3ac235
Add DataLayer.isDataReadonly
...
In some places we need to know if a given datalayer can accept new
features, or not, whether because being readonly or being remote
2023-09-22 17:32:19 +02:00
Yohan Boniface
5ffd1a1b10
Expose DataLayer.edit_status separately to the front
...
They now differ from the Map.edit_status ones
2023-09-22 17:32:19 +02:00
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 36d7d87301
.
WIP
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
6b269125d4
Make sure only owner see the delete map button
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
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
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
73d19e849f
Refactor share_status check in datalayers views
2023-09-22 17:24:01 +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
43e5391c49
Fix map displayed more than once in user dashboard when multiple editors
...
fix #1325
2023-09-20 11:30:05 +02:00