X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/e657cff464b6db8384b56236ad9491223a22b1e2..e48837fb260d624042c2498dfc5b7842a160d5c3:/app/views/site/index.html.erb?ds=sidebyside diff --git a/app/views/site/index.html.erb b/app/views/site/index.html.erb index ecb732c9b..0205e79a6 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 %> @@ -17,17 +17,24 @@
- -
+ + + +
- - + + -
<%= t'site.index.license.license_url' %><%= t'site.index.license.project_url' %><%= t'site.index.license.license_url' %><%= t'site.index.license.project_url' %>
<%= + <%= t'site.index.license.notice', :license_name => t('site.index.license.license_name'), :project_name => t('site.index.license.project_name') @@ -37,111 +44,166 @@ <% -if params['mlon'] and params['mlat'] - marker = true - mlon = h(params['mlon']) - mlat = h(params['mlat']) +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" +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']) + elsif params['way'] + object_type = 'way' + object_id = h(params['way']) + elsif params['relation'] + object_type = 'relation' + object_id = h(params['relation']) + end end # Decide on a lat lon to initialise the map with. Various ways of doing this -if params['lon'] and params['lat'] - lon = h(params['lon']) - lat = h(params['lat']) - zoom = h(params['zoom'] || '5') - layers = h(params['layers']) - +if params['bbox'] + bbox = true + minlon, minlat, maxlon, maxlat = h(params['bbox']).split(",") + layers = h(params['layers']) + box = true if params['box']=="yes" + object_zoom = false +elsif 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 +elsif params['lon'] and params['lat'] + 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("|") - -elsif @user and !@user.home_lon.nil? and !@user.home_lat.nil? - lon = @user.home_lon - lat = @user.home_lat - zoom = '10' + 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' 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']) + unless STATUS == :database_readonly or STATUS == :database_offline + session[:location] = OSM::IPLocation(request.env['REMOTE_ADDR']) unless session[:location] + end + + 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 %> <%= javascript_include_tag '/openlayers/OpenLayers.js' %> <%= javascript_include_tag '/openlayers/OpenStreetMap.js' %> +<%= javascript_include_tag 'notes.js' %> <%= javascript_include_tag 'map.js' %> +<%= render :partial => 'resize' %> -