Commit graph

294 commits

Author SHA1 Message Date
Yohan Boniface
f9cf923684
feat: add a profile drop-down menu (#2194)
fix #2115
2024-10-04 18:26:49 +02:00
Yohan Boniface
8d59220d05
fix: make sure anonymous is owner at create (#2189)
The tricky thing is that the Map.is_owner() method check for cookies on
the request, but at create this cookie is not set yet on the request, so
we have to deal with an exception here.

fix #2176
2024-10-04 17:55:29 +02:00
Yohan Boniface
21be2e4fd0 fix: hide "my profile" from dropdown menu if ALLOW_EDIT_PROFILE=False 2024-10-04 17:54:13 +02:00
Yohan Boniface
03ae31c18b chore: remove map.dirty_datalayers
Let's try to make it simpler.
map.datalayers stores all datalayers
map.datalayers_index the non deleted ones sorted
2024-10-04 17:35:35 +02:00
Yohan Boniface
ff5195a787 fix: make sure anonymous is owner at create
The tricky thing is that the Map.is_owner() method check for cookies
on the request, but at create this cookie is not set yet on the
request, so we have to deal with an exception here.

fix #2176
2024-10-04 17:34:59 +02:00
Yohan Boniface
ebd3896e91 chore: replace native confirm by our styled ones 2024-10-04 17:34:20 +02:00
Yohan Boniface
4940f6c329 test: fix playwright selector 2024-10-04 17:31:05 +02:00
Yohan Boniface
c8ffe4273f
fix: allow to draw new proprotional circles and to drag them (#2172)
The main issue was because we overrided the `getLatLngs` function in our
PointMixin class, so I changed the way feature get the latlngs from the
UI classes. Plus getting CircleMarker to inherit more from Marker,
through PointMixin.

fix #2171
2024-10-04 16:43:49 +02:00
Yohan Boniface
91800d104d
fix: polygon with interactive=false was still interactive (#2151)
This bug has been introduced when spliting features, as we now only set
the Leaflet Polygon options with setStyle, will the `interactive` option
is only used in the init by Leaflet.

See https://github.com/Leaflet/Leaflet/pull/9475
2024-10-04 16:36:21 +02:00
Yohan Boniface
d95f06abab
chore: use our own contextmenu (#2109)
Let's start from here to clean the contextmenu items.

Current status:

### Some entries are generic, and always present:

In preview mode:


![image](https://github.com/user-attachments/assets/ea5cf2d3-f8f7-4d6a-8bf5-4c0334334bbc)

In edit mode:


![image](https://github.com/user-attachments/assets/2d2fa5c1-a275-4037-8780-d18a5e31949b)

### Some entries are specific to a clicked feature

In preview mode (Marker):


![image](https://github.com/user-attachments/assets/2d03f640-fb62-4be8-893d-d1ffc09d66f1)

In edit mode (Marker):


![image](https://github.com/user-attachments/assets/3f5ede89-fe3e-41a0-ac9a-575ef04e7a41)

In preview mode (Polygon):


![image](https://github.com/user-attachments/assets/fa88b13a-ac53-4bdd-896c-ada025640c35)

In edit mode (Polygon):


![image](https://github.com/user-attachments/assets/c2b46f2a-4f6d-4660-9654-d4f775386898)

In preview mode (Line):


![image](https://github.com/user-attachments/assets/74cd5c21-ad17-4592-b3da-f82f12c60baf)

In edit mode (Line):


![image](https://github.com/user-attachments/assets/4c9f89c6-a30e-4f40-84fe-3fff306358aa)


@Aurelie-Jallut Do you want to make suggestion on what to show or not in
this menu, depending on the context (feature or not, preview or edit
mode) ?
2024-10-04 16:34:06 +02:00
0a1d98b146 ci: Skip intermittent-failing tests when on the CI.
A few tests have been failing randomly, leading to developers not having
a lot of trust in the CI, and having to retrigger the runs.

Here is the list of tests:

- `test_should_honor_toZoom`
- `test_default_view_locate`
- `test_umap_import_from_textarea`

This skips these tests when running in the CI, by looking at the `CI`
environment variable, set by Github Actions [0]

[0] https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#default-environment-variables
2024-09-27 18:26:47 +02:00
5485fb99ab feat(sync): Send remote operations to peers when they join.
- Operations are now stored locally in memory. All operations are tied
  to an HLC (Hybrid Logical Clock), making it possible to order them
  concistently.

- Messages are handled in their `on*` methods, leading to a clearer
  implementation.

- When a new peer joins, it asks a random peer for the list of
  operations, and re-apply them locally.

- Messages types names have been updated to follow CamelCase, and to be
  similar across the client and the server.

- Pass `sync=False` to `makeFeature` in the updaters, to avoid
  generating duplicate operations on message retrieval.
2024-09-27 18:26:47 +02:00
Yohan Boniface
7dbb3e0b9a fix: allow to draw new proprotional circles and to drag them
The main issue was because we overrided the `getLatLngs` function
in our PointMixin class, so I changed the way feature get the latlngs
from the UI classes.

fix #2171
2024-09-27 08:58:08 +02:00
Yohan Boniface
6618ff5648 fix: polygon with interactive=false was still interactive
This bug has been introduced when spliting features, as we now
only set the Leaflet Polygon options with setStyle, will the
`interactive` option is only used in the init by Leaflet.

See https://github.com/Leaflet/Leaflet/pull/9475

fix #2149
2024-09-20 10:21:57 +02:00
Yohan Boniface
51c1fb0a8f
Merge pull request #2129 from umap-project/fix-cluster-browser-view
fix: clicking feature in the browser would not open popup in cluster
2024-09-11 15:30:37 +02:00
Yohan Boniface
f232bf476c fix: clicking feature in the browser would not open popup in cluster
fix #2127
2024-09-11 14:54:54 +02:00
Yohan Boniface
c804a01bfb fix: fix merge lines on vertex click
fix #2125
2024-09-11 11:39:01 +02:00
Yohan Boniface
cd4b2189ee fix: delete shape from edit toolbar
fix #2124
2024-09-11 10:01:39 +02:00
Yohan Boniface
c58964d797 fix: filter feature by displayName by default
fix #2106
2024-09-10 10:02:41 +02:00
Yohan Boniface
9d727bd01f wip: use our own contextmenu 2024-09-09 15:53:55 +02:00
Yohan Boniface
ae09c343d1
Merge pull request #2107 from umap-project/visible-vertexmarkers
wip: only show visible vertexmarkers and do not show when there are too much
2024-09-06 17:21:03 +02:00
Yohan Boniface
6d21d47af9 feat: add explicit empty/not empty check in conditional rules
Also fix boolean behaviour (only true was working)
2024-09-06 16:47:19 +02:00
Yohan Boniface
a67c800ee0 wip: add integration test coverring huge path geometry editing 2024-09-05 17:54:01 +02:00
Yohan Boniface
71ceb87fe2 fix: make sure datalayersControl=expanded does not override onLoadPanel
This value of datalayersControl exists for retrocompat only (it's now
replaced by onLoadPanel=browser)
2024-09-04 15:00:14 +02:00
Yohan Boniface
e9b17ea9f2 feat: make boundary persistent in overpass importer 2024-09-03 15:29:40 +02:00
Yohan Boniface
2b3f0b00fb
Merge pull request #2055 from umap-project/dependabot/pip/django-5.1
chore: bump django from 5.0.8 to 5.1
2024-08-30 20:28:28 +02:00
David Larlet
5c31014086
tests: check collectstatic generates files with hash 2024-08-30 12:32:10 -04:00
Yohan Boniface
13735a5739 chore: use our own Team model
We suppose we'll quickly want more than a name, like a description
or a logo_url, and maybe a access_status or permissions…
2024-08-30 15:53:18 +02:00
Yohan Boniface
6b6be017bb wip: use autocomplete to add users in groups 2024-08-29 20:12:24 +02:00
Yohan Boniface
a3e972bf5d wip: add group maps page and display group as author when defined 2024-08-29 20:12:22 +02:00
Yohan Boniface
dce0ee5f73 wip: use auth.models.Group and manage permissions 2024-08-29 20:11:19 +02:00
Dimitar
f4c3a10251
Also update regex 2024-08-19 12:20:58 +03:00
Dimitar
92e3de87db
Use preferred tile.openstreetmap.org URL
For reference: https://github.com/openstreetmap/operations/issues/737
2024-08-15 19:58:15 +03:00
Yohan Boniface
ab8bce985e
Merge pull request #2053 from umap-project/bubble-layer
Add "Proportional Circles" layer type
2024-08-15 11:04:47 +02:00
Yohan Boniface
f05590e605
Merge pull request #2025 from umap-project/login-from-map
fix: catch login_required from map page and add a way to login
2024-08-15 10:57:10 +02:00
Yohan Boniface
0847dc1ba6 fix: import GPX desc as description 2024-08-14 11:01:31 +02:00
Yohan Boniface
cbb022f804 wip: use sqrt for computing circles radius to smooth the sizes
The theory is that the circles surface should be proportional, not
the radius.
2024-08-13 11:11:24 +02:00
Yohan Boniface
6b60b0de64 wip: add "Proportional Circles" layer 2024-08-13 11:11:24 +02:00
Yohan Boniface
a04accf16c
Merge pull request #1994 from umap-project/more-tilelayers-button
feat: add a "+" button in the tilelayer switcher
2024-08-13 11:05:02 +02:00
Yohan Boniface
00c384bf25 feat: allow to display a polygon "negative"
fix #1125
2024-08-13 10:20:44 +02:00
Yohan Boniface
facccc1c70 feat: add a "+" button in the tilelayer switcher 2024-08-06 13:38:39 +02:00
David Larlet
ff8903e751
fix: remove Ctrl from tests for cross OS compatibility 2024-08-02 11:04:24 -04:00
Yohan Boniface
6de5dabcc6 fix: fix georss import 2024-07-31 22:31:43 +02:00
Yohan Boniface
5145404dc4 fix: show delete button for owner and anonymous owner 2024-07-31 22:29:29 +02:00
Yohan Boniface
3bdd5bedf1 fix: catch login_required from map page and add a way to login 2024-07-30 14:41:10 +02:00
Yohan Boniface
671d88296f wip: remove print 2024-07-29 16:24:59 +02:00
Yohan Boniface
65c5cb5ab5 wip: refactor isolateShape 2024-07-29 16:24:59 +02:00
Yohan Boniface
a022619625 wip: refactor DataLayer.geojsonToFeatures and fix sync tests 2024-07-29 16:24:59 +02:00
Yohan Boniface
081323dc8a wip: (almost) fix tests 2024-07-29 16:24:59 +02:00
Yohan Boniface
6b67ce26a1 feat: expose marker altitude in variables (as "alt") 2024-07-23 21:33:55 +02:00