internetee-registry/lib/tasks/convert.rake
2015-12-01 20:51:39 +02:00

19 lines
740 B
Ruby

namespace :convert do
desc 'Convert punycodes to unicode'
task punycode: :environment do
start = Time.zone.now.to_f
puts "-----> Convert domain punycodes to unicode..."
count = 0
Domain.find_each(:batch_size => 1000) do |x|
old_name = x.name
if old_name != SimpleIDN.to_unicode(x.name.strip.downcase)
x.update_column(:name, (SimpleIDN.to_unicode(x.name.strip.downcase)))
x.update_column(:name_puny, (SimpleIDN.to_ascii(x.name.strip.downcase)))
count += 1
puts "Domain #{x.id} changed from #{old_name} to #{SimpleIDN.to_unicode(old_name)} "
end
end
puts "-----> all done in #{(Time.zone.now.to_f - start).round(2)} seconds. #{count} domains changed."
end
end