Fix admin APIs returning deleted object instead of empty object upon delete (#19479)

Fix #19153
lolsob-rspec
Eugen Rochko 2022-10-30 02:43:57 +02:00 committed by GitHub
parent fa30d092f2
commit 69f2f514d2
6 changed files with 7 additions and 21 deletions

View File

@ -60,14 +60,13 @@ class Api::V1::Admin::AccountsController < Api::BaseController
def reject def reject
authorize @account.user, :reject? authorize @account.user, :reject?
DeleteAccountService.new.call(@account, reserve_email: false, reserve_username: false) DeleteAccountService.new.call(@account, reserve_email: false, reserve_username: false)
render json: @account, serializer: REST::Admin::AccountSerializer render_empty
end end
def destroy def destroy
authorize @account, :destroy? authorize @account, :destroy?
json = render_to_body json: @account, serializer: REST::Admin::AccountSerializer
Admin::AccountDeletionWorker.perform_async(@account.id) Admin::AccountDeletionWorker.perform_async(@account.id)
render json: json render_empty
end end
def unsensitive def unsensitive

View File

@ -35,20 +35,16 @@ class Api::V1::Admin::CanonicalEmailBlocksController < Api::BaseController
def create def create
authorize :canonical_email_block, :create? authorize :canonical_email_block, :create?
@canonical_email_block = CanonicalEmailBlock.create!(resource_params) @canonical_email_block = CanonicalEmailBlock.create!(resource_params)
log_action :create, @canonical_email_block log_action :create, @canonical_email_block
render json: @canonical_email_block, serializer: REST::Admin::CanonicalEmailBlockSerializer render json: @canonical_email_block, serializer: REST::Admin::CanonicalEmailBlockSerializer
end end
def destroy def destroy
authorize @canonical_email_block, :destroy? authorize @canonical_email_block, :destroy?
@canonical_email_block.destroy! @canonical_email_block.destroy!
log_action :destroy, @canonical_email_block log_action :destroy, @canonical_email_block
render_empty
render json: @canonical_email_block, serializer: REST::Admin::CanonicalEmailBlockSerializer
end end
private private

View File

@ -43,7 +43,7 @@ class Api::V1::Admin::DomainAllowsController < Api::BaseController
authorize @domain_allow, :destroy? authorize @domain_allow, :destroy?
UnallowDomainService.new.call(@domain_allow) UnallowDomainService.new.call(@domain_allow)
log_action :destroy, @domain_allow log_action :destroy, @domain_allow
render json: @domain_allow, serializer: REST::Admin::DomainAllowSerializer render_empty
end end
private private

View File

@ -40,7 +40,6 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
def update def update
authorize @domain_block, :update? authorize @domain_block, :update?
@domain_block.update(domain_block_params) @domain_block.update(domain_block_params)
severity_changed = @domain_block.severity_changed? severity_changed = @domain_block.severity_changed?
@domain_block.save! @domain_block.save!
@ -53,7 +52,7 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController
authorize @domain_block, :destroy? authorize @domain_block, :destroy?
UnblockDomainService.new.call(@domain_block) UnblockDomainService.new.call(@domain_block)
log_action :destroy, @domain_block log_action :destroy, @domain_block
render json: @domain_block, serializer: REST::Admin::DomainBlockSerializer render_empty
end end
private private

View File

@ -39,11 +39,9 @@ class Api::V1::Admin::EmailDomainBlocksController < Api::BaseController
def destroy def destroy
authorize @email_domain_block, :destroy? authorize @email_domain_block, :destroy?
@email_domain_block.destroy! @email_domain_block.destroy!
log_action :destroy, @email_domain_block log_action :destroy, @email_domain_block
render_empty
render json: @email_domain_block, serializer: REST::Admin::EmailDomainBlockSerializer
end end
private private

View File

@ -20,10 +20,8 @@ class Api::V1::Admin::IpBlocksController < Api::BaseController
def create def create
authorize :ip_block, :create? authorize :ip_block, :create?
@ip_block = IpBlock.create!(resource_params) @ip_block = IpBlock.create!(resource_params)
log_action :create, @ip_block log_action :create, @ip_block
render json: @ip_block, serializer: REST::Admin::IpBlockSerializer render json: @ip_block, serializer: REST::Admin::IpBlockSerializer
end end
@ -39,20 +37,16 @@ class Api::V1::Admin::IpBlocksController < Api::BaseController
def update def update
authorize @ip_block, :update? authorize @ip_block, :update?
@ip_block.update(resource_params) @ip_block.update(resource_params)
log_action :update, @ip_block log_action :update, @ip_block
render json: @ip_block, serializer: REST::Admin::IpBlockSerializer render json: @ip_block, serializer: REST::Admin::IpBlockSerializer
end end
def destroy def destroy
authorize @ip_block, :destroy? authorize @ip_block, :destroy?
@ip_block.destroy! @ip_block.destroy!
log_action :destroy, @ip_block log_action :destroy, @ip_block
render_empty
render json: @ip_block, serializer: REST::Admin::IpBlockSerializer
end end
private private