diff --git a/app/controllers/concerns/epp/common.rb b/app/controllers/concerns/epp/common.rb index 89aa8c638..72d5a3995 100644 --- a/app/controllers/concerns/epp/common.rb +++ b/app/controllers/concerns/epp/common.rb @@ -12,7 +12,6 @@ module Epp::Common end def proxy - @errors = [] @svTRID = "ccReg-#{'%010d' % rand(10 ** 10)}" send(params[:command]) end @@ -25,6 +24,10 @@ module Epp::Common EppSession.find_or_initialize_by(session_id: cookies['session']) end + def epp_errors + @errors ||= [] + end + def current_epp_user @current_epp_user ||= EppUser.find(epp_session[:epp_user_id]) if epp_session[:epp_user_id] end @@ -36,9 +39,8 @@ module Epp::Common xsd = Nokogiri::XML::Schema(File.read("doc/schemas/#{type}-1.0.xsd")) doc = Nokogiri::XML(params[:frame]) ext_values = xsd.validate(doc) - @errors = [] if ext_values.any? - @errors << {code: '2001', msg: 'Command syntax error', ext_values: ext_values} + epp_errors << {code: '2001', msg: 'Command syntax error', ext_values: ext_values} render '/epp/error' and return end end diff --git a/app/controllers/epp/errors_controller.rb b/app/controllers/epp/errors_controller.rb index 79469cba2..3e378bdb9 100644 --- a/app/controllers/epp/errors_controller.rb +++ b/app/controllers/epp/errors_controller.rb @@ -2,8 +2,7 @@ class Epp::ErrorsController < ApplicationController include Epp::Common def error - @errors = [] - @errors << {code: params[:code], msg: params[:msg]} + epp_errors << {code: params[:code], msg: params[:msg]} render '/epp/error' end end diff --git a/app/helpers/epp/contacts_helper.rb b/app/helpers/epp/contacts_helper.rb index 392f50eed..8ed4a799e 100644 --- a/app/helpers/epp/contacts_helper.rb +++ b/app/helpers/epp/contacts_helper.rb @@ -32,10 +32,10 @@ module Epp::ContactsHelper @contact.destroy render '/epp/contacts/delete' rescue NoMethodError => e - @errors << {code: '2303', msg: "Object does not exist"} + epp_errors << {code: '2303', msg: "Object does not exist"} render '/epp/error' rescue - @errors << {code: '2400', msg: "Command failed"} + epp_errors << {code: '2400', msg: "Command failed"} render '/epp/error' end end @@ -47,7 +47,7 @@ module Epp::ContactsHelper if @contacts.any? render '/epp/contacts/check' else - @errors << {code: '2303', msg: "Object does not exist"} + epp_errors << {code: '2303', msg: "Object does not exist"} render 'epp/error' end end diff --git a/app/helpers/epp/domains_helper.rb b/app/helpers/epp/domains_helper.rb index 7a45c6ce5..67b3a28a6 100644 --- a/app/helpers/epp/domains_helper.rb +++ b/app/helpers/epp/domains_helper.rb @@ -35,7 +35,7 @@ module Epp::DomainsHelper def handle_domain_name_errors [:epp_domain_taken, :epp_domain_reserved].each do |x| if @domain.errors.added?(:name, x) - @errors << {code: '2302', msg: @domain.errors[:name].first} + epp_errors << {code: '2302', msg: @domain.errors[:name].first} end end end