X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f7f2b7482d7bcfc7905746cee650ceb51c4e8e01..c321c026f265c6c2b25a3d564232a12f6ca48c0a:/app/views/site/edit.rhtml diff --git a/app/views/site/edit.rhtml b/app/views/site/edit.rhtml index 40be2d7dc..daa78f3b9 100644 --- a/app/views/site/edit.rhtml +++ b/app/views/site/edit.rhtml @@ -1,35 +1,152 @@ +<% if OSM_STATUS == :database_offline or OSM_STATUS == :api_offline %> +
The OpenStreetMap database is currently offline while + essential database maintenance work is carried out. +
+<% elsif OSM_STATUS == :api_readonly %> +The OpenStreetMap database is currently in read-only mode while + essential database maintenance work is carried out. +
+<% elsif !@user.data_public? %> +You haven't set your edits to be public.
+You can't use the online editor unless you do so. You can set your edits as public from your +<%= link_to 'user page', {:controller => 'user', :action => 'account', :display_name => @user.display_name}%>.
+(Find out why this is the case.)
+<% else %> +<% content_for :greeting do %> +<% if @user and !@user.home_lon.nil? and !@user.home_lat.nil? %> +<%= link_to_function 'home', "setPosition(#{@user.home_lat}, #{@user.home_lon}, 10)" %> | +<% end %> +<% end %> + +<%= render :partial => 'sidebar', :locals => { :onopen => "resizeMap();", :onclose => "resizeMap();" } %> <%= render :partial => 'search' %> -<% if params['mlon'] and params['mlat'] %> -<% lon = params['mlon'] %> -<% lat = params['mlat'] %> -<% zoom = params['zoom'] || '12' %> -<% elsif @user and params['lon'].nil? and params['lat'].nil? %> -<% lon = @user.home_lon %> -<% lat = @user.home_lat %> -<% zoom = '10' %> -<%else%> -<% lon = params['lon'] || '-0.1' %> -<% lat = params['lat'] || '51.5' %> -<% zoom = params['zoom'] || '4' %> -<% end %> +<% +session[:token] = @user.tokens.create.token unless session[:token] + +# Decide on a lat lon to initialise potlatch with. Various ways of doing this +if params['lon'] and params['lat'] + lon = h(params['lon']) + lat = h(params['lat']) + zoom = h(params['zoom']) + +elsif params['mlon'] and params['mlat'] + lon = h(params['mlon']) + lat = h(params['mlat']) + zoom = h(params['zoom']) + +elsif params['gpx'] + #use gpx id to locate (dealt with below) + +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 + +else + #catch all. Do nothing. lat=nil, lon=nil + #Currently this results in potlatch starting up at 0,0 (Atlantic ocean). +end -