X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/57050172c81734e8c81dbe77585034602d51d9cd..908a6ef409518d86bfd2cdf0d2a82a6c312821c8:/app/views/export/start.rjs?ds=sidebyside diff --git a/app/views/export/start.rjs b/app/views/export/start.rjs index 52fd61e60..c146e236d 100644 --- a/app/views/export/start.rjs +++ b/app/views/export/start.rjs @@ -1,8 +1,10 @@ -page.replace_html :sidebar_title, 'Export' +page.replace_html :sidebar_title, t('export.start_rjs.export') page.replace_html :sidebar_content, :partial => 'start' page << < 0.25) { + if (bounds.getWidth() * bounds.getHeight() > #{APP_CONFIG['max_request_area']}) { $("format_osm").disabled = true; $("format_osm").checked = false; $("export_osm").style.display = "none"; @@ -160,26 +225,41 @@ page << <'; - $("export_html_text").value = html; - if ($("format_html").checked) { - $("export_html_text").select(); - } + function htmlUrlChanged() { + 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; + var markerUrl = ""; + + if ($("marker_lat").value && $("marker_lon").value) { + markerUrl = "&mlat=" + $("marker_lat").value + "&mlon=" + $("marker_lon").value; + url += "&marker=" + $("marker_lat").value + "," + $("marker_lon").value; + } + + var html = ''; + + // 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); + + var layers = getMapLayers(); + + html += '
'+"#{I18n.t('export.start_rjs.view_larger_map')}"+''; + + $("export_html_text").value = html; + + if ($("format_html").checked) { + $("export_html_text").select(); + } } - $("html_marker").onclick = htmlBoundsChanged; function formatChanged() { $("export_commit").style.display = "inline"; + if ($("format_osm").checked) { $("export_osm").style.display = "inline"; } else { @@ -201,14 +281,16 @@ page << <