From: Tom Hughes Date: Wed, 5 Sep 2018 18:01:24 +0000 (+0100) Subject: Merge remote-tracking branch 'upstream/pull/1973' X-Git-Tag: live~2873 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/70cca71f3802519eac1fabaeb3ee1cc9f35f5cb7?hp=5a06a3dffe1342686f547663610bbe72f216fcd5 Merge remote-tracking branch 'upstream/pull/1973' --- diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 7e22c63b4..644c62b6f 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -18,7 +18,7 @@ class UserController < ApplicationController around_action :api_call_handle_error, :only => [:api_read, :api_users, :api_details, :api_gpx_files] before_action :lookup_user_by_id, :only => [:api_read] before_action :lookup_user_by_name, :only => [:set_status, :delete] - before_action :allow_thirdparty_images, :only => [:view, :account] + before_action :allow_thirdparty_images, :only => [:show, :account] def terms @legale = params[:legale] || OSM.ip_to_country(request.remote_ip) || DEFAULT_LEGALE @@ -409,7 +409,7 @@ class UserController < ApplicationController render :xml => doc.to_s end - def view + def show @user = User.find_by(:display_name => params[:display_name]) if @user && @@ -440,7 +440,7 @@ class UserController < ApplicationController if params[:referer] redirect_to params[:referer] else - redirect_to :action => "view" + redirect_to :action => "show" end end else @@ -463,7 +463,7 @@ class UserController < ApplicationController if params[:referer] redirect_to params[:referer] else - redirect_to :action => "view" + redirect_to :action => "show" end end else @@ -476,14 +476,14 @@ class UserController < ApplicationController def set_status @user.status = params[:status] @user.save - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) end ## # delete a user, marking them as deleted and removing personal data def delete @user.delete - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) end ## @@ -757,7 +757,7 @@ class UserController < ApplicationController flash[:error] = t("user.filter.not_an_administrator") if params[:display_name] - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) else redirect_to :action => "login", :referer => request.fullpath end diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index 474249648..4ecd7001a 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -4,7 +4,7 @@ module IssuesHelper when DiaryEntry diary_entry_url(reportable.user, reportable) when User - url_for(:controller => reportable.class.name.underscore, :action => :view, :display_name => reportable.display_name) + user_url(reportable) when DiaryComment diary_entry_url(reportable.diary_entry.user, reportable.diary_entry, :anchor => "comment#{reportable.id}") when Note diff --git a/app/helpers/note_helper.rb b/app/helpers/note_helper.rb index 6ebd18345..efe2346c9 100644 --- a/app/helpers/note_helper.rb +++ b/app/helpers/note_helper.rb @@ -18,7 +18,7 @@ module NoteHelper elsif author.status == "deleted" t("user.no_such_user.deleted") else - link_to h(author.display_name), link_options.merge(:controller => "user", :action => "view", :display_name => author.display_name) + link_to h(author.display_name), link_options.merge(:controller => "user", :action => "show", :display_name => author.display_name) end end end diff --git a/app/helpers/user_roles_helper.rb b/app/helpers/user_roles_helper.rb index 805abb58f..93e090b0f 100644 --- a/app/helpers/user_roles_helper.rb +++ b/app/helpers/user_roles_helper.rb @@ -9,21 +9,21 @@ module UserRolesHelper if current_user && current_user.administrator? if user.has_role?(role) image = "roles/#{role}" - alt = t("user.view.role.revoke.#{role}") - title = t("user.view.role.revoke.#{role}") + alt = t("user.show.role.revoke.#{role}") + title = t("user.show.role.revoke.#{role}") url = revoke_role_path(:display_name => user.display_name, :role => role) confirm = t("user_role.revoke.are_you_sure", :name => user.display_name, :role => role) else image = "roles/blank_#{role}" - alt = t("user.view.role.grant.#{role}") - title = t("user.view.role.grant.#{role}") + alt = t("user.show.role.grant.#{role}") + title = t("user.show.role.grant.#{role}") url = grant_role_path(:display_name => user.display_name, :role => role) confirm = t("user_role.grant.are_you_sure", :name => user.display_name, :role => role) end elsif user.has_role?(role) image = "roles/#{role}" - alt = t("user.view.role.#{role}") - title = t("user.view.role.#{role}") + alt = t("user.show.role.#{role}") + title = t("user.show.role.#{role}") end if image diff --git a/app/models/notifier.rb b/app/models/notifier.rb index 3008b7fa4..554d1e364 100644 --- a/app/models/notifier.rb +++ b/app/models/notifier.rb @@ -104,8 +104,7 @@ class Notifier < ActionMailer::Base def friend_notification(friend) with_recipient_locale friend.befriendee do @friend = friend - @viewurl = url_for(:controller => "user", :action => "view", - :display_name => @friend.befriender.display_name) + @viewurl = user_url(@friend.befriender) @friendurl = url_for(:controller => "user", :action => "make_friend", :display_name => @friend.befriender.display_name) @author = @friend.befriender.display_name diff --git a/app/views/changeset/history.html.erb b/app/views/changeset/history.html.erb index 17faf7f8d..ec3adcb02 100644 --- a/app/views/changeset/history.html.erb +++ b/app/views/changeset/history.html.erb @@ -7,7 +7,7 @@ <% set_title(changeset_list_title(params, current_user)) if params[:display_name] - @heading = t('changeset.list.title_user', :user => link_to(params[:display_name], :controller => "user", :action => "view", :display_name => params[:display_name])).html_safe + @heading = t('changeset.list.title_user', :user => link_to(params[:display_name], user_path(:display_name => params[:display_name]))).html_safe else @heading = @title end diff --git a/app/views/changeset/list.atom.builder b/app/views/changeset/list.atom.builder index 86dd966cc..33b284417 100644 --- a/app/views/changeset/list.atom.builder +++ b/app/views/changeset/list.atom.builder @@ -32,7 +32,7 @@ atom_feed(:language => I18n.locale, :schema_date => 2009, if changeset.user.data_public? entry.author do |author| author.name changeset.user.display_name - author.uri url_for(:controller => "user", :action => "view", :display_name => changeset.user.display_name, :only_path => false) + author.uri user_url(changeset.user, :only_path => false) end end @@ -51,7 +51,7 @@ atom_feed(:language => I18n.locale, :schema_date => 2009, table.tr do |tr| tr.th t("browse.changeset.belongs_to") tr.td do |td| - td.a h(changeset.user.display_name), :href => url_for(:controller => "user", :action => "view", :display_name => changeset.user.display_name, :only_path => false) + td.a h(changeset.user.display_name), :href => user_url(changeset.user, :only_path => false) end end end diff --git a/app/views/layouts/_header.html.erb b/app/views/layouts/_header.html.erb index 6511fb17f..a3e1846a9 100644 --- a/app/views/layouts/_header.html.erb +++ b/app/views/layouts/_header.html.erb @@ -82,14 +82,14 @@
  • <%= link_to inbox_messages_path do %> <%= number_with_delimiter(current_user.new_messages.size) %> - <%= t('user.view.my messages') %> + <%= t('user.show.my messages') %> <% end %>
  • - <%= link_to t('user.view.my profile'), user_path(:display_name => current_user.display_name) %> + <%= link_to t('user.show.my profile'), user_path(:display_name => current_user.display_name) %>
  • - <%= link_to t('user.view.my settings'), :controller => 'user', :action => 'account', :display_name => current_user.display_name %> + <%= link_to t('user.show.my settings'), :controller => 'user', :action => 'account', :display_name => current_user.display_name %>
  • diff --git a/app/views/oauth/authorize.html.erb b/app/views/oauth/authorize.html.erb index efb7de7ec..d53181c17 100644 --- a/app/views/oauth/authorize.html.erb +++ b/app/views/oauth/authorize.html.erb @@ -2,7 +2,7 @@

    <%= t ".title" %>

    <% end %> -

    <%= raw t(".request_access", :app_name => link_to(@token.client_application.name, @token.client_application.url), :user => link_to(current_user.display_name, :controller => :user, :action => :view, :display_name => current_user.display_name)) %>

    +

    <%= raw t(".request_access", :app_name => link_to(@token.client_application.name, @token.client_application.url), :user => link_to(current_user.display_name, user_path(current_user))) %>

    <%= form_tag authorize_url do %> <%= hidden_field_tag "oauth_token", @token.token %> diff --git a/app/views/user/_user.html.erb b/app/views/user/_user.html.erb index b1ea3f299..ad219655e 100644 --- a/app/views/user/_user.html.erb +++ b/app/views/user/_user.html.erb @@ -8,13 +8,13 @@

    <% if user.creation_ip %> <%= raw t 'user.list.summary', - :name => link_to(h(user.display_name), :action => "view", :display_name => user.display_name), + :name => link_to(h(user.display_name), user_path(user)), :ip_address => link_to(user.creation_ip, :ip => user.creation_ip), :date => l(user.creation_time, :format => :friendly) %> <% else %> <%= raw t 'user.list.summary_no_ip', - :name => link_to(h(user.display_name), :action => "view", :display_name => user.display_name), + :name => link_to(h(user.display_name), user_path(user)), :date => l(user.creation_time, :format => :friendly) %> <% end %> diff --git a/app/views/user/account.html.erb b/app/views/user/account.html.erb index 16fbc46ca..352adf887 100644 --- a/app/views/user/account.html.erb +++ b/app/views/user/account.html.erb @@ -6,7 +6,7 @@

    <%= t '.my settings' %>

    <% end %> diff --git a/app/views/user/view.html.erb b/app/views/user/show.html.erb similarity index 100% rename from app/views/user/view.html.erb rename to app/views/user/show.html.erb diff --git a/config/locales/en.yml b/config/locales/en.yml index 5c1de0577..872a31f6d 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -2006,7 +2006,7 @@ en: heading: "The user %{user} does not exist" body: "Sorry, there is no user with the name %{user}. Please check your spelling, or maybe the link you clicked is wrong." deleted: "deleted" - view: + show: my diary: My Diary new diary entry: new diary entry my edits: My Edits diff --git a/config/routes.rb b/config/routes.rb index 0b415085d..579dced16 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -208,10 +208,8 @@ OpenStreetMap::Application.routes.draw do get "/traces/mine/tag/:tag" => "traces#mine" get "/traces/mine/page/:page" => "traces#mine" get "/traces/mine" => "traces#mine" - post "/trace/create" => "traces#create" # remove after deployment get "/trace/create", :to => redirect(:path => "/traces/new") get "/trace/:id/data" => "traces#data", :id => /\d+/, :as => "trace_data" - post "trace/:id/edit" => "traces#update" # remove after deployment get "/trace/:id/edit", :to => redirect(:path => "/traces/%{id}/edit") post "/trace/:id/delete" => "traces#delete", :id => /\d+/ @@ -236,7 +234,7 @@ OpenStreetMap::Application.routes.draw do post "/user/:display_name/diary/:id/unsubscribe" => "diary_entry#unsubscribe", :as => :diary_entry_unsubscribe, :id => /\d+/ # user pages - get "/user/:display_name" => "user#view", :as => "user" + get "/user/:display_name" => "user#show", :as => "user" match "/user/:display_name/make_friend" => "user#make_friend", :via => [:get, :post], :as => "make_friend" match "/user/:display_name/remove_friend" => "user#remove_friend", :via => [:get, :post], :as => "remove_friend" match "/user/:display_name/account" => "user#account", :via => [:get, :post] diff --git a/test/controllers/user_controller_test.rb b/test/controllers/user_controller_test.rb index d3cf5ef13..ba4b2ff3a 100644 --- a/test/controllers/user_controller_test.rb +++ b/test/controllers/user_controller_test.rb @@ -130,7 +130,7 @@ class UserControllerTest < ActionController::TestCase assert_routing( { :path => "/user/username", :method => :get }, - { :controller => "user", :action => "view", :display_name => "username" } + { :controller => "user", :action => "show", :display_name => "username" } ) assert_routing( @@ -935,14 +935,14 @@ class UserControllerTest < ActionController::TestCase # Check that the user account page will display and contains some relevant # information for the user - def test_view + def test_show # Test a non-existent user - get :view, :params => { :display_name => "unknown" } + get :show, :params => { :display_name => "unknown" } assert_response :not_found # Test a normal user user = create(:user) - get :view, :params => { :display_name => user.display_name } + get :show, :params => { :display_name => user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "a[href^='/user/#{ERB::Util.u(user.display_name)}/history']", 1 @@ -958,7 +958,7 @@ class UserControllerTest < ActionController::TestCase # Test a user who has been blocked blocked_user = create(:user) create(:user_block, :user => blocked_user) - get :view, :params => { :display_name => blocked_user.display_name } + get :show, :params => { :display_name => blocked_user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "a[href^='/user/#{ERB::Util.u(blocked_user.display_name)}/history']", 1 @@ -974,7 +974,7 @@ class UserControllerTest < ActionController::TestCase # Test a moderator who has applied blocks moderator_user = create(:moderator_user) create(:user_block, :creator => moderator_user) - get :view, :params => { :display_name => moderator_user.display_name } + get :show, :params => { :display_name => moderator_user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "a[href^='/user/#{ERB::Util.u(moderator_user.display_name)}/history']", 1 @@ -991,7 +991,7 @@ class UserControllerTest < ActionController::TestCase session[:user] = user.id # Test the normal user - get :view, :params => { :display_name => user.display_name } + get :show, :params => { :display_name => user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "a[href^='/user/#{ERB::Util.u(user.display_name)}/history']", 1 @@ -1008,7 +1008,7 @@ class UserControllerTest < ActionController::TestCase session[:user] = create(:moderator_user).id # Test the normal user - get :view, :params => { :display_name => user.display_name } + get :show, :params => { :display_name => user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "a[href^='/user/#{ERB::Util.u(user.display_name)}/history']", 1 @@ -1028,13 +1028,13 @@ class UserControllerTest < ActionController::TestCase seen_user = create(:user, :terms_seen => true) not_seen_user = create(:user, :terms_seen => false) - get :view, :params => { :display_name => agreed_user.display_name } + get :show, :params => { :display_name => agreed_user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "p", :count => 0, :text => /Contributor terms/ end - get :view, :params => { :display_name => seen_user.display_name } + get :show, :params => { :display_name => seen_user.display_name } assert_response :success # put @response.body assert_select "div#userinformation" do @@ -1042,7 +1042,7 @@ class UserControllerTest < ActionController::TestCase assert_select "p", /Declined/ end - get :view, :params => { :display_name => not_seen_user.display_name } + get :show, :params => { :display_name => not_seen_user.display_name } assert_response :success assert_select "div#userinformation" do assert_select "p", :count => 1, :text => /Contributor terms/ @@ -1390,12 +1390,12 @@ class UserControllerTest < ActionController::TestCase # Now try as a normal user get :set_status, :params => { :display_name => user.display_name, :status => "suspended" }, :session => { :user => user } assert_response :redirect - assert_redirected_to :action => :view, :display_name => user.display_name + assert_redirected_to :action => :show, :display_name => user.display_name # Finally try as an administrator get :set_status, :params => { :display_name => user.display_name, :status => "suspended" }, :session => { :user => create(:administrator_user) } assert_response :redirect - assert_redirected_to :action => :view, :display_name => user.display_name + assert_redirected_to :action => :show, :display_name => user.display_name assert_equal "suspended", User.find(user.id).status end @@ -1410,12 +1410,12 @@ class UserControllerTest < ActionController::TestCase # Now try as a normal user get :delete, :params => { :display_name => user.display_name, :status => "suspended" }, :session => { :user => user } assert_response :redirect - assert_redirected_to :action => :view, :display_name => user.display_name + assert_redirected_to :action => :show, :display_name => user.display_name # Finally try as an administrator get :delete, :params => { :display_name => user.display_name, :status => "suspended" }, :session => { :user => create(:administrator_user) } assert_response :redirect - assert_redirected_to :action => :view, :display_name => user.display_name + assert_redirected_to :action => :show, :display_name => user.display_name # Check that the user was deleted properly user.reload diff --git a/test/integration/client_applications_test.rb b/test/integration/client_applications_test.rb index 59f234c41..c786b4f4a 100644 --- a/test/integration/client_applications_test.rb +++ b/test/integration/client_applications_test.rb @@ -16,7 +16,7 @@ class ClientApplicationsTest < ActionDispatch::IntegrationTest assert_response :redirect follow_redirect! assert_response :success - assert_template "user/view" + assert_template "user/show" get "/user/#{ERB::Util.u(user.display_name)}/account" assert_response :success assert_template "user/account" diff --git a/test/integration/user_roles_test.rb b/test/integration/user_roles_test.rb index 000ea0316..7001abd3d 100644 --- a/test/integration/user_roles_test.rb +++ b/test/integration/user_roles_test.rb @@ -33,7 +33,7 @@ class UserRolesTest < ActionDispatch::IntegrationTest target_user = create(:user) post "/user/#{ERB::Util.u(target_user.display_name)}/role/#{role}/#{action}" - assert_redirected_to :controller => "user", :action => "view", :display_name => target_user.display_name + assert_redirected_to user_path(target_user) reset! end @@ -51,7 +51,7 @@ class UserRolesTest < ActionDispatch::IntegrationTest target_user = create(:user) post "/user/#{ERB::Util.u(target_user.display_name)}/role/#{role}/#{action}" - assert_redirected_to :controller => "user", :action => "view", :display_name => target_user.display_name + assert_redirected_to user_path(target_user) reset! end diff --git a/test/system/report_user_test.rb b/test/system/report_user_test.rb index 99533353b..3dfbf4f1f 100644 --- a/test/system/report_user_test.rb +++ b/test/system/report_user_test.rb @@ -6,7 +6,7 @@ class ReportUserTest < ApplicationSystemTestCase visit browse_note_path(note) assert page.has_content?(note.comments.first.body) - assert_not page.has_content?(I18n.t("user.view.report")) + assert_not page.has_content?(I18n.t("user.show.report")) end def test_can_report_user @@ -14,7 +14,7 @@ class ReportUserTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit user_path(user.display_name) - click_on I18n.t("user.view.report") + click_on I18n.t("user.show.report") assert page.has_content? "Report" assert page.has_content? I18n.t("reports.new.disclaimer.intro") @@ -35,7 +35,7 @@ class ReportUserTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit user_path(user.display_name) - click_on I18n.t("user.view.report") + click_on I18n.t("user.show.report") assert page.has_content? "Report" assert page.has_content? I18n.t("reports.new.disclaimer.intro") @@ -52,7 +52,7 @@ class ReportUserTest < ApplicationSystemTestCase visit user_path(user.display_name) - click_on I18n.t("user.view.report") + click_on I18n.t("user.show.report") assert page.has_content? "Report" assert page.has_content? I18n.t("reports.new.disclaimer.intro")