mirror of
https://github.com/internetee/registry.git
synced 2025-06-10 06:34:46 +02:00
refactoring: shortened the code
This commit is contained in:
parent
b7149387d9
commit
6b7c51a347
1 changed files with 9 additions and 19 deletions
|
@ -1,22 +1,16 @@
|
|||
module Domain::RegistryLockable
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
LOCK_STATUSES = [DomainStatus::SERVER_UPDATE_PROHIBITED,
|
||||
DomainStatus::SERVER_DELETE_PROHIBITED,
|
||||
DomainStatus::SERVER_TRANSFER_PROHIBITED]
|
||||
|
||||
def apply_registry_lock
|
||||
return unless registry_lockable?
|
||||
return if locked_by_registrant?
|
||||
|
||||
transaction do
|
||||
unless statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED
|
||||
statuses << DomainStatus::SERVER_UPDATE_PROHIBITED
|
||||
end
|
||||
|
||||
unless statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED
|
||||
statuses << DomainStatus::SERVER_DELETE_PROHIBITED
|
||||
end
|
||||
|
||||
unless statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED
|
||||
statuses << DomainStatus::SERVER_TRANSFER_PROHIBITED
|
||||
end
|
||||
self.statuses |= LOCK_STATUSES
|
||||
self.locked_by_registrant_at = Time.zone.now
|
||||
alert_registrar_lock_changes!(lock: true)
|
||||
|
||||
|
@ -34,20 +28,16 @@ module Domain::RegistryLockable
|
|||
def locked_by_registrant?
|
||||
return false unless locked_by_registrant_at
|
||||
|
||||
lock_statuses = [DomainStatus::SERVER_UPDATE_PROHIBITED,
|
||||
DomainStatus::SERVER_DELETE_PROHIBITED,
|
||||
DomainStatus::SERVER_TRANSFER_PROHIBITED]
|
||||
|
||||
(statuses & lock_statuses).count == 3
|
||||
(statuses & LOCK_STATUSES).count == 3
|
||||
end
|
||||
|
||||
def remove_registry_lock
|
||||
return unless locked_by_registrant?
|
||||
|
||||
transaction do
|
||||
statuses.delete(DomainStatus::SERVER_UPDATE_PROHIBITED)
|
||||
statuses.delete(DomainStatus::SERVER_DELETE_PROHIBITED)
|
||||
statuses.delete(DomainStatus::SERVER_TRANSFER_PROHIBITED)
|
||||
LOCK_STATUSES.each do |domain_status|
|
||||
statuses.delete(domain_status)
|
||||
end
|
||||
self.locked_by_registrant_at = nil
|
||||
alert_registrar_lock_changes!(lock: false)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue