diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/update.xml b/app/views/registrar/xml_consoles/epp_requests/domain/update.xml
index ad828fdb1..190939d9b 100644
--- a/app/views/registrar/xml_consoles/epp_requests/domain/update.xml
+++ b/app/views/registrar/xml_consoles/epp_requests/domain/update.xml
@@ -7,14 +7,20 @@
example.ee
- ns1.example.com
- ns2.example.com
+
+ ns1.example.com
+
+
+ ns2.example.com
+
mak21
- ns1.example.com
+
+ ns1.example.net
+
mak21
diff --git a/doc/epp/contact.md b/doc/epp/contact.md
index b09284c36..5e45e491b 100644
--- a/doc/epp/contact.md
+++ b/doc/epp/contact.md
@@ -62,8 +62,8 @@ Contact Mapping protocol short version:
0-1 Country code, 2 letters uppercase, in ISO_3166-1 alpha 2
0-1 Phone number in format \+ddd.d+
0-1 E-mail
- 0-1 Required if registrar is not the owner of the contact.
- 1 Contact password. Attribute: roid="String"
+ 0-1 Required if registrar is not the owner of the contact.
+ 1 Contact password. Attribute: roid="String"
0-1
0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd"
0-1 Contact identificator
diff --git a/doc/epp/domain.md b/doc/epp/domain.md
index fb03e40a4..524deee1e 100644
--- a/doc/epp/domain.md
+++ b/doc/epp/domain.md
@@ -19,14 +19,14 @@ Domain name mapping protocol short version:
Must add up to 1 / 2 / 3 years.
Attribute: unit="y/m/d"
Default is 1 year.
- 1 Contact reference to the registrant
- 0-n Contact reference. Admin contact is required if registrant is
- a juridical person. Attribute: type="admin / tech"
1
2-11
1 Hostname of the nameserver
0-2 Required if nameserver is under domain zone.
Attribute ip="v4 / v6"
+ 1 Contact reference to the registrant
+ 0-n Contact reference. Admin contact is required if registrant is
+ a juridical person. Attribute: type="admin / tech"
1
0-1 Attribute: xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
1-n
@@ -74,15 +74,15 @@ Domain name mapping protocol short version:
Optional attribute: verified="yes/no"
0-1 Required if registrant is changing
0-1 Attribute: xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
+ 0-1
+ 1-n
+ 1 Public key
0-1
1-n
1 Allowed values: 0, 256, 257
1 Allowed values: 3
1 Allowed values: 3, 5, 6, 7, 8, 252, 253, 254, 255
1 Public key
- 0-1
- 1-n
- 1 Public key
0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd"
0-1 Base64 encoded document. Required if registrant is changing.
Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z"
diff --git a/lib/tasks/convert.rake b/lib/tasks/convert.rake
new file mode 100644
index 000000000..6345c9097
--- /dev/null
+++ b/lib/tasks/convert.rake
@@ -0,0 +1,19 @@
+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
+