X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/34b147266c397bb1318bbfefb48df1c704855843..e46c82fe3db59ce59206053a26d0207931f2f68a:/app/views/site/index.html.erb diff --git a/app/views/site/index.html.erb b/app/views/site/index.html.erb index a1ce52267..40a7a3fbc 100644 --- a/app/views/site/index.html.erb +++ b/app/views/site/index.html.erb @@ -41,22 +41,15 @@ <% if params['mlon'] and params['mlat'] - marker = true - mlon = h(params['mlon']) - mlat = h(params['mlat']) -end - -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']) - box = true if params['box']=="yes" + marker = true + mlon = h(params['mlon']) + mlat = h(params['mlat']) end if params['node'] or params['way'] or params['relation'] object = true + object_zoom = true + if params['node'] object_type = 'node' object_id = h(params['node']) @@ -69,45 +62,51 @@ if params['node'] or params['way'] or params['relation'] end end +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']) + 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'] - # We only want to override the default 'object = true' zoom above - # if we get actual GET params, as opposed to say a cookie - lat_lon_zoom_via_params = true - - lon = h(params['lon']) - lat = h(params['lat']) - zoom = h(params['zoom'] || '5') - layers = h(params['layers']) - + lon = h(params['lon']) + lat = h(params['lat']) + zoom = h(params['zoom'] || '5') + layers = h(params['layers']) + object_zoom = false elsif params['mlon'] and params['mlat'] - lon = h(params['mlon']) - lat = h(params['mlat']) - zoom = h(params['zoom'] || '12') - layers = h(params['layers']) - + lon = h(params['mlon']) + lat = h(params['mlat']) + zoom = h(params['zoom'] || '12') + layers = h(params['layers']) + object_zoom = false elsif cookies.key?("_osm_location") - lon,lat,zoom,layers = cookies["_osm_location"].split("|") - + lon,lat,zoom,layers = cookies["_osm_location"].split("|") elsif @user and !@user.home_lon.nil? and !@user.home_lat.nil? - lon = @user.home_lon - lat = @user.home_lat - zoom = '10' + lon = @user.home_lon + lat = @user.home_lat + zoom = '10' else - session[:location] = OSM::IPLocation(request.env['REMOTE_ADDR']) unless session[:location] - - if session[:location] - bbox = true - minlon = session[:location][:minlon] - minlat = session[:location][:minlat] - maxlon = session[:location][:maxlon] - maxlat = session[:location][:maxlat] - else - lon = '-0.1' - lat = '51.5' - zoom = h(params['zoom'] || '5') - end - layers = h(params['layers']) + session[:location] = OSM::IPLocation(request.env['REMOTE_ADDR']) unless session[:location] + + if session[:location] + bbox = true + minlon = session[:location][:minlon] + minlat = session[:location][:minlat] + maxlon = session[:location][:maxlon] + maxlat = session[:location][:maxlat] + else + lon = '-0.1' + lat = '51.5' + zoom = h(params['zoom'] || '5') + end + + layers = h(params['layers']) end %> @@ -115,14 +114,11 @@ end <%= javascript_include_tag '/openlayers/OpenStreetMap.js' %> <%= javascript_include_tag 'map.js' %> -