For a link like http://osm.org/edit?node=n#map=19/37.77683/-122.41459, select the feature but also respect the map location. This is the fix for iD. It appears P2 requires internal code modifications. Refs #620
37 lines
1.1 KiB
Text
37 lines
1.1 KiB
Text
<% if defined? ID_KEY %>
|
|
<div id="map">
|
|
<iframe frameBorder="0" id="id-embed" class="id-embed"></iframe>
|
|
</div>
|
|
<script>
|
|
var params = {};
|
|
|
|
var mapParams = OSM.mapParams();
|
|
if (mapParams.object) {
|
|
params.id = mapParams.object.type[0] + mapParams.object.id;
|
|
mapParams = OSM.parseHash(location.hash);
|
|
if (mapParams.center) {
|
|
params.map = mapParams.zoom + '/' + mapParams.center.lng + '/' + mapParams.center.lat;
|
|
}
|
|
} else {
|
|
<% if @lat && @lon -%>
|
|
params.map = '16/<%= @lon %>/<%= @lat %>';
|
|
<% else -%>
|
|
params.map = (mapParams.zoom || 17) + '/' + mapParams.lon + '/' + mapParams.lat;
|
|
<% end -%>
|
|
}
|
|
|
|
var hashParams = OSM.params(location.hash.substring(1));
|
|
|
|
if (hashParams.background) {
|
|
params.background = hashParams.background;
|
|
}
|
|
|
|
if (hashParams.gpx) {
|
|
params.gpx = hashParams.gpx;
|
|
}
|
|
|
|
$('#id-embed').attr('src', '<%= id_url :locale => params[:locale] %>#' + querystring.stringify(params));
|
|
</script>
|
|
<% else %>
|
|
<script type="text/javascript">alert("<%= t 'site.edit.id_not_configured' %>")</script>
|
|
<% end %>
|