Commit graph

1301 commits

Author SHA1 Message Date
Yohan Boniface
27f3e08bc1 Fix anonymous maps displayed by mistake in user dashboard 2023-09-22 19:00:42 +02:00
David Larlet
500577a201
1.8.0 2023-09-22 12:29:58 -04:00
Yohan Boniface
76debf318b i18n 2023-09-22 18:28:41 +02:00
Yohan Boniface
2c7b6153b4 i18n 2023-09-22 18:27:41 +02:00
David Larlet
2563357c02
Merge pull request #1321 from umap-project/1318-restrict-zoom-options
Restrict possible min/max zoom values
2023-09-22 12:12:56 -04:00
David Larlet
f6dbb7d45b
Correct url type for background url templates 2023-09-22 12:10:53 -04:00
David Larlet
aed9e898e9
Restrict possible min/max zoom values
Fix #1318
2023-09-22 12:00:15 -04: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
157146dc04 Do not make map name and share status label clickable unless user can edit 2023-09-22 17:32:19 +02:00
Yohan Boniface
a04acb828d Update Map.can_edit docstring 2023-09-22 17:32:19 +02:00
Yohan Boniface
f05bdb2ac3 Use datalayer.isDataReadOnly in feature.isReadOnly 2023-09-22 17:32:19 +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
6ba8166f86 Reset DataLayer.edit_status migration 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 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
Yohan Boniface
3d45242684 Remove use of getMap on the map itself 2023-08-15 16:20:48 +02:00
Yohan Boniface
ac30e71e74 Do not let advancedFilters control add/remove features from map
This should be done by the datalayer itself, which is now the case.
2023-08-15 16:20:48 +02:00
Yohan Boniface
d8a1592fcf Smaller iframe min-width for screen < 480px 2023-08-15 08:31:14 +02:00
Yohan Boniface
5058e27496
Merge pull request #1253 from umap-project/from-to-zoom
Make fromZoom and toZoom options available for all layers
2023-08-15 07:58:33 +02:00
Yohan Boniface
c0dd8901e4 More readable check from DataLayer.showAtZoom 2023-08-15 07:57:38 +02:00
Yohan Boniface
b70e20cc89
Merge pull request #1251 from umap-project/explicit-default
Explicitely use map default when dynamic var is unset
2023-08-15 07:50:42 +02:00
Yohan Boniface
dfe4db1f0d Add and use L.Util.hasVar 2023-08-15 07:48:59 +02:00
Yohan Boniface
ebeeee072f
Merge pull request #1255 from umap-project/default-view
Better control of default view
2023-08-15 07:32:07 +02:00
Yohan Boniface
92fbc0a81c
Merge pull request #1252 from umap-project/tilelayer-panel
Do not close panel when switching tilelayer
2023-08-15 07:28:55 +02:00
Yohan Boniface
567a3fb308
Merge pull request #1250 from umap-project/has-geom
Do not try to compute geom based property before we have a geom
2023-08-15 07:28:02 +02:00
Yohan Boniface
48750b3fde
Merge pull request #1245 from umap-project/dynamic-default-status
Allow to configure default share and edit status
2023-08-15 07:26:29 +02:00
Yohan Boniface
fefa6954eb
Merge pull request #1241 from umap-project/misplaced-icons
Fix misplaced icons
2023-08-15 07:25:57 +02:00
Yohan Boniface
5b867bacfa
Merge pull request #1240 from umap-project/fix-panel-popup
Fix popup panel not opening from the data browser
2023-08-15 07:25:30 +02:00
Yohan Boniface
f94a513c4a
Merge pull request #1235 from umap-project/logout-redirect
Adapt logout behaviour in ajax/not ajax modes
2023-08-15 07:24:55 +02:00
Yohan Boniface
d008bc7539 Better control of default view
fix #40

Let the user choose the map behaviour to define default view:

- saved center and zoom: current behaviour, and default
- bounds: will compute the view to fit all the map data, useful for
  having the same view in different sized devices (mobile…)
- latest feature: useful in some situation, where the map tracks some
  progress (travel…), this will certainly needs a bit more iterations,
  mainly to have an explicit default datalayer
- user location: this option used to exist but was then removed, I
  can remember when and why

