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
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" })
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",
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",
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",
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)