From 5ec2d25ec573e0feff982c9e244a99ebe18f01be Mon Sep 17 00:00:00 2001 From: Alex Sherman Date: Wed, 19 Feb 2020 18:39:18 +0500 Subject: [PATCH] Move Remove clientHold button to domain info --- app/controllers/registrar/domains_controller.rb | 7 +++++++ app/models/concerns/domain/force_delete.rb | 4 ---- app/views/registrar/domains/_domain.html.erb | 4 ---- app/views/registrar/domains/info.html.erb | 4 ++++ app/views/registrar/xml_consoles/show.haml | 2 +- config/locales/en.yml | 1 + config/locales/registrar/domains.en.yml | 1 - 7 files changed, 13 insertions(+), 10 deletions(-) diff --git a/app/controllers/registrar/domains_controller.rb b/app/controllers/registrar/domains_controller.rb index 8fdfd51fd..3e721666b 100644 --- a/app/controllers/registrar/domains_controller.rb +++ b/app/controllers/registrar/domains_controller.rb @@ -59,6 +59,7 @@ class Registrar def info authorize! :info, Depp::Domain @data = @domain.info(params[:domain_name]) if params[:domain_name] + @client_holded = client_holded(@data) if response_ok? render 'info' else @@ -158,6 +159,8 @@ class Registrar return unless params[:domain_name] @data = @domain.remove_hold(params) + + flash[:alert] = @data.css('msg').text unless response_ok? redirect_to info_registrar_domains_url(domain_name: params[:domain_name]) end @@ -167,6 +170,10 @@ class Registrar @domain = Depp::Domain.new(current_user: depp_current_user) end + def client_holded(data) + data.css('status')&.map { |element| element.attribute('s').value } + &.any? { |status| status == DomainStatus::CLIENT_HOLD } + end def contacts current_registrar_user.registrar.contacts diff --git a/app/models/concerns/domain/force_delete.rb b/app/models/concerns/domain/force_delete.rb index 89c121993..af3aaa7c7 100644 --- a/app/models/concerns/domain/force_delete.rb +++ b/app/models/concerns/domain/force_delete.rb @@ -34,10 +34,6 @@ module Concerns::Domain::ForceDelete # rubocop:disable Metrics/ModuleLength force_delete_start.present? && force_delete_lte_today && force_delete_lte_valid_date end - def client_holded? - statuses.include?(DomainStatus::CLIENT_HOLD) - end - def force_delete_lte_today force_delete_start + Setting.expire_warning_period.days <= Time.zone.now end diff --git a/app/views/registrar/domains/_domain.html.erb b/app/views/registrar/domains/_domain.html.erb index d8910a490..74f29dc15 100644 --- a/app/views/registrar/domains/_domain.html.erb +++ b/app/views/registrar/domains/_domain.html.erb @@ -9,9 +9,5 @@ class: 'btn btn-default btn-xs' %> <%= link_to t('.delete_btn'), delete_registrar_domains_path(domain_name: domain.name), class: 'btn btn-default btn-xs' %> - <% if domain.client_holded? %> - <%= link_to t('.client_hold_btn'), remove_hold_registrar_domains_path(domain_name: domain.name), - class: 'btn btn-default btn-xs' %> - <% end %> diff --git a/app/views/registrar/domains/info.html.erb b/app/views/registrar/domains/info.html.erb index 1fcfc23c3..e88882233 100644 --- a/app/views/registrar/domains/info.html.erb +++ b/app/views/registrar/domains/info.html.erb @@ -6,6 +6,10 @@ class: 'btn btn-default') %> <%= link_to(t(:delete), delete_registrar_domains_path(domain_name: params[:domain_name]), class: 'btn btn-default') %> + <% if @client_holded %> + <%= link_to(t(:remove_client_hold), remove_hold_registrar_domains_path(domain_name: params[:domain_name]), + class: 'btn btn-default') %> + <% end %> <% else %> <%= link_to t('.transfer_btn'), new_registrar_domain_transfer_path(domain_name: params[:domain_name]), class: 'btn btn-default' %> diff --git a/app/views/registrar/xml_consoles/show.haml b/app/views/registrar/xml_consoles/show.haml index 5ffcb5279..bb66116ee 100644 --- a/app/views/registrar/xml_consoles/show.haml +++ b/app/views/registrar/xml_consoles/show.haml @@ -31,7 +31,7 @@ Delete , %a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'client_hold'}} - Client Hold + Remove Client Hold %h4 Poll %a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'poll', epp_action: 'poll'}} diff --git a/config/locales/en.yml b/config/locales/en.yml index 15deab604..cf72b1027 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -206,6 +206,7 @@ en: statuses: 'Statuses' description: 'Description' delete: 'Delete' + remove_client_hold: 'Remove clientHold' are_you_sure: 'Are you sure?' back: 'Back' new_domain: 'New domain' diff --git a/config/locales/registrar/domains.en.yml b/config/locales/registrar/domains.en.yml index 2f5d83240..c98002b8f 100644 --- a/config/locales/registrar/domains.en.yml +++ b/config/locales/registrar/domains.en.yml @@ -24,7 +24,6 @@ en: edit_btn: Edit renew_btn: Renew delete_btn: Delete - client_hold_btn: Remove Hold form: save_btn: Save