REPP: Combine create/delete actions for DNSSEC keys

This commit is contained in:
Karl Erik Õunapuu 2021-01-28 11:07:12 +02:00
parent 8c01385be0
commit 0d2cb6b7f2
No known key found for this signature in database
GPG key ID: C9DD647298A34764
2 changed files with 11 additions and 14 deletions

View file

@ -41,7 +41,9 @@ module Repp
contact_create_params[:contacts].each { |c| c[:action] = action }
action = Actions::DomainUpdate.new(@domain, contact_create_params, current_user)
# rubocop:disable Style/AndOr
handle_errors(@domain) and return unless action.call
# rubocop:enable Style/AndOr
render_success(data: { domain: { name: @domain.name } })
end

View file

@ -25,15 +25,7 @@ module Repp
param_group :dns_keys_apidoc, DnssecController
end
def create
dnssec_params[:dnssec][:dns_keys].each { |n| n[:action] = 'add' }
action = Actions::DomainUpdate.new(@domain, dnssec_params[:dnssec], current_user)
unless action.call
handle_errors(@domain)
return
end
render_success(data: { domain: { name: @domain.name } })
cta('add')
end
api :DELETE, 'repp/v1/domains/:domain_name/dnssec'
@ -41,13 +33,16 @@ module Repp
param_group :dns_keys_apidoc, DnssecController
end
def destroy
dnssec_params[:dnssec][:dns_keys].each { |n| n[:action] = 'rem' }
cta('rem')
end
def cta(action = 'add')
dnssec_params[:dnssec][:dns_keys].each { |n| n[:action] = action }
action = Actions::DomainUpdate.new(@domain, dnssec_params[:dnssec], current_user)
unless action.call
handle_errors(@domain)
return
end
# rubocop:disable Style/AndOr
(handle_errors(@domain) and return) unless action.call
# rubocop:enable Style/AndOr
render_success(data: { domain: { name: @domain.name } })
end