Note: when there is a URL hash, the hash will be used
2023-08-12 07:39:13 +02:00
Yohan Boniface
322c9fe042 Make fromZoom and toZoom options available for all layers
fix #473
2023-08-10 09:46:17 +02:00
Yohan Boniface
e8f9ed5a9d Do not close panel when switching tilelayer
fix #190
2023-08-10 07:10:27 +02:00
Yohan Boniface
1d0c7008fa Explicitely use map default when dynamic var is unset 2023-08-09 09:06:26 +02:00
Yohan Boniface
38c29b9cc1 Do not try to compute geom based property before we have a geom
fix #1177
2023-08-09 08:09:26 +02:00
Yohan Boniface
8758c0dc65 i18n 2023-08-07 08:17:39 +02:00
Yohan Boniface
0c3dc02fc1 Allow to configure default share and edit status
fix #1244
2023-08-07 08:16:49 +02:00
Yohan Boniface
88209158cc Fix test failing due to attribute order
Let's fix by hand for this time and see if happen again…
2023-08-02 16:29:45 +02:00
Yohan Boniface
8491276e04 Fix misplaced icons 2023-08-01 10:37:25 +02:00
Yohan Boniface
3115038ba6 Fix popup panel not opening from the data browser
The issue was:
- clicking on feature in the data browser replaces the panel content
- then the clicked link (the feature name or the little glass icon) is removed
- thus it is detached from the DOM
- and specially from its parent on which disableClickPropagation was called
- so Leaflet fails to prevent click propagation
- so the map received the click, and thus it call the onRemove method on
  the panel, as expected (clicking on the map always close the current
  open popup, if any)

This could be removed when this is released:

https://github.com/Leaflet/Leaflet/pull/9052
2023-07-31 20:59:09 +02:00
Yohan Boniface
50b8b66261 Simplify Panel popup inheritance
Panel is not a real popup, so the less we inherit the better
2023-07-31 20:58:25 +02:00
Yohan Boniface
d0ce5f68cd adapt iframe min-width for popup large
fix #1236
2023-07-31 11:34:25 +02:00
Yohan Boniface
fc37ad7c17 Adapt logout behaviour in ajax/not ajax modes 2023-07-27 15:02:51 +02:00
Yohan Boniface
d449564250 Move Map.renderEditToolbar to controls, for consistency 2023-07-25 17:50:28 +02:00
Yohan Boniface
bd48bfc617 Align edit toolbar icon with vertical icons 2023-07-25 11:47:30 +02:00
Yohan Boniface
701f2704f6 Pool man responsive edit toolbar 2023-07-25 11:43:59 +02:00
Yohan Boniface
ccac42d25a Full text edit button 2023-07-25 11:19:00 +02:00
Yohan Boniface
10b1e0bb0a Add icons to cancel and save buttons 2023-07-25 10:43:35 +02:00
Yohan Boniface
7287d4a528 Change "my maps" link label in edit toolbar 2023-07-25 10:18:30 +02:00
Yohan Boniface
b48b4ce2d3 Add underline on hover on edit toolbar links 2023-07-25 10:18:30 +02:00
Yohan Boniface
4e606d81bc Add share_status in edit toolbar 2023-07-25 10:18:30 +02:00
Yohan Boniface
a74439ac47 Remove click-to-edit 2023-07-25 10:18:30 +02:00
Yohan Boniface
202c73c35a Add logo in edit header
cf #609
2023-07-25 10:18:30 +02:00
Yohan Boniface
d56162390d
Merge pull request #1232 from umap-project/edit-panel-icon
Add icons to better distinguish edit panels
2023-07-25 10:18:11 +02:00
Yohan Boniface
5825b54d9e
Merge pull request #1229 from umap-project/gpx-mimetype
Use proper GPX mimetype
2023-07-25 10:16:58 +02:00
Yohan Boniface
2821cfba86
Merge pull request #1228 from umap-project/url-in-cors-message
Add target URL in CORS error message
2023-07-25 10:15:49 +02:00
Yohan Boniface
831d09c6e1 Make URL available for translators in CORS message 2023-07-25 10:14:57 +02:00
Yohan Boniface
3b1b877f64 i18n 2023-07-24 16:44:07 +02:00
Yohan Boniface
7a5a8794fd Add icons to better distinguish edit panels
cf #1156
2023-07-24 16:40:08 +02:00
Yohan Boniface
429e5d0b93 Use proper GPX mimetype
fix #1225
2023-07-24 09:33:20 +02:00
Yohan Boniface
cd49d11e5e Add target URL in CORS error message
fix #1226
2023-07-24 08:51:55 +02:00
Yohan Boniface
a9d612bf6c 1.4.4 2023-07-22 09:15:21 +02:00
Yohan Boniface
bd339db397
Merge pull request #1224 from umap-project/fix-tooltip-position
Do not modify tooltipAnchor inplace, as it's shared by all markers
2023-07-22 09:11:53 +02:00
Yohan Boniface
0531ca4700
Merge pull request #1222 from umap-project/proxy-timeout
Add a timeout in proxy
2023-07-22 09:10:36 +02:00
Yohan Boniface
5261daf6ec
Merge pull request #1221 from umap-project/non-ascii-variables
Be more liberal in what chars a variable can contain
2023-07-22 09:10:12 +02:00
Yohan Boniface
fc7d693984 i18n 2023-07-22 09:07:56 +02:00
Yohan Boniface
2b1b80ae23 Do not modify tooltipAnchor inplace, as it's shared by all markers
fix #1223
2023-07-22 09:04:29 +02:00
Yohan Boniface
2f89e99cb8 Add a timeout in proxy
This view should not be used in production, but it is sometimes, so
just in case…
2023-07-21 12:51:31 +02:00
Yohan Boniface
299e9e0821 Fix two JS tests broken since 8b4842ff21 2023-07-20 14:19:50 +02:00
Yohan Boniface
95e1745e6f Be more liberal in what chars a variable can contain
May break some undocumented cases…

