Module: EmailAddress

Defined in:
lib/email_address.rb,
lib/email_address/host.rb,
lib/email_address/local.rb,
lib/email_address/config.rb,
lib/email_address/address.rb,
lib/email_address/version.rb,
lib/email_address/exchanger.rb,
lib/email_address/active_record_validator.rb

Defined Under Namespace

Classes: ActiveRecordValidator, Address, CanonicalEmailAddressType, Config, EmailAddressType, Exchanger, Host, Local

Constant Summary collapse

VERSION =
"0.1.6"

Class Method Summary collapse

Class Method Details

.canonical(email_address, config = {}) ⇒ Object

Returns the Canonical form of the email address. This form is what should be considered unique for an email account, lower case, and no address tags.



55
56
57
# File 'lib/email_address.rb', line 55

def self.canonical(email_address, config={})
  EmailAddress::Address.new(email_address, config).canonical
end

.error(email_address, config = {}) ⇒ Object

Given an email address, this returns nil if the email validates, or a string with a small error message otherwise



29
30
31
# File 'lib/email_address.rb', line 29

def self.error(email_address, config={})
  self.new(email_address, config).error
end

.matches?(email_address, rules, config = {}) ⇒ Boolean

Does the email address match any of the given rules

Returns:

  • (Boolean)


70
71
72
# File 'lib/email_address.rb', line 70

def self.matches?(email_address, rules, config={})
  EmailAddress::Address.new(email_address, config).matches?(rules)
end

.munge(email_address, config = {}) ⇒ Object

Shortcut to munge the given email address for web publishing returns ma___@do___.com



45
46
47
# File 'lib/email_address.rb', line 45

def self.munge(email_address, config={})
  EmailAddress::Address.new(email_address, config).munge
end

.new(email_address, config = {}) ⇒ Object

Creates an instance of this email address. This is a short-cut to Email::Address::Address.new



18
19
20
# File 'lib/email_address.rb', line 18

def self.new(email_address, config={})
  EmailAddress::Address.new(email_address, config)
end

.new_canonical(email_address, config = {}) ⇒ Object



59
60
61
# File 'lib/email_address.rb', line 59

def self.new_canonical(email_address, config={})
  EmailAddress::Address.new(EmailAddress::Address.new(email_address, config).canonical, config)
end

.new_redacted(email_address, config = {}) ⇒ Object



49
50
51
# File 'lib/email_address.rb', line 49

def self.new_redacted(email_address, config={})
  EmailAddress::Address.new(EmailAddress::Address.new(email_address, config).redact)
end

.normal(email_address, config = {}) ⇒ Object

Shortcut to normalize the given email address in the given format



34
35
36
# File 'lib/email_address.rb', line 34

def self.normal(email_address, config={})
  EmailAddress::Address.new(email_address, config).to_s
end

.redact(email_address, config = {}) ⇒ Object

Shortcut to normalize the given email address



39
40
41
# File 'lib/email_address.rb', line 39

def self.redact(email_address, config={})
  EmailAddress::Address.new(email_address, config).redact
end

.reference(email_address, config = {}) ⇒ Object

Returns the Reference form of the email address, defined as the MD5 digest of the Canonical form.



65
66
67
# File 'lib/email_address.rb', line 65

def self.reference(email_address, config={})
  EmailAddress::Address.new(email_address, config).reference
end

.valid?(email_address, config = {}) ⇒ Boolean

Given an email address, this returns true if the email validates, false otherwise

Returns:

  • (Boolean)


23
24
25
# File 'lib/email_address.rb', line 23

def self.valid?(email_address, config={})
  self.new(email_address, config).valid?
end