mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 09:57:23 +02:00
Merge branch 'master' of github.com:internetee/registry
This commit is contained in:
commit
3e0943189b
6 changed files with 29 additions and 22 deletions
|
@ -11,7 +11,7 @@ class Admin::DomainsController < AdminController
|
|||
end
|
||||
|
||||
def edit
|
||||
@domain.domain_statuses.build if @domain.domain_statuses.empty?
|
||||
build_associations
|
||||
end
|
||||
|
||||
def update
|
||||
|
@ -39,9 +39,15 @@ class Admin::DomainsController < AdminController
|
|||
)
|
||||
end
|
||||
|
||||
def build_associations
|
||||
@domain.domain_statuses.build if @domain.domain_statuses.empty?
|
||||
@server_statuses = @domain.domain_statuses.select(&:server_status?)
|
||||
@server_statuses << @domain.domain_statuses.build if @server_statuses.empty?
|
||||
end
|
||||
|
||||
def add_prefix_to_statuses
|
||||
domain_params[:domain_statuses_attributes].each do |_k, hash|
|
||||
hash[:value] = hash[:value].prepend('server')
|
||||
hash[:value] = hash[:value].prepend('server') if hash[:value].present?
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -39,7 +39,6 @@ class Client::DomainsController < ClientController
|
|||
|
||||
def update
|
||||
add_prefix_to_statuses
|
||||
|
||||
if @domain.update(domain_params)
|
||||
flash[:notice] = I18n.t('shared.domain_updated')
|
||||
redirect_to [:client, @domain]
|
||||
|
@ -77,7 +76,7 @@ class Client::DomainsController < ClientController
|
|||
|
||||
def add_prefix_to_statuses
|
||||
domain_params[:domain_statuses_attributes].each do |_k, hash|
|
||||
hash[:value] = hash[:value].prepend('client')
|
||||
hash[:value] = hash[:value].prepend('client') if hash[:value].present?
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -88,7 +87,9 @@ class Client::DomainsController < ClientController
|
|||
def build_associations
|
||||
@domain.nameservers.build if @domain.nameservers.empty?
|
||||
@domain.domain_contacts.build if @domain.domain_contacts.empty?
|
||||
@domain.domain_statuses.build if @domain.domain_statuses.empty?
|
||||
|
||||
@client_statuses = @domain.domain_statuses.select(&:client_status?)
|
||||
@client_statuses << @domain.domain_statuses.build if @client_statuses.empty?
|
||||
end
|
||||
|
||||
def verify_deletion
|
||||
|
|
|
@ -30,6 +30,8 @@ class DomainStatus < ActiveRecord::Base
|
|||
EXPIRED = 'expired'
|
||||
|
||||
STATUSES = [CLIENT_DELETE_PROHIBITED, SERVER_DELETE_PROHIBITED, CLIENT_HOLD, SERVER_HOLD, CLIENT_RENEW_PROHIBITED, SERVER_RENEW_PROHIBITED, CLIENT_TRANSFER_PROHIBITED, SERVER_TRANSFER_PROHIBITED, CLIENT_UPDATE_PROHIBITED, SERVER_UPDATE_PROHIBITED, INACTIVE, OK, PENDING_CREATE, PENDING_DELETE, PENDING_RENEW, PENDING_TRANSFER, PENDING_UPDATE, SERVER_MANUAL_INZONE, SERVER_REGISTRANT_CHANGE_PROHIBITED, SERVER_ADMIN_CHANGE_PROHIBITED, SERVER_TECH_CHANGE_PROHIBITED, FORCE_DELETE, DELETE_CANDIDATE, EXPIRED]
|
||||
CLIENT_STATUSES = [CLIENT_DELETE_PROHIBITED, CLIENT_HOLD, CLIENT_RENEW_PROHIBITED, CLIENT_TRANSFER_PROHIBITED, CLIENT_UPDATE_PROHIBITED]
|
||||
SERVER_STATUSES = [SERVER_DELETE_PROHIBITED, SERVER_HOLD, SERVER_RENEW_PROHIBITED, SERVER_TRANSFER_PROHIBITED, SERVER_UPDATE_PROHIBITED, SERVER_MANUAL_INZONE, SERVER_REGISTRANT_CHANGE_PROHIBITED, SERVER_ADMIN_CHANGE_PROHIBITED, SERVER_TECH_CHANGE_PROHIBITED]
|
||||
|
||||
validates :value, uniqueness: { scope: :domain_id }
|
||||
|
||||
|
@ -41,23 +43,21 @@ class DomainStatus < ActiveRecord::Base
|
|||
}
|
||||
end
|
||||
|
||||
def server_status?
|
||||
SERVER_STATUSES.include?(value)
|
||||
end
|
||||
|
||||
def client_status?
|
||||
CLIENT_STATUSES.include?(value)
|
||||
end
|
||||
|
||||
class << self
|
||||
def statuses_for_client
|
||||
ret = []
|
||||
STATUSES.each do |x|
|
||||
next unless x.start_with?('client')
|
||||
ret << x.sub('client', '')
|
||||
end
|
||||
ret
|
||||
CLIENT_STATUSES.map { |x| x.sub('client', '') }
|
||||
end
|
||||
|
||||
def statuses_for_admin
|
||||
ret = []
|
||||
STATUSES.each do |x|
|
||||
next unless x.start_with?('server')
|
||||
ret << x.sub('server', '')
|
||||
end
|
||||
ret
|
||||
SERVER_STATUSES.map { |x| x.sub('server', '') }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#domain_statuses
|
||||
= f.fields_for :domain_statuses do |status_fields|
|
||||
= f.fields_for :domain_statuses, @server_statuses do |status_fields|
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('shared.status')
|
||||
|
@ -15,7 +15,7 @@
|
|||
.col-md-6
|
||||
.form-group
|
||||
= status_fields.label :value
|
||||
= status_fields.select :value, options_for_select(DomainStatus.statuses_for_admin, status_fields.object.value.sub('server', '')), {include_blank: true}, {class: 'form-control'}
|
||||
= status_fields.select :value, options_for_select(DomainStatus.statuses_for_admin, status_fields.object.value.try(:sub, 'server', '')), {include_blank: true}, {class: 'form-control'}
|
||||
.col-md-6
|
||||
.form-group
|
||||
= status_fields.label :description
|
||||
|
|
|
@ -4,6 +4,6 @@
|
|||
= "#{t('shared.edit_domain')}"
|
||||
.col-sm-6
|
||||
%h2.text-right.text-center-xs
|
||||
= link_to(t('shared.back_to_domain'), [:admin, @domain], class: 'btn btn-default')
|
||||
= link_to(t('shared.back_to_domain'), [:client, @domain], class: 'btn btn-default')
|
||||
%hr
|
||||
= render 'form'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#domain_statuses
|
||||
= f.fields_for :domain_statuses do |status_fields|
|
||||
= f.fields_for :domain_statuses, @client_statuses do |status_fields|
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('shared.status')
|
||||
|
@ -15,7 +15,7 @@
|
|||
.col-md-6
|
||||
.form-group
|
||||
= status_fields.label :value
|
||||
= status_fields.select :value, options_for_select(DomainStatus.statuses_for_client, status_fields.object.value.sub('client', '')), {include_blank: true}, {class: 'form-control'}
|
||||
= status_fields.select :value, options_for_select(DomainStatus.statuses_for_client, status_fields.object.value.try(:sub, 'client', '')), {include_blank: true}, {class: 'form-control'}
|
||||
.col-md-6
|
||||
.form-group
|
||||
= status_fields.label :description
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue