]> git.openstreetmap.org Git - rails.git/commitdiff
Show edit buttons on active blocks to all moderators
authorAnton Khorev <tony29@yandex.ru>
Thu, 22 Aug 2024 09:56:15 +0000 (12:56 +0300)
committerAnton Khorev <tony29@yandex.ru>
Thu, 22 Aug 2024 11:01:54 +0000 (14:01 +0300)
app/views/user_blocks/_block.html.erb
app/views/user_blocks/show.html.erb
test/controllers/user_blocks_controller_test.rb

index 68850c28dfb22bd50d9c04ed3bc9fd84d058c288..b464b4ccdb3f6ef2d8c609ebe800650bdf6c346a 100644 (file)
@@ -15,8 +15,7 @@
     <% end %>
   </td>
   <td><%= link_to t(".show"), block %></td>
     <% end %>
   </td>
   <td><%= link_to t(".show"), block %></td>
-  <td><% if current_user && (current_user.id == block.creator_id ||
-                             current_user.id == block.revoker_id) %><%= link_to t(".edit"), edit_user_block_path(block) %><% end %></td>
+  <td><% if can?(:edit, block) %><%= link_to t(".edit"), edit_user_block_path(block) %><% end %></td>
   <% if can?(:revoke, UserBlock) %>
   <td><% if block.active? %><%= link_to t(".revoke"), revoke_user_block_path(block) %><% end %></td>
   <% end %>
   <% if can?(:revoke, UserBlock) %>
   <td><% if block.active? %><%= link_to t(".revoke"), revoke_user_block_path(block) %><% end %></td>
   <% end %>
index c36c043cf80434d2f3120bf767154c69fb33323a..06275c3f0f94c255b8250351415f8f7bdec6483e 100644 (file)
@@ -30,8 +30,7 @@
                        current_user.id == @user_block.revoker_id) ||
       can?(:revoke, UserBlock) && @user_block.active? %>
   <div>
                        current_user.id == @user_block.revoker_id) ||
       can?(:revoke, UserBlock) && @user_block.active? %>
   <div>
-    <% if current_user && (current_user.id == @user_block.creator_id ||
-                           current_user.id == @user_block.revoker_id) %>
+    <% if can?(:edit, @user_block) %>
       <%= link_to t(".edit"), edit_user_block_path(@user_block), :class => "btn btn-outline-primary" %>
     <% end %>
     <% if can?(:revoke, UserBlock) && @user_block.active? %>
       <%= link_to t(".edit"), edit_user_block_path(@user_block), :class => "btn btn-outline-primary" %>
     <% end %>
     <% if can?(:revoke, UserBlock) && @user_block.active? %>
index a3926cff0785fe32b0254212f675f971be340c35..68fc313c3f8041c6207b65532e4c43eb497a55a1 100644 (file)
@@ -173,7 +173,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     block = create(:user_block, :creator => creator_user)
 
     session_for(other_moderator_user)
     block = create(:user_block, :creator => creator_user)
 
     session_for(other_moderator_user)
-    check_block_buttons block, :revoke => 1
+    check_block_buttons block, :edit => 1, :revoke => 1
 
     session_for(creator_user)
     check_block_buttons block, :edit => 1, :revoke => 1
 
     session_for(creator_user)
     check_block_buttons block, :edit => 1, :revoke => 1