Module: Freemail

Defined in:
lib/freemail.rb,
lib/freemail/version.rb

Constant Summary collapse

ROOT =
File.join(File.dirname(File.expand_path(__FILE__)), '../')
DISPOSABLE =
Hash[File.readlines("#{ROOT}/data/disposable.txt").map { |d| [d.strip.downcase]
FREE =
VERSION =
"0.2.1"

Class Method Summary collapse

Class Method Details

.disposable?(email) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/freemail.rb', line 12

def self.disposable?(email)
  DISPOSABLE.key?(get_domain(email))
end

.free?(email) ⇒ Boolean

Returns:

  • (Boolean)


8
9
10
# File 'lib/freemail.rb', line 8

def self.free?(email)
  FREE.key?(get_domain(email))
end

.free_or_disposable?(email) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/freemail.rb', line 16

def self.free_or_disposable?(email)
  free?(email) || disposable?(email)  
end

.get_domain(email) ⇒ Object



20
21
22
# File 'lib/freemail.rb', line 20

def self.get_domain(email)
  email.split('@').last.downcase.strip
end