openstreetmap / iD

🆔 The easy-to-use OpenStreetMap editor in JavaScript.
https://www.openstreetmap.org/edit?editor=id
ISC License
3.29k stars 1.19k forks source link

Add URL option to disable editing some features #7410

Open quincylvania opened 4 years ago

quincylvania commented 4 years ago

In mapping campaigns, volunteers are often directed to just map certain features. However, iD lets them edit anything on the map. We should add an endpoint so tasking tools can tell iD that some or all existing features should be read-only. This is similar to the existing endpoint that limits the addable presets and would work well in tandem with it.

tordans commented 4 years ago

I would love to see this!

For me, this is one of the missing features that is needed to use iD to create single purpose editing experiences. Did I show you the prototype for editing bike parking in Heidelberg? We worked around the "readonly" mode by just hiding everything else; which is great for a few features (like shops), but not for all (like streets and buildings).

Apart from the url-param (or otherwise specified config), other things I am wondering about for this …

jidanni commented 11 months ago

Actually, a general read-only mode would be great.

So have a lock button, just like Vespucci. Even adopt its tags only etc. editing modes.

Also, people not logged in could get a look at what the editor looks like, without needing to sign up... as it would be started in read-only mode, with a message of course... Ha ha call it private editing incognito read-only mode.

The only problem would be one could now share /edit links, to get a version of OSM.ORG that had air photos as background instead of just carto maps... which isn't what the air map donors intended.

And wait, to use the measurement panel, often one needs to add temporary nodes... so should the read-only part only step in when one tries to save their changes... But then people might work for hours only to find they couldn't save their changes. I know: when they press one of "Point Line Area" they should get a warning "Did you know you are in read-only mode? Your changes will be lost later. OK?" Also when they try to move something etc. Naaa... to complicated. Just use the Vespucci Lock/Unlock idea. If a user is so advanced that s/he makes temporary nodes, then they are responsible to delete them and not send them in a changeset.

In fact, perhaps one could also start in read-only mode with a second choice here on OSM.ORG: 20230813T031748