openstreetmap-website/app/controllers/concerns/email_methods.rb
2023-09-02 13:43:41 +03:00

27 lines
638 B
Ruby

module EmailMethods
extend ActiveSupport::Concern
private
def canonical_email(email)
local_part, domain = if email.nil?
nil
else
email.split("@")
end
local_part.sub!(/\+.*$/, "")
local_part.delete!(".") if %w[gmail.com googlemail.com].include?(domain)
"#{local_part}@#{domain}"
end
##
# get list of MX servers for a domains
def domain_mx_servers(domain)
Resolv::DNS.open do |dns|
dns.getresources(domain, Resolv::DNS::Resource::IN::MX).collect { |mx| mx.exchange.to_s }
end
end
end