mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 01:47:18 +02:00
51 lines
1.3 KiB
Ruby
51 lines
1.3 KiB
Ruby
class Epp::DomainsController < ApplicationController
|
|
include Epp::Common
|
|
|
|
def create
|
|
end
|
|
|
|
def info
|
|
@domain = find_domain
|
|
handle_errors(@domain) and return unless @domain
|
|
render_epp_response '/epp/domains/info'
|
|
end
|
|
|
|
def check
|
|
names = params[:parsed_frame].css('name').map(&:text)
|
|
@domains = Epp::EppDomain.check_availability(names)
|
|
render_epp_response '/epp/domains/check'
|
|
end
|
|
|
|
private
|
|
|
|
def validate_check
|
|
epp_request_valid?('name')
|
|
end
|
|
|
|
def find_domain(secure = { secure: true })
|
|
domain_name = params[:parsed_frame].css('name').text.strip.downcase
|
|
domain = Epp::EppDomain.find_by(name: domain_name)
|
|
|
|
unless domain
|
|
epp_errors << {
|
|
code: '2303',
|
|
msg: I18n.t('errors.messages.epp_domain_not_found'),
|
|
value: { obj: 'name', val: domain_name }
|
|
}
|
|
return nil
|
|
end
|
|
|
|
return domain if domain.auth_info == params[:parsed_frame].css('authInfo pw').text
|
|
|
|
if (domain.registrar != current_epp_user.registrar && secure[:secure] == true) &&
|
|
epp_errors << {
|
|
code: '2302',
|
|
msg: I18n.t('errors.messages.domain_exists_but_belongs_to_other_registrar'),
|
|
value: { obj: 'name', val: params[:parsed_frame].css('name').text.strip.downcase }
|
|
}
|
|
return nil
|
|
end
|
|
|
|
domain
|
|
end
|
|
end
|