From f1543b4b6fdf5ceb6edda4833441a39a7d853b2c Mon Sep 17 00:00:00 2001 From: Pablo Brasero Date: Thu, 27 Nov 2025 15:25:18 +0000 Subject: [PATCH] Remove actions to hide or soft-destroy users --- app/controllers/users/lists_controller.rb | 1 - app/controllers/users/statuses_controller.rb | 1 - app/views/users/lists/_page.html.erb | 1 - app/views/users/show.html.erb | 12 ----- config/locales/en.yml | 3 -- .../users/lists_controller_test.rb | 52 ------------------- 6 files changed, 70 deletions(-) diff --git a/app/controllers/users/lists_controller.rb b/app/controllers/users/lists_controller.rb index 06f369c0b..d361dfc16 100644 --- a/app/controllers/users/lists_controller.rb +++ b/app/controllers/users/lists_controller.rb @@ -36,7 +36,6 @@ module Users ids = params.fetch(:user, {}).keys.collect(&:to_i) User.where(:id => ids).update_all(:status => "confirmed") if params[:confirm] - User.where(:id => ids).update_all(:status => "deleted") if params[:hide] User.where(:id => ids).each(&:suspend_if_possible!) if params[:suspend] redirect_to url_for(params.permit(:status, :username, :ip, :edits, :before, :after)) diff --git a/app/controllers/users/statuses_controller.rb b/app/controllers/users/statuses_controller.rb index 00711b1cf..eb8c806d4 100644 --- a/app/controllers/users/statuses_controller.rb +++ b/app/controllers/users/statuses_controller.rb @@ -18,7 +18,6 @@ module Users @user.activate! if params[:event] == "activate" @user.confirm! if params[:event] == "confirm" @user.unconfirm! if params[:event] == "unconfirm" - @user.hide! if params[:event] == "hide" @user.unhide! if params[:event] == "unhide" @user.unsuspend! if params[:event] == "unsuspend" @user.suspend! if params[:event] == "suspend" diff --git a/app/views/users/lists/_page.html.erb b/app/views/users/lists/_page.html.erb index 0cbbeba0d..c868a26b2 100644 --- a/app/views/users/lists/_page.html.erb +++ b/app/views/users/lists/_page.html.erb @@ -45,7 +45,6 @@
<%= submit_tag t(".confirm"), :name => "confirm", :class => "btn btn-primary" %> - <%= submit_tag t(".hide"), :name => "hide", :class => "btn btn-primary" %> <%= submit_tag t(".suspend"), :name => "suspend", :class => "btn btn-primary" %>
<% end %> diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb index 48cb890e3..dfa019732 100644 --- a/app/views/users/show.html.erb +++ b/app/views/users/show.html.erb @@ -204,23 +204,11 @@ <% end %> - <% if @user.may_hide? %> -
  • - <%= link_to t(".hide_user"), user_status_path(@user, :event => "hide"), :method => :put, :data => { :confirm => t(".confirm") } %> -
  • - <% end %> - <% if @user.may_unhide? %>
  • <%= link_to t(".unhide_user"), user_status_path(@user, :event => "unhide"), :method => :put, :data => { :confirm => t(".confirm") } %>
  • <% end %> - - <% if @user.may_soft_destroy? %> -
  • - <%= link_to t(".delete_user"), user_status_path(@user, :event => "soft_destroy"), :method => :put, :data => { :confirm => t(".confirm") } %> -
  • - <% end %> <% end %> diff --git a/config/locales/en.yml b/config/locales/en.yml index f0f5431af..814ecedf2 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -3230,9 +3230,7 @@ en: unconfirm_user: "Unconfirm this User" suspend_user: "Suspend this User" unsuspend_user: "Unsuspend this User" - hide_user: "Hide this User" unhide_user: "Unhide this User" - delete_user: "Delete this User" confirm: "Confirm" report: Report this User edit_profile_details: Edit Profile Details @@ -3293,7 +3291,6 @@ en: one: "%{count} user found" other: "%{count} users found" confirm: Confirm Selected Users - hide: Hide Selected Users suspend: Suspend Selected Users empty: No matching users found user: diff --git a/test/controllers/users/lists_controller_test.rb b/test/controllers/users/lists_controller_test.rb index a943df757..c1cec94f0 100644 --- a/test/controllers/users/lists_controller_test.rb +++ b/test/controllers/users/lists_controller_test.rb @@ -253,58 +253,6 @@ module Users assert_equal "confirmed", suspended_user.reload.status end - def test_update_hide - normal_user = create(:user) - confirmed_user = create(:user, :confirmed) - - # Shouldn't work when not logged in - assert_no_difference "User.active.count" do - put users_list_path, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } - end - assert_response :forbidden - - assert_equal "active", normal_user.reload.status - assert_equal "confirmed", confirmed_user.reload.status - - session_for(create(:user)) - - # Shouldn't work when logged in as a normal user - assert_no_difference "User.active.count" do - put users_list_path, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } - end - assert_redirected_to :controller => "/errors", :action => :forbidden - assert_equal "active", normal_user.reload.status - assert_equal "confirmed", confirmed_user.reload.status - - session_for(create(:moderator_user)) - - # Shouldn't work when logged in as a moderator - assert_no_difference "User.active.count" do - put users_list_path, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } - end - assert_redirected_to :controller => "/errors", :action => :forbidden - assert_equal "active", normal_user.reload.status - assert_equal "confirmed", confirmed_user.reload.status - - session_for(create(:administrator_user)) - - # Should do nothing when no users selected - assert_no_difference "User.active.count" do - put users_list_path, :params => { :hide => 1 } - end - assert_redirected_to :action => :show - assert_equal "active", normal_user.reload.status - assert_equal "confirmed", confirmed_user.reload.status - - # Should work when logged in as an administrator - assert_difference "User.active.count", -2 do - put users_list_path, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } - end - assert_redirected_to :action => :show - assert_equal "deleted", normal_user.reload.status - assert_equal "deleted", confirmed_user.reload.status - end - def test_update_suspend normal_user = create(:user) confirmed_user = create(:user, :confirmed) -- 2.39.5