68 lines
2.2 KiB
Text
68 lines
2.2 KiB
Text
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset='utf-8'>
|
|
<%= stylesheet_link_tag 'iD' %>
|
|
<!--[if !IE || gte IE 9]><!-->
|
|
<%= javascript_include_tag 'iD' %>
|
|
<!-- <![endif]-->
|
|
</head>
|
|
<body>
|
|
<div id='id-container'></div>
|
|
<script>
|
|
if (typeof iD == 'undefined') {
|
|
document.getElementById('id-container').innerHTML = 'This editor is supported ' +
|
|
'in Firefox, Chrome, Safari, Opera, and Internet Explorer 9 and above. ' +
|
|
'Please upgrade your browser or use Potlatch 2 to edit the map.';
|
|
document.getElementById('id-container').className = 'unsupported';
|
|
} else {
|
|
<% locale = select_locale(ID::LOCALES).to_s %>
|
|
|
|
var id = iD()
|
|
.embed(true)
|
|
.assetPath("/iD/") <%# Can't use asset_path('iD/') in production. %>
|
|
.assetMap(<%= assets("iD").to_json.html_safe %>)
|
|
.locale("<%= locale %>", "<%= asset_path("iD/locales/#{locale}.json") %>")
|
|
.preauth({
|
|
<% token = @user.access_token(ID_KEY) %>
|
|
url: "<%= request.protocol + request.host_with_port %>",
|
|
oauth_consumer_key: "<%= token.client_application.key %>",
|
|
oauth_secret: "<%= token.client_application.secret %>",
|
|
oauth_token: "<%= token.token %>",
|
|
oauth_token_secret: "<%= token.secret %>"
|
|
});
|
|
|
|
id.map().on('move.embed', parent.$.throttle(250, function() {
|
|
var zoom = ~~id.map().zoom(),
|
|
center = id.map().center(),
|
|
llz = { lon: center[0], lat: center[1], zoom: zoom };
|
|
|
|
parent.updatelinks(llz, zoom);
|
|
|
|
// Manually resolve URL to avoid iframe JS context weirdness.
|
|
// http://bl.ocks.org/jfirebaugh/5439412
|
|
var hash = parent.OSM.formatHash(llz);
|
|
if (hash !== parent.location.hash) {
|
|
parent.location.replace(parent.location.href.replace(/(#.*|$)/, hash));
|
|
}
|
|
}));
|
|
|
|
parent.$("body").on("click", "a.set_position", function (e) {
|
|
e.preventDefault();
|
|
var data = parent.$(this).data();
|
|
|
|
// 0ms timeout to avoid iframe JS context weirdness.
|
|
// http://bl.ocks.org/jfirebaugh/5439412
|
|
setTimeout(function() {
|
|
id.map().centerZoom(
|
|
[data.lon, data.lat],
|
|
Math.max(data.zoom || 15, 13));
|
|
}, 0);
|
|
});
|
|
|
|
d3.select('#id-container')
|
|
.call(id.ui());
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|