Commit graph

1643 commits

Author SHA1 Message Date
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
6876bb1ba5 fix: listen just once for escape key in contextmenu 2024-10-04 17:44:50 +02:00
Yohan Boniface
1029c2655e wip: add a profile drop-down menu
fix #2113
2024-10-04 17:44:50 +02:00
Yohan Boniface
de93446af2
clean: remove zoom in and out from contextmenu (#2195)
Let's make it smaller (unless proven otherwise!).
2024-10-04 17:43:23 +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
a35b37f423 chore: use map getter instead of getMap in permissions 2024-10-04 17:35:35 +02:00
Yohan Boniface
0d7c6e451d chore: new strategy to update map name when editing it
Also propagate share_status (this may be moved to permissions)
2024-10-04 17:35:33 +02:00
Yohan Boniface
0fdb70ce66 chore: review save strategy
All is now orchestrated from a single method, instead of chaining
calls.
2024-10-04 17:34:59 +02:00
Yohan Boniface
13a7a2257d fix: do not fail in autocomplete if on_unselect is undefined 2024-10-04 17:34:59 +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
9b29b705da clean: remove zoom in and out from contextmenu
Let's make it smaller (unless proven otherwise!).
2024-10-04 17:32:39 +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
Yohan Boniface
f1619579a4 feat: allow to search by code INSEE in communes importer 2024-10-03 18:03:43 +02:00
Yohan Boniface
c2833987b7 fix: remoteData helpEntries were not on the right format
Should be now an array (not guessing anymore).
2024-10-01 08:55:58 +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
2d905bd048 chore: use GeoRSStoGeoJSON as ES module 2024-09-24 10:24:50 +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
051dd90450 fix: editing coordinates manually would not be saved
The primary coordinates is a two-elements Array in Point.coordinates,
but FormBuilder does not know how to edit an Array, so we edit the
`ui._latlngs` instead.

The proper fix would have been to teach FormBuilder how to edit an
Array, but that path is way longer, and given we plan to refactor
it totally, let's wait for that.

fix #2144
2024-09-17 08:57:10 +02:00
Yohan Boniface
8ecc231816 i18n 2024-09-13 19:09:17 +02:00
Yohan Boniface
b48f911bf2 chore: revamp permissions panel 2024-09-12 17:15:43 +02:00
Yohan Boniface
575b563c67 chore: remove unused class umap-facet-search from css 2024-09-12 17:15:43 +02:00
Yohan Boniface
6d777d9d46 feat: use a copiable input for secret edit link in permissions panel 2024-09-12 17:15:41 +02:00
Yohan Boniface
eda1223516 fix: do not show "Attache to my account" button if no logged in user 2024-09-12 16:53:27 +02:00
Yohan Boniface
445127254b fix: do not show "Layers" title if not layers in permissions panel 2024-09-12 16:53:27 +02:00
Yohan Boniface
ba01f09476 fix: icon alignement in browser, and user icon-xxx class 2024-09-12 15:04:13 +02:00
Yohan Boniface
409ec13163 i18n 2024-09-11 15:44:33 +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
e4202eb609 i18n 2024-09-10 16:31:49 +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
b218fc572b i18n 2024-09-06 17:24:51 +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
dc0cf50513 chore: bump Leaflet.Editable to 1.3.0 2024-09-06 17:01:07 +02:00
Yohan Boniface
7c94cc05ad
Merge pull request #2105 from umap-project/explicit-empty-rule
feat: add explicit empty/not empty check in conditional rules
2024-09-06 16:47:37 +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
e0b8e88de4
Merge pull request #2112 from umap-project/bottom-controls-zindex
fix: move bottom controls below panels
2024-09-06 16:37:34 +02:00
Yohan Boniface
d019a260c0 fix: move bottom controls below panels
fix #2103
2024-09-06 16:29:40 +02:00
Yohan Boniface
c879914eb8 fix: feature.isOnScreen is now passing the "bounds" argument
Otherwise, when using the browser, we'll end up using
this._map.getBounds(), but in this case the UI may not be in the
map (may be filtered).
2024-09-06 16:08:15 +02:00
Yohan Boniface
b8abc03684 feat: add a "Copy as GeoJSON" entry in the contextmenu 2024-09-05 17:57:23 +02:00
Yohan Boniface
76c3f87f67 wip: only display visible vertexmarker and do not display if too much
This should improve the edit experience with huge geometries. So one
can still edit the properties event if the path is big, and should
zoom in to allow the geometry to be editable.
2024-09-05 17:17:35 +02:00
Yohan Boniface
a25dc0c5a1 i18n 2024-09-04 16:05:23 +02:00
Yohan Boniface
ff014429b9
Merge pull request #2102 from umap-project/edit-circlemarker-properties
fix: do not fail when trying to edit a circlemarker
2024-09-04 16:00:55 +02:00
Yohan Boniface
31371cc38c
Merge pull request #2101 from umap-project/datalayers-control-expanded-with-onloadpanel
fix: make sure datalayersControl=expanded does not override onLoadPanel
2024-09-04 15:55:27 +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
4f9b4a80c3 fix: do not fail when trying to edit a circlemarker
And for now open the properties panel (geometry/position may be
edited later, when Leaflet.Editable knows about CircleMarker)
2024-09-04 14:36:03 +02:00
Yohan Boniface
c976a86982 fix: make sure to compare comparable values in ternary operators
Comparing `"null"` (in the HTML) and `null` (in the JS) was returning
false.
2024-09-04 11:32:14 +02:00
Yohan Boniface
ee7439a0f9 fix: tilelayer plus icon where never displayed
We were testing the length of the `_layers` property, which where
sliced to `maxShown` before…
2024-09-04 11:23:20 +02:00
Yohan Boniface
c33adcf0e7
Merge pull request #2096 from umap-project/fix-more-button-icon
fix: correct position for more button icon
2024-09-03 15:44:12 +02:00
Yohan Boniface
f986ebf3b3 fix: correct position for more button icon 2024-09-03 15:43:19 +02:00
Yohan Boniface
c321a9e70d
Merge pull request #2095 from umap-project/fix-tilelayer-plus-button
fix: only show + button in tilelayer switcher when more available
2024-09-03 15:35:08 +02:00
Yohan Boniface
ca75955ca9 fix: only show + button in tilelayer switcher when more available 2024-09-03 15:34:15 +02:00
Yohan Boniface
e9b17ea9f2 feat: make boundary persistent in overpass importer 2024-09-03 15:29:40 +02:00
Yohan Boniface
f3f61f5d98 feat: add more context in overpass importer autocomplete results 2024-09-02 17:01:04 +02:00
Yohan Boniface
661c57ebc8 i18n 2024-08-30 20:29:27 +02:00
David Larlet
aeee58b42a
Merge pull request #2062 from umap-project/user-groups
feat: add teams
2024-08-30 13:05:02 -04:00
David Larlet
426780af2c
chore: clean up CSS for buttons in content pages 2024-08-30 11:03:00 -04:00
Yohan Boniface
b895013709 fix: do not redraw remote layer if not dynamic 2024-08-30 16:03:14 +02: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
a45f6ddbe5 i18n 2024-08-30 15:44:56 +02:00
Yohan Boniface
360014901c
Merge pull request #2076 from umap-project/table-input-position
fix: remove position fixed for input and textarea in tableeditor
2024-08-30 15:38:47 +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
Yohan Boniface
061edd3198
Merge pull request #2081 from umap-project/fix-white-space-panel
fix: white space was broken since using loadTemplate
2024-08-29 20:08:51 +02:00
Yohan Boniface
d208b19ddb fix: use position fixed for input and textarea in tableeditor
Otherwise when scrolling the table, the input will not appear at
the expected position, and may even appear outside of the view when
the table is bigger than the viewport.

Drawback: the table will resize its columns when the input/textarea
is created (as position: sticky is in the flow). So I've also removed
the width reset.

fix #2071
2024-08-29 20:07:28 +02:00
Yohan Boniface
f236e7e3b6
Merge pull request #2077 from umap-project/fix-continue-backward-measure
fix: correctly add drawn latlng when continuing line backward
2024-08-29 20:01:01 +02:00
Yohan Boniface
f96f2e1405
Merge pull request #2079 from umap-project/delete-button-tiled
chore: use tiled icon css for big delete buttons
2024-08-29 19:59:44 +02:00
Yohan Boniface
9894c6a669 chore: use tiled icon css for big delete buttons
That's a bit of an experiment, so to see what needs to be done:
- move the icon in the 24px svg normal and white to it's on the same
  place as in the 16px
- replace the JS code (which used a :before class) to use a <i> element
- remove the old CSS class

I've a concern that the way we create elements using the loadTemplate is
more verbose and not DRY, let's discuss this :)
2024-08-29 19:52:29 +02:00
Yohan Boniface
5bbbf6a988 fix: white space was broken since using loadTemplate
Since a2ca3a1436, the panel/popup
template uses loadTemplate, which used to remove all white spaces
from the inner html. We had to do this to workaround white space
breaking the slideshow toolbox buttons.

So this commits fixes this problem in another way: do not remove
white space (usefull for text content in popup/panels), but use
a display: flex instead of inline-block.
2024-08-29 12:21:51 +02:00
Yohan Boniface
a72691e390 feat: display contact infos in the footer
This adds a new settings: UMAP_HOST_INFOS

Also, renames UMAP_FEEDBACK_LINK in UMAP_HELP_URL.

cf #2004
2024-08-29 11:41:11 +02:00
Yohan Boniface
5314fcc13b chore: better icon css default so to work in RTL too 2024-08-28 22:40:44 +02:00
Yohan Boniface
7a7553c52f chore: use imports instead of globals in share.js 2024-08-28 22:40:44 +02:00
Yohan Boniface
d0c1a55b2f chore: make icon.css more logical and working in rtl 2024-08-28 22:40:44 +02:00
fim100
ca86721b89 revert MarkerCluster.Default.css 2024-08-28 22:39:48 +02:00
fim100
431cd91d4c revert leaflet.css 2024-08-28 22:39:48 +02:00
fim100
f9ba7f3c50 Update map.css 2024-08-28 22:39:48 +02:00
fim100
e74ca192d6 fix placement of navigation links in dashboard
My Map and My Profile
2024-08-28 22:39:48 +02:00
fim100
80a842bd32 fix icon position in dashboard 2024-08-28 22:39:48 +02:00
fim100
c52207ee0f make map.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
c554427fa8 make alert.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
ed2a91330f make nav.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
3d7ca9c6f9 make importers.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
b886dbac3c make content.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
26b1369a3c make base.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
a39d89295c making slideshow.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
1671a0bef1 making Update icon.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
d65c48a88a making Update leaflet.css rtl-friendly 2024-08-28 22:39:48 +02:00
fim100
ec790ad296 making MarkerCluster.Default.css rtl-friendly 2024-08-28 22:39:48 +02:00
Yohan Boniface
ca4df94e7f fix: correctly add drawn latlng when continuing line backward
Otherwise the measure if wrong.

fix #2069
2024-08-28 15:01:43 +02: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
e42ed4373f wip: do not fail when setting "Circles" layer with non markers data 2024-08-15 10:36:54 +02:00