X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/075846bdff73e51251b0a8c7b39a756c85dda8dd..26746224ccab42bb6b2f39edb524803831defc1a:/public/export/embed.html
diff --git a/public/export/embed.html b/public/export/embed.html
index f3dab11bf..8e4ea2651 100644
--- a/public/export/embed.html
+++ b/public/export/embed.html
@@ -36,19 +36,15 @@
lat = mapPosition.y;
}
- if (this.map.marker) {
- params.lat = Math.round(lat*100000)/100000;
- params.lon = Math.round(lon*100000)/100000;
- } else {
- params.mlat = Math.round(lat*100000)/100000;
- params.mlon = Math.round(lon*100000)/100000;
- }
+ params.lat = Math.round(lat*100000)/100000;
+ params.lon = Math.round(lon*100000)/100000;
var href = this.base;
if(href.indexOf('?') != -1) {
href = href.substring( 0, href.indexOf('?') );
}
-
+
+ this.element.target="_blank";
href += '?' + OpenLayers.Util.getParameterString(params);
this.element.href = href;
}
@@ -58,7 +54,6 @@
map = new OpenLayers.Map ("map", {
controls: [
new OpenLayers.Control.Attribution(),
- new OpenLayers.Control.ArgParser(),
new OpenLayers.Control.Navigation(),
new OpenLayers.Control.Permalink(null, "http://openstreetmap.org/", { updateLink: localUpdateLink })
],
@@ -71,29 +66,35 @@
projection: new OpenLayers.Projection("EPSG:900913")
});
- var mapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik", {
- displayOutsideMaxExtent: true,
- wrapDateLine: true,
- attribution: 'Data by OpenStreetMap'
- });
- map.addLayer(mapnik);
-
- var osmarender = new OpenLayers.Layer.OSM.Osmarender("Osmarender", {
- displayOutsideMaxExtent: true,
- wrapDateLine: true,
- attribution: 'Data by OpenStreetMap'
- });
- map.addLayer(osmarender);
-
+ var attribution = 'Data by OpenStreetMap';
var args = OpenLayers.Util.getParameters();
- if (args.marker && map.getCenter()) {
+ if (!args.layer || args.layer == "mapnik") {
+ var mapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik", {
+ displayOutsideMaxExtent: true,
+ wrapDateLine: true,
+ attribution: attribution
+ });
+ map.addLayer(mapnik);
+ } else {
+ var osmarender = new OpenLayers.Layer.OSM.Osmarender("Osmarender", {
+ displayOutsideMaxExtent: true,
+ wrapDateLine: true,
+ attribution: attribution
+ });
+ map.addLayer(osmarender);
+ }
+
+ if (args.marker) {
var markers = new OpenLayers.Layer.Markers();
map.addLayer(markers);
- markers.addMarker( new OpenLayers.Marker(map.getCenter()));
+ markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(args.marker[1], args.marker[0]).transform(map.displayProjection, map.getProjectionObject())));
map.marker = true;
}
- if (!map.getCenter()) {
+ if (args.bbox) {
+ var bounds = OpenLayers.Bounds.fromArray(args.bbox).transform(map.displayProjection, map.getProjectionObject());
+ map.zoomToExtent(bounds)
+ } else {
map.zoomToMaxExtent();
}