mirror of
https://github.com/internetee/registry.git
synced 2025-07-23 03:06:14 +02:00
parent
490528ca18
commit
e60380c60a
9 changed files with 103 additions and 30 deletions
|
@ -8,10 +8,45 @@ class Registrar
|
|||
end
|
||||
|
||||
def create
|
||||
params[:request] = true # EPP domain:transfer "op" attribute
|
||||
domain = Depp::Domain.new(current_user: depp_current_user)
|
||||
@data = domain.transfer(params)
|
||||
render :new unless response_ok?
|
||||
if params[:batch_file].present?
|
||||
csv = CSV.read(params[:batch_file].path, headers: true)
|
||||
domain_transfers = []
|
||||
|
||||
csv.each do |row|
|
||||
domain_name = row['Domain']
|
||||
transfer_code = row['Transfer code']
|
||||
domain_transfers << { 'domainName' => domain_name, 'transferCode' => transfer_code }
|
||||
end
|
||||
|
||||
client_cert = File.read(ENV['cert_path'])
|
||||
client_key = File.read(ENV['key_path'])
|
||||
|
||||
uri = URI.parse("#{ENV['repp_url']}domain_transfers")
|
||||
request = Net::HTTP::Post.new(uri, 'Content-Type' => 'application/json')
|
||||
request.body = { data: { domainTransfers: domain_transfers } }.to_json
|
||||
request.basic_auth(current_user.username, current_user.password)
|
||||
|
||||
response = Net::HTTP.start(uri.hostname, uri.port,
|
||||
use_ssl: (uri.scheme == 'https'),
|
||||
verify_mode: OpenSSL::SSL::VERIFY_NONE,
|
||||
cert: OpenSSL::X509::Certificate.new(client_cert),
|
||||
key: OpenSSL::PKey::RSA.new(client_key)) do |http|
|
||||
http.request(request)
|
||||
end
|
||||
|
||||
if response.code == '204'
|
||||
flash[:notice] = t '.transferred'
|
||||
redirect_to registrar_domains_url
|
||||
else
|
||||
@api_errors = JSON.parse(response.body, symbolize_names: true)[:errors]
|
||||
render :new
|
||||
end
|
||||
else
|
||||
params[:request] = true # EPP domain:transfer "op" attribute
|
||||
domain = Depp::Domain.new(current_user: depp_current_user)
|
||||
@data = domain.transfer(params)
|
||||
render :new unless response_ok?
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue