mirror of
https://github.com/internetee/registry.git
synced 2025-06-10 06:34:46 +02:00
Add support of punycode domains in emails
This commit is contained in:
parent
56ac816dd1
commit
b4369bdcd0
6 changed files with 77 additions and 21 deletions
|
@ -1,10 +1,13 @@
|
|||
class FillEmailVerifications < ActiveRecord::Migration[6.0]
|
||||
def up
|
||||
registrar_billing_emails = Registrar.pluck(:billing_email).uniq.reject(&:blank?).map(&:downcase)
|
||||
registrar_emails = Registrar.pluck(:email).uniq.reject(&:blank?).map(&:downcase)
|
||||
contact_emails = Contact.pluck(:email).uniq.reject(&:blank?).map(&:downcase)
|
||||
include Concerns::EmailVerifable
|
||||
|
||||
emails = (contact_emails + registrar_emails + registrar_billing_emails).uniq
|
||||
def up
|
||||
registrar_billing_emails = Registrar.pluck(:billing_email).uniq.reject(&:blank?)
|
||||
registrar_emails = Registrar.pluck(:email).uniq.reject(&:blank?)
|
||||
contact_emails = Contact.pluck(:email).uniq.reject(&:blank?)
|
||||
|
||||
emails = (contact_emails + registrar_emails + registrar_billing_emails)
|
||||
emails = emails.map{ |email| punycode_to_unicode(email) }.uniq
|
||||
|
||||
result = emails.map do |email|
|
||||
{ email: email, domain: domain(email) }
|
||||
|
@ -15,10 +18,4 @@ class FillEmailVerifications < ActiveRecord::Migration[6.0]
|
|||
def down
|
||||
EmailAddressVerification.delete_all
|
||||
end
|
||||
|
||||
def domain(email)
|
||||
Mail::Address.new(email).domain || 'not_found'
|
||||
rescue Mail::Field::IncompleteParseError
|
||||
'not_found'
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue