var bounds = new OpenLayers.Bounds($("minlon").value, $("minlat").value, $("maxlon").value, $("maxlat").value);
var layerName = map.baseLayer.name.toLowerCase();
var url = "http://#{SERVER_URL}/export/embed.html?bbox=" + bounds.toBBOX() + "&layer=" + layerName;
-
+
if ($("marker_lat").value && $("marker_lon").value) {
url += "&marker=" + $("marker_lat").value + "," + $("marker_lon").value;
}
-
+
var html = '<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="'+url+'" style="border: 1px solid black"></iframe>';
+
+ // Create "larger map" link
+ var center = bounds.getCenterLonLat();
+ var epsg4326 = new OpenLayers.Projection("EPSG:4326");
+ var epsg900913 = new OpenLayers.Projection("EPSG:900913");
+
+ bounds.transform(epsg4326, epsg900913);
+ var zoom = map.getZoomForExtent(bounds);
+
+ html += '<br /><small><a href="http://#{SERVER_URL}/?lat='+center.lat+'&lon='+center.lon+'&zoom='+zoom+'">View Larger Map</a></small>';
+
$("export_html_text").value = html;
if ($("format_html").checked) {
<script src="http://openstreetmap.org/openlayers/OpenStreetMap.js"></script>
<script type="text/javascript">
var map, layer;
- function localUpdateLink() {
- var center = this.map.getCenter();
-
- // Map not initialized yet. Break out of this function.
- if (!center) {
- return;
- }
-
- var params = OpenLayers.Util.getParameters(this.base);
-
- params.zoom = this.map.getZoom();
- var lat = center.lat;
- var lon = center.lon;
-
- if (this.displayProjection) {
- var mapPosition = OpenLayers.Projection.transform(
- { x: lon, y: lat },
- this.map.getProjectionObject(),
- this.displayProjection );
- lon = mapPosition.x;
- lat = mapPosition.y;
- }
-
- 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;
- }
-
function init(){
- OpenLayers.Lang.en.permalink = "Larger Map";
map = new OpenLayers.Map ("map", {
controls: [
new OpenLayers.Control.Attribution(),
- new OpenLayers.Control.Navigation(),
- new OpenLayers.Control.Permalink(null, "http://openstreetmap.org/", { updateLink: localUpdateLink })
+ new OpenLayers.Control.Navigation()
],
maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,
20037508.34,20037508.34),