about summary refs log tree commit diff
path: root/app/helpers/email_helper.rb
blob: 0800601f98bf930d3761590931b8768e2c5f51bd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# frozen_string_literal: true

module EmailHelper
  def self.included(base)
    base.extend(self)
  end

  def email_to_canonical_email(str)
    username, domain = str.downcase.split('@', 2)
    username, = username.delete('.').split('+', 2)

    "#{username}@#{domain}"
  end

  def email_to_canonical_email_hash(str)
    Digest::SHA2.new(256).hexdigest(email_to_canonical_email(str))
  end
end