X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/509b8ec62adac85558c32ed51cbc11ec4b93d8c7..961020a5dc3c9e0dd8d02b72132e25a22edb91bd:/app/views/site/edit.rhtml diff --git a/app/views/site/edit.rhtml b/app/views/site/edit.rhtml index 9c3c78fda..d8f556d9f 100644 --- a/app/views/site/edit.rhtml +++ b/app/views/site/edit.rhtml @@ -2,14 +2,14 @@

The OpenStreetMap database is currently offline while essential database maintenance work is carried out.

-<% elsif OSM_STATUS == :api_readonly %> +<% elsif OSM_STATUS == :database_readonly or 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}%>.

+

You can no longer edit the map 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, :anchor => 'public'}%>.

(Find out why this is the case.)

<% else %> <% content_for :greeting do %> @@ -21,21 +21,41 @@ <%= render :partial => 'sidebar', :locals => { :onopen => "resizeMap();", :onclose => "resizeMap();" } %> <%= render :partial => 'search' %> -<% session[:token] = @user.tokens.create.token unless session[:token] %> - -<% if params['mlon'] and params['mlat'] %> - <% lon = h(params['mlon']) %> - <% lat = h(params['mlat']) %> - <% zoom = h(params['zoom'] || '14') %> -<% elsif @user and params['lon'].nil? and params['lat'].nil? and params['gpx'].nil? %> - <% lon = @user.home_lon %> - <% lat = @user.home_lat %> - <% zoom = '14' %> -<% else %> - <% lon = h(params['lon'] || 'null') %> - <% lat = h(params['lat'] || 'null') %> - <% zoom = h(params['zoom'] || '14') %> -<% 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'] + # The user may pass a gpx and zoom + if params['zoom'] + zoom = h(params['zoom']) + end + #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 + +zoom='14' if zoom.nil? +%>
You need a Flash player to use Potlatch, the @@ -59,12 +79,15 @@ } } + function markChanged(a) { changesaved=a; } + function doSWF(lat,lon,sc) { if (sc < 11) sc = 11; fo.addVariable('scale',sc); fo.addVariable('token','<%= session[:token] %>'); if (lat) { fo.addVariable('lat',lat); } if (lon) { fo.addVariable('long',lon); } + if (zoom) { fo.addVariable('zoom',zoom); } <% if params['gpx'] %>fo.addVariable('gpx' ,'<%= h(params['gpx'] ) %>');<% end %> <% if params['way'] %>fo.addVariable('way' ,'<%= h(params['way'] ) %>');<% end %> <% if params['node'] %>fo.addVariable('node','<%= h(params['node']) %>');<% end %>