]> git.openstreetmap.org Git - rails.git/commitdiff
Fix link in error page when a user has public edits disabled
authorTom Hughes <tom@compton.nu>
Thu, 12 Dec 2019 18:44:56 +0000 (18:44 +0000)
committerTom Hughes <tom@compton.nu>
Thu, 12 Dec 2019 18:50:30 +0000 (18:50 +0000)
app/views/site/edit.html.erb
test/controllers/site_controller_test.rb

index cfc28f0246d3297d157553e04ebc7aa02514fdd9..769526e452f3f12b8bca27e0026521fd6c10c032 100644 (file)
@@ -5,7 +5,7 @@
     <p><%= t "layouts.osm_read_only" %></p>
   <% elsif !current_user.data_public? %>
     <p><%= t ".not_public" %></p>
-    <p><%= raw t ".not_public_description", :user_page => (link_to t(".user_page_link"), :controller => "user", :action => "account", :display_name => current_user.display_name, :anchor => "public") %></p>
+    <p><%= raw t ".not_public_description", :user_page => (link_to t(".user_page_link"), user_path(current_user, :anchor => "public")) %></p>
     <p><%= raw t "site.edit.anon_edits", :link => link_to(t(".anon_edits_link_text"), t(".anon_edits_link")) %></p>
   <% else %>
     <%= render :partial => preferred_editor %>
index c7826062ba52ba7aca177f3b4412df75c5135510..91fb83b670ecfba59dd22ab12fe6e28a819b94ab 100644 (file)
@@ -170,6 +170,14 @@ class SiteControllerTest < ActionController::TestCase
     assert_redirected_to :controller => :users, :action => :login, :referer => "/edit"
   end
 
+  # Test the error when trying to edit without public edits
+  def test_edit_non_public
+    get :edit, :session => { :user => create(:user, :data_public => false) }
+    assert_response :success
+    assert_template "edit"
+    assert_select "a[href='https://wiki.openstreetmap.org/wiki/Disabling_anonymous_edits']"
+  end
+
   # Test the right editor gets used when the user hasn't set a preference
   def test_edit_without_preference
     get :edit, :session => { :user => create(:user) }