<dd class="col-sm-9"><div class="richtext text-break"><%= @user_block.reason.to_html %></div></dd>
</dl>
-<% if @user_block.ends_at > Time.now.getutc && (current_user&.id == @user_block.creator_id ||
- can?(:revoke, UserBlock)) %>
+<% if current_user&.id == @user_block.creator_id || can?(:revoke, UserBlock) && @user_block.active? %>
<div>
<% if current_user&.id == @user_block.creator_id %>
<%= link_to t(".edit"), edit_user_block_path(@user_block), :class => "btn btn-outline-primary" %>
<% end %>
- <% if can?(:revoke, UserBlock) %>
+ <% if can?(:revoke, UserBlock) && @user_block.active? %>
<%= link_to t(".revoke"), revoke_user_block_path(@user_block), :class => "btn btn-outline-danger" %>
<% end %>
</div>
private
def check_block_buttons(block, edit: 0, revoke: 0)
- get user_blocks_path
- assert_response :success
- assert_select "a[href='#{edit_user_block_path block}']", :count => edit
- assert_select "a[href='#{revoke_user_block_path block}']", :count => revoke
+ [user_blocks_path, user_block_path(block)].each do |path|
+ get path
+ assert_response :success
+ assert_select "a[href='#{edit_user_block_path block}']", :count => edit
+ assert_select "a[href='#{revoke_user_block_path block}']", :count => revoke
+ end
end
public