Merge remote-tracking branch 'upstream/pull/5089'

This commit is contained in:
Tom Hughes 2024-08-18 11:54:48 +01:00
commit a11c02122d
2 changed files with 13 additions and 4 deletions

View file

@ -75,11 +75,14 @@ class UserBlocksController < ApplicationController
if !user_block_was_active && @user_block.active?
flash.now[:error] = t(".inactive_block_cannot_be_reactivated")
render :action => "edit"
elsif @user_block.save
flash[:notice] = t(".success")
redirect_to @user_block
else
render :action => "edit"
@user_block.ends_at = @user_block.ends_at_was unless user_block_was_active
if @user_block.save
flash[:notice] = t(".success")
redirect_to @user_block
else
render :action => "edit"
end
end
end
else

View file

@ -799,6 +799,8 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
end
def check_inactive_block_updates(block)
original_ends_at = block.ends_at
put user_block_path(block,
:user_block_period => "0",
:user_block => { :needs_view => false, :reason => "Updated Reason" })
@ -807,6 +809,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
block.reload
assert_not_predicate block, :active?
assert_equal "Updated Reason", block.reason
assert_equal original_ends_at, block.ends_at
put user_block_path(block,
:user_block_period => "0",
@ -816,6 +819,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
block.reload
assert_not_predicate block, :active?
assert_equal "Updated Reason", block.reason
assert_equal original_ends_at, block.ends_at
put user_block_path(block,
:user_block_period => "1",
@ -825,6 +829,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
block.reload
assert_not_predicate block, :active?
assert_equal "Updated Reason", block.reason
assert_equal original_ends_at, block.ends_at
put user_block_path(block,
:user_block_period => "0",
@ -834,6 +839,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
block.reload
assert_not_predicate block, :active?
assert_equal "Updated Reason Again", block.reason
assert_equal original_ends_at, block.ends_at
end
def check_user_blocks_table(user_blocks)