From cc2a72bdd7f8aa00cbf8d0e00fb8132f4698172e Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Fri, 23 Aug 2024 13:23:29 +0300 Subject: [PATCH] Remove revoke block pages --- app/views/user_blocks/revoke.html.erb | 31 --------------- config/locales/en.yml | 6 --- config/routes.rb | 2 +- .../user_blocks_controller_test.rb | 38 ------------------- 4 files changed, 1 insertion(+), 76 deletions(-) delete mode 100644 app/views/user_blocks/revoke.html.erb diff --git a/app/views/user_blocks/revoke.html.erb b/app/views/user_blocks/revoke.html.erb deleted file mode 100644 index 224e1e4bb..000000000 --- a/app/views/user_blocks/revoke.html.erb +++ /dev/null @@ -1,31 +0,0 @@ -<% @title = t(".title", - :block_on => @user_block.user.display_name, - :block_by => @user_block.creator.display_name) %> - -<% content_for :heading do %> -

<%= t(".heading_html", - :block_on => link_to(@user_block.user.display_name, @user_block.user), - :block_by => link_to(@user_block.creator.display_name, @user_block.creator)) %>

-<% end %> - -<% if @user_block.ends_at > Time.now %> -

- <%= t(".time_future_html", :time => friendly_date(@user_block.ends_at)) %> -

- - <%= bootstrap_form_for :revoke, :url => { :action => "revoke" } do |f| %> -
-
- <%= check_box_tag "confirm", "yes", false, { :class => "form-check-input" } %> - <%= label_tag "confirm", t(".confirm"), { :class => "form-check-label" } %> -
-
- - <%= f.submit t(".revoke"), :class => "btn btn-danger" %> - <% end %> - -<% else %> -

- <%= t(".past_html", :time => friendly_date_ago(@user_block.ends_at)) %> -

-<% end %> diff --git a/config/locales/en.yml b/config/locales/en.yml index 33bb0a292..215a96179 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -2959,12 +2959,6 @@ en: heading: "List of user blocks" empty: "No blocks have been made yet." revoke: - title: "Revoking block on %{block_on}" - heading_html: "Revoking block on %{block_on} by %{block_by}" - time_future_html: "This block will end in %{time}." - past_html: "This block ended %{time} and cannot be revoked now." - confirm: "Are you sure you wish to revoke this block?" - revoke: "Revoke!" flash: "This block has been revoked." revoke_all: title: "Revoking all blocks on %{block_on}" diff --git a/config/routes.rb b/config/routes.rb index 125d6f810..b6522a1ab 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -334,7 +334,7 @@ OpenStreetMap::Application.routes.draw do get "/user/:display_name/blocks_by" => "user_blocks#blocks_by", :as => "user_blocks_by" get "/blocks/new/:display_name" => "user_blocks#new", :as => "new_user_block" resources :user_blocks, :except => :new - match "/blocks/:id/revoke" => "user_blocks#revoke", :via => [:get, :post], :as => "revoke_user_block" + post "/blocks/:id/revoke" => "user_blocks#revoke", :as => "revoke_user_block" match "/user/:display_name/blocks/revoke_all" => "user_blocks#revoke_all", :via => [:get, :post], :as => "revoke_all_user_blocks" # issues and reports diff --git a/test/controllers/user_blocks_controller_test.rb b/test/controllers/user_blocks_controller_test.rb index dfa6dd2d9..6d99db1cd 100644 --- a/test/controllers/user_blocks_controller_test.rb +++ b/test/controllers/user_blocks_controller_test.rb @@ -33,10 +33,6 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest { :path => "/user_blocks/1", :method => :delete }, { :controller => "user_blocks", :action => "destroy", :id => "1" } ) - assert_routing( - { :path => "/blocks/1/revoke", :method => :get }, - { :controller => "user_blocks", :action => "revoke", :id => "1" } - ) assert_routing( { :path => "/blocks/1/revoke", :method => :post }, { :controller => "user_blocks", :action => "revoke", :id => "1" } @@ -558,48 +554,14 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest def test_revoke active_block = create(:user_block) - # Check that the block revoke page requires us to login - get revoke_user_block_path(:id => active_block) - assert_redirected_to login_path(:referer => revoke_user_block_path(:id => active_block)) - - # Login as a normal user - session_for(create(:user)) - - # Check that normal users can't load the block revoke page - get revoke_user_block_path(:id => active_block) - assert_redirected_to :controller => "errors", :action => "forbidden" - # Login as a moderator session_for(create(:moderator_user)) - # Check that the block revoke page loads for moderators - get revoke_user_block_path(:id => active_block) - assert_response :success - assert_template "revoke" - assert_select "h1 a[href='#{user_path active_block.user}']", :text => active_block.user.display_name - assert_select "form", :count => 1 do - assert_select "input#confirm[type='checkbox']", :count => 1 - assert_select "input[type='submit'][value='Revoke!']", :count => 1 - end - - # Check that revoking a block using GET should fail - get revoke_user_block_path(:id => active_block, :confirm => true) - assert_response :success - assert_template "revoke" - b = UserBlock.find(active_block.id) - assert_operator b.ends_at - Time.now.utc, :>, 100 - # Check that revoking a block works using POST post revoke_user_block_path(:id => active_block, :confirm => true) assert_redirected_to user_block_path(active_block) b = UserBlock.find(active_block.id) assert_in_delta Time.now.utc, b.ends_at, 1 - - # We should get an error if the block doesn't exist - get revoke_user_block_path(:id => 99999) - assert_response :not_found - assert_template "not_found" - assert_select "p", "Sorry, the user block with ID 99999 could not be found." end ## -- 2.39.5