]> git.openstreetmap.org Git - rails.git/commitdiff
Change submit button on block edit page when can only revoke
authorAnton Khorev <tony29@yandex.ru>
Wed, 21 Aug 2024 14:07:40 +0000 (17:07 +0300)
committerAnton Khorev <tony29@yandex.ru>
Thu, 22 Aug 2024 11:01:54 +0000 (14:01 +0300)
app/views/user_blocks/edit.html.erb
config/locales/en.yml
test/controllers/user_blocks_controller_test.rb
test/system/user_blocks_test.rb

index aaa2fcaa4372222716698a2545260335593a5b88..14480eac8bc69fa8e58fb901b77b8b1076b994de 100644 (file)
@@ -21,6 +21,8 @@
     <%= f.form_group :needs_view do %>
       <%= f.check_box :needs_view %>
     <% end %>
+
+    <%= f.primary %>
   <% else %>
     <div class="alert alert-info">
       <% if @user_block.active? %>
 
     <%= hidden_field_tag "user_block_period", 0 %>
     <%= hidden_field_tag "user_block[needs_view]", false %>
-  <% end %>
 
-  <%= f.primary %>
+    <% if @user_block.active? %>
+      <%= f.submit t(".revoke"), :class => "btn btn-danger" %>
+    <% else %>
+      <%= f.primary %>
+    <% end %>
+  <% end %>
 <% end %>
index a1cf2cecf178ff5a55fe0272d97a7bab959e488c..80811cd1ff7e23177d759769e9d96d38666c28a2 100644 (file)
@@ -2943,6 +2943,7 @@ en:
       title: "Editing block on %{name}"
       heading_html: "Editing block on %{name}"
       period: "How long, starting now, the user will be blocked from the API for."
+      revoke: "Revoke block"
     filter:
       block_period: "The blocking period must be one of the values selectable in the drop-down list."
     create:
index 2cbfb37b4845829d2c8d9806414add8c56435182..61440ae56ad9e7e4f545f5b837b26b406ba581b1 100644 (file)
@@ -278,9 +278,10 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
       assert_select "textarea#user_block_reason", :count => 1
       assert_select "select#user_block_period", :count => 0
       assert_select "input#user_block_needs_view[type='checkbox']", :count => 0
+      assert_select "input[type='submit'][value='Update block']", :count => 0
       assert_select "input#user_block_period[type='hidden']", :count => 1
       assert_select "input#user_block_needs_view[type='hidden']", :count => 1
-      assert_select "input[type='submit'][value='Update block']", :count => 1
+      assert_select "input[type='submit'][value='Revoke block']", :count => 1
     end
 
     # Login as the block creator
@@ -294,9 +295,10 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
       assert_select "textarea#user_block_reason", :count => 1
       assert_select "select#user_block_period", :count => 1
       assert_select "input#user_block_needs_view[type='checkbox']", :count => 1
+      assert_select "input[type='submit'][value='Update block']", :count => 1
       assert_select "input#user_block_period[type='hidden']", :count => 0
       assert_select "input#user_block_needs_view[type='hidden']", :count => 0
-      assert_select "input[type='submit'][value='Update block']", :count => 1
+      assert_select "input[type='submit'][value='Revoke block']", :count => 0
     end
 
     # We should get an error if the user doesn't exist
index b4b7ada7aa947414407254b92f7b15ac91304eeb..e9fa4e7ec48a6c970aaa9710666c461b8276fe34 100644 (file)
@@ -111,7 +111,7 @@ class UserBlocksSystemTest < ApplicationSystemTestCase
     assert_no_field "Needs view"
 
     fill_in "Reason", :with => "Revoking 0-hour blocks works"
-    click_on "Update block"
+    click_on "Revoke block"
     assert_text(/Revoker:\s+#{Regexp.escape other_moderator_user.display_name}/)
     assert_text(/Status:\s+Ended/)
     assert_text(/Reason for block:\s+Revoking 0-hour blocks works/)