cf #139 #676
2023-07-20 14:14:56 +02:00
Yohan Boniface
a0654776f6 Add migrations for models label changes 2023-07-20 11:54:45 +02:00
Yohan Boniface
0ec481ed07 1.4.3 2023-07-20 11:49:31 +02:00
Yohan Boniface
05bbe625bd
Merge pull request #1220 from umap-project/last-modified-no-gzip
gzip file may not be yet created when computing the Last-Modified
2023-07-20 09:22:35 +02:00
Yohan Boniface
0d4d4cd147 i18n 2023-07-20 09:08:51 +02:00
Yohan Boniface
d91184a021 gzip file may not be yet created when computing the Last-Modified 2023-07-20 09:02:40 +02:00
Yohan Boniface
145d5c6c7d i18n 2023-07-19 21:53:18 +02:00
Yohan Boniface
48b8ec4ed6 i18n 2023-07-19 15:49:20 +02:00
Yohan Boniface
34175b89a8 1.4.2 2023-07-19 15:47:25 +02:00
Yohan Boniface
261a7547a6 i18n 2023-07-19 15:47:13 +02:00
Yohan Boniface
04a36556bd
Merge pull request #1217 from umap-project/arobase-in-variable
Allow to use arobase in variables
2023-07-19 15:42:22 +02:00
Yohan Boniface
6a7eefe460
Merge pull request #1214 from umap-project/labelkey-help
Update labelKey help text
2023-07-19 15:22:36 +02:00
Yohan Boniface
b0566410c5
Merge pull request #1216 from umap-project/fix-if-unmodified-pre-1.3.0
Fix if unmodified pre 1.3.0
2023-07-19 15:22:11 +02:00
Yohan Boniface
13a1c3bd5c Use gzip mtime for Last-Modified comparison when in gzip mode
Prior to 1.3.0, uMap was not setting the gzip mtime, so it was
whatever the time it get requested at first.
Since 1.3.0:
- when creating the geojson.gzip, we also force its mtime to be
  the geojson one
- we replaced If-Match by If-Unmodified, which relies on Last-Modified

When uMap is served by a proxy like Nginx (and X-Accel-Redirect),
and if user accepts gzip, then the Last-Modified would be the gzip
one, not the flat geojson one.

So when comparing that value in a subsequent update, we need to
compare with the correct value.

