Check if domain is transferrable before transfer #2845

This commit is contained in:
Martin Lensment 2015-08-10 18:28:00 +03:00
parent 65d67e16a3
commit ac977d2b8c

View file

@ -579,6 +579,13 @@ class Epp::Domain < Domain
# rubocop: disable Metrics/MethodLength # rubocop: disable Metrics/MethodLength
# rubocop: disable Metrics/AbcSize # rubocop: disable Metrics/AbcSize
def query_transfer(frame, current_user) def query_transfer(frame, current_user)
unless transferrable?
throw :epp_error, {
code: '2304',
msg: I18n.t(:object_status_prohibits_operation)
}
end
unless can_be_transferred_to?(current_user.registrar) unless can_be_transferred_to?(current_user.registrar)
throw :epp_error, { throw :epp_error, {
code: '2002', code: '2002',
@ -741,6 +748,17 @@ class Epp::Domain < Domain
new_registrar != registrar new_registrar != registrar
end end
def transferrable?
(statuses & [
DomainStatus::PENDING_CREATE,
DomainStatus::PENDING_UPDATE,
DomainStatus::PENDING_DELETE,
DomainStatus::PENDING_RENEW,
DomainStatus::PENDING_TRANSFER,
DomainStatus::FORCE_DELETE
]).empty?
end
## SHARED ## SHARED
# For domain transfer # For domain transfer