From 345c2bff96e05b3ec07a472aa41f579e3d8a524a Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Thu, 29 Dec 2016 19:29:23 +0200 Subject: [PATCH] Fix domain "OK" status algo #267 --- app/models/domain.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/models/domain.rb b/app/models/domain.rb index 594a8d2cc..be450fb80 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -684,20 +684,20 @@ class Domain < ActiveRecord::Base # rubocop: disable Metrics/CyclomaticComplexity # rubocop: disable Metrics/PerceivedComplexity def manage_automatic_statuses + if !self.class.nameserver_required? + deactivate if nameservers.reject(&:marked_for_destruction?).empty? + activate if nameservers.reject(&:marked_for_destruction?).size >= Setting.ns_min_count + end + if statuses.empty? && valid? statuses << DomainStatus::OK - elsif statuses.length > 1 || !valid? + elsif (statuses.length > 1 && active?) || !valid? statuses.delete(DomainStatus::OK) end p_d = statuses.include?(DomainStatus::PENDING_DELETE) s_h = (statuses & [DomainStatus::SERVER_MANUAL_INZONE, DomainStatus::SERVER_HOLD]).empty? statuses << DomainStatus::SERVER_HOLD if p_d && s_h - - if !self.class.nameserver_required? - deactivate if nameservers.reject(&:marked_for_destruction?).empty? - activate if nameservers.reject(&:marked_for_destruction?).size >= Setting.ns_min_count - end end # rubocop: enable Metrics/CyclomaticComplexity # rubocop: enable Metrics/PerceivedComplexity