fix #1212
2023-07-19 14:21:00 +02:00
Yohan Boniface
f69c959f2a Use ns time for geojson and gzipped geojson mtime 2023-07-19 14:16:57 +02:00
Richlv
d921d3d6dd
typo fixes 2023-07-19 13:45:13 +03:00
Yohan Boniface
56586125a4 Allow to use arobase in variables
fix #1028
2023-07-19 08:25:31 +02:00
Yohan Boniface
54e5064d70 Update labelKey help text
fix #1022
2023-07-19 08:16:14 +02:00
Yohan Boniface
1be7950237 i18n 2023-07-18 12:21:16 +02:00
Yohan Boniface
5be060d937 i18n 2023-07-17 20:21:05 +02:00
Yohan Boniface
6f667f2749 1.4.1 2023-07-17 16:22:28 +02:00
Yohan Boniface
6abc088121 i18n 2023-07-17 16:16:08 +02:00
Yohan Boniface
c1f8684a29 Replace si_LK by si 2023-07-17 16:00:55 +02:00
Yohan Boniface
2f00ddb8c5 Fix test 2023-07-17 15:55:37 +02:00
Yohan Boniface
6021191522 i18n 2023-07-17 15:16:45 +02:00
Yohan Boniface
e7212e8dff
Merge pull request #1208 from umap-project/dashboard-popup-end
Fallback user to dashboard after OAuth process
2023-07-17 15:07:26 +02:00
Yohan Boniface
4a06046079
Merge pull request #1209 from umap-project/share-status-in-dashboard
Display share status in dashboard
2023-07-17 15:06:50 +02:00
Yohan Boniface
d26db7f0bc
Merge pull request #1211 from umap-project/mousewheel-to-wheel
Switch from mousewheel to wheel, as Leaflet did
2023-07-17 15:06:18 +02:00
Yohan Boniface
bbcf9d8b96 Switch from mousewheel to wheel, as Leaflet did
Otherwise, wheel will zoom the map even when sent on a panel or
control.
2023-07-17 12:33:35 +02:00
Yohan Boniface
77cedd3288 Display share status in dashboard 2023-07-17 09:08:59 +02:00
Yohan Boniface
a2da1d64f7 Fallback user to dashboard after OAuth process
Now that we have a dashboard page, this makes more sense than the
"public profile" page.
2023-07-16 12:04:51 +02:00
Yohan Boniface
37732b8f16 Fix tooltip anchor not updated anymore according to the direction
This is a change in Leaflet 1.7.0

cf https://github.com/Leaflet/Leaflet/issues/7302
2023-07-16 11:35:33 +02:00
Yohan Boniface
891c23747f 1.4.0 2023-07-15 11:36:42 +02:00
Yohan Boniface
d4aa1c6311 i18n 2023-07-15 09:41:19 +02:00
Yohan Boniface
25d2d5adf5
Merge pull request #1203 from umap-project/iframe-popup
Better fit iframe in popup
2023-07-15 09:37:16 +02:00
Yohan Boniface
301f123371
Merge pull request #1205 from umap-project/fix-line-icons
Fix line edit icons
2023-07-15 09:36:56 +02:00
Yohan Boniface
617d6ba9ef Fix last maps returned when search was empty 2023-07-15 09:31:55 +02:00
Yohan Boniface
6b539b9d40 Add pagination to map table in user dashboard 2023-07-15 09:31:55 +02:00
Yohan Boniface
7adc409cdb Add html title to dashboard page 2023-07-15 09:31:55 +02:00
Yohan Boniface
7fb776c2a4 add thead and tbody in maps table 2023-07-15 09:31:54 +02:00
Yohan Boniface
bb4c027ec7 Allow to use http://umap.fr/map/xxxx?share to open shareBox on load
That way is more consistent with ?download and ?edit
2023-07-15 09:31:37 +02:00
Yohan Boniface
4c879ca991 Fix drag-hangle icon missing since svg switch 2023-07-13 19:38:13 +02:00
Yohan Boniface
c8065fb29e Fix line edit icons
fix #1204
2023-07-13 19:38:11 +02:00
Yohan Boniface
8f76252b3a Apply suggestions from code review
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2023-07-12 09:09:01 +02:00
Yohan Boniface
d2cc6e101d Minimal user_dashboard tests 2023-07-12 09:09:01 +02:00
Yohan Boniface
4d0ced9a98 Add very basic user dashboard 2023-07-12 09:09:01 +02:00
Yohan Boniface
3592307b4e Allow to download the full map data at load 2023-07-12 09:09:01 +02:00
Yohan Boniface
3786a767f2 Allow to open the map in edit mode 2023-07-12 09:09:01 +02:00
Yohan Boniface
63a7ef00ea Allow to open the share form on map load 2023-07-12 09:09:01 +02:00
Yohan Boniface
e1f34e20ff Fix typo in dataloading event names 2023-07-12 09:09:01 +02:00
Yohan Boniface
5088d97ca0 Better fit iframe in popup 2023-07-12 08:45:47 +02:00
Yohan Boniface
c2d8e93e8e i18n 2023-07-12 07:37:52 +02:00
Yohan Boniface
adb325bb79
Merge pull request #1201 from umap-project/bump-leaflet
Bump Leaflet to 1.9.4
2023-07-11 22:45:23 +02:00
Yohan Boniface
67e7ec7424
Merge pull request #1199 from umap-project/popup-overflow-x
We do not want horizontal overflow/scroll bar in popups
2023-07-11 22:43:05 +02:00
Yohan Boniface
08fed332cb Bump Leaflet to 1.9.4
Changelog:

https://github.com/Leaflet/Leaflet/blob/main/CHANGELOG.md

Sounds safe for us. Tested localy. Tests pass. Inch Allah.
2023-07-11 16:01:39 +02:00
Yohan Boniface
8b4842ff21 Fix permissions panel empty at first save
cf https://forum.openstreetmap.fr/t/apres-enregistrement-dune-carte-les-permissions-ne-sont-pas-presentes/15995
2023-07-11 08:33:32 +02:00
Yohan Boniface
3978e46356 We do not want horizontal overflow/scroll bar in popups
fix #1198
2023-07-10 07:04:51 +02:00
Yohan Boniface
31bf449e73 Display time in datalayer versions list
fix #852
2023-07-04 10:19:05 +02:00
Yohan Boniface
6429e10110 1.3.7 2023-07-03 22:08:06 +02:00
Yohan Boniface
cf397956f9 i18n 2023-07-03 22:07:21 +02:00
Yohan Boniface
4b5234389e
Merge pull request #1188 from umap-project/layers-icons
Layers icons
2023-07-03 20:54:14 +02:00
Yohan Boniface
d05cd1ecff Adjust multiline icon so it does not show up on datalayer icon box 2023-07-03 20:52:33 +02:00
Yohan Boniface
f9e4f13e86 Fix datalayers icon position
Otherwise we see the top border of the icon below…
2023-07-03 20:47:25 +02:00
Yohan Boniface
133a74b1f9
Merge pull request #1190 from umap-project/locale-vs-lang
Use LANGUAGE_CODE instead of locale name for browser APIs
2023-07-03 20:41:30 +02:00
Yohan Boniface
3ebc83c133 Do not ignore punctuation when sorting features
fix #1189
2023-07-03 20:19:39 +02:00
Yohan Boniface
339ef3555f Use LANGUAGE_CODE instead of locale name for browser APIs
fix #1187
2023-07-03 19:44:49 +02:00
Yohan Boniface
4153580a6a Invert datalayers and tilelayers icons in main toolbar 2023-07-03 19:07:30 +02:00
Yohan Boniface
1a5276d649 Invert tilelayers and datalayers icons on edit toolbar 2023-07-03 19:04:36 +02:00
Yohan Boniface
a2f98f989c change tilelayers icon 2023-07-03 19:02:07 +02:00
David Larlet
e03bbeadfc
1.3.6 2023-07-01 11:44:24 -04:00
David Larlet
51978f9f2a
Display latest created maps on empty search 2023-06-30 21:40:35 -04:00
Yohan Boniface
30bbffff61 change datalayer icon 2023-06-30 18:33:56 +02:00
Yohan Boniface
9000e7c2f4
Merge pull request #1174 from umap-project/svg-icons
Svg icons
2023-06-30 16:26:32 +02:00
Yohan Boniface
78d0f13f97 Change arrow box border 2023-06-29 22:41:29 +02:00
Yohan Boniface
a27db07879 Use correct arrow more/less 2023-06-29 22:36:13 +02:00
Yohan Boniface
fa742a329f Move border of arrow more/less box to div to better align with other icons 2023-06-29 22:30:57 +02:00
Yohan Boniface
86bff268ba Move arrow icon to 24px
So we have more space around, otherwise there 1px of the narrow
icons appear.
2023-06-29 22:23:23 +02:00
Yohan Boniface
146e58a5bc Update icons from base.css too
A bunch of those are unused:

- i.info was used in helpTooltip, but it's not anymore
- umap-delete, umap-to-polyline and such was used in contextmenu,
  but are not anymore
2023-06-29 07:46:26 +02:00
Yohan Boniface
ad5057c5b8 Fix click-to-edit icon position 2023-06-28 22:12:39 +02:00
Yohan Boniface
9056b8603f Use svg for 16 px icons too
Those icons would need more love to better factorize the way
they are used:
- the size of the HTML element including the icon is not consistent
- some icons are on the default file but could be in the white one

To be done in a later step
2023-06-28 21:39:43 +02:00
Yohan Boniface
2e6272f8e2 Remove unused icon 2023-06-28 07:36:08 +02:00