X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/a1cb0f04d476101116087286ff072d3a137355cb..0a3087cd7dbf3c4ce98afe9e086aca50d19325cd:/app/views/site/index.html.erb diff --git a/app/views/site/index.html.erb b/app/views/site/index.html.erb index 305df63c0..27ecf1fa7 100644 --- a/app/views/site/index.html.erb +++ b/app/views/site/index.html.erb @@ -1,6 +1,6 @@ <% content_for :greeting do %> <% if @user and !@user.home_lon.nil? and !@user.home_lat.nil? %> - <%= link_to_function t('layouts.home'), "setPosition(#{@user.home_lat}, #{@user.home_lon}, 10)", { :title => t('layouts.home_tooltip') } %> | + <%= link_to_function t('layouts.home'), "setPosition(#{@user.home_lat}, #{@user.home_lon}, 15)", { :title => t('layouts.home_tooltip') } %> | <% end %> <% end %> @@ -19,10 +19,13 @@
+ +
@@ -64,18 +67,17 @@ if params['node'] or params['way'] or params['relation'] end end +# Decide on a lat lon to initialise the map with. Various ways of doing this if params['minlon'] and params['minlat'] and params['maxlon'] and params['maxlat'] bbox = true minlon = h(params['minlon']) minlat = h(params['minlat']) maxlon = h(params['maxlon']) maxlat = h(params['maxlat']) + layers = h(params['layers']) box = true if params['box']=="yes" object_zoom = false -end - -# Decide on a lat lon to initialise the map with. Various ways of doing this -if params['lon'] and params['lat'] +elsif params['lon'] and params['lat'] lon = h(params['lon']) lat = h(params['lat']) zoom = h(params['zoom'] || '5') @@ -127,10 +129,9 @@ end OpenLayers.Lang.setCode("<%= I18n.locale.to_s %>"); - function createBugCallBack() { - map.osbControl.deactivate(); - document.getElementById("map_OpenLayers_Container").style.cursor = "default"; - } + <% if @user %> + var loginName = "<%= @user.display_name %>" + <% end %> function mapInit(){ map = createMap("map"); @@ -142,24 +143,25 @@ end map.osbLayer = new OpenLayers.Layer.OpenStreetBugs("OpenStreetBugs", { serverURL : "/api/0.6/", - iconOpen : new OpenLayers.Icon("http://openstreetbugs.schokokeks.org/client/open_bug_marker.png", new OpenLayers.Size(22, 22), new OpenLayers.Pixel(-11, -11)), - iconClosed : new OpenLayers.Icon("http://openstreetbugs.schokokeks.org/client/closed_bug_marker.png", new OpenLayers.Size(22, 22), new OpenLayers.Pixel(-11, -11)), + iconOpen : new OpenLayers.Icon("/images/open_bug_marker.png", new OpenLayers.Size(22, 22), new OpenLayers.Pixel(-11, -11)), + iconClosed : new OpenLayers.Icon("/images/closed_bug_marker.png", new OpenLayers.Size(22, 22), new OpenLayers.Pixel(-11, -11)), readonly : false, setCookie : false, cookieLifetime : 1000, cookiePath : "/my/map/", permalinkURL : "http://www.openstreetmap.org/", - theme : "http://osm.cdauth.de/map/openstreetbugs.css" + theme : "/stylesheets/openstreetbugs.css" }); map.addLayer(map.osbLayer); map.osbControl = new OpenLayers.Control.OpenStreetBugs(map.osbLayer); + map.addControl(map.osbControl); var lBug = document.getElementById('ReportBug'); lBug.addEventListener('click',function (e) { - map.osbControl.activate(); document.getElementById("map_OpenLayers_Container").style.cursor = "crosshair"; if (e.stopPropagation) e.stopPropagation(); },false); + map.osbControl.activate(); document.getElementById("OpenLayers.Map_18_OpenLayers_Container").style.cursor = "crosshair" },false); <% end %> @@ -299,10 +301,37 @@ end resizeMap(); } + function remoteEditHandler(event) { + var extent = getMapExtent(); + var loaded = false; + + $("linkloader").observe("load", function () { loaded = true; }); + $("linkloader").src = "http://127.0.0.1:8111/load_and_zoom?left=" + extent.left + "&top=" + extent.top + "&right=" + extent.right + "&bottom=" + extent.bottom; + + setTimeout(function () { + if (!loaded) alert("<%= escape_javascript(t('site.index.remote_failed')) %>"); + }, 1000); + + event.stop(); + } + + function installEditHandler() { + $("remoteanchor").observe("click", remoteEditHandler); + + <% if preferred_editor == "remote" %> + $("editanchor").observe("click", remoteEditHandler); + + <% if params[:action] == "edit" %> + remoteEditHandler(); + <% end %> + <% end %> + } + mapInit(); - window.onload = handleResize; - window.onresize = handleResize; + Event.observe(window, "load", installEditHandler); + Event.observe(window, "load", handleResize); + Event.observe(window, "resize", handleResize); <% if params['action'] == 'export' %> <%= remote_function :url => { :controller => 'export', :action => 'start' } %>