Class: MmPhonenumbers

Inherits:
Object
  • Object
show all
Defined in:
lib/mm_phonenumbers.rb

Class Method Summary collapse

Class Method Details

.get_telecom_name(phone_number) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/mm_phonenumbers.rb', line 17

def self.get_telecom_name(phone_number)
  telecom_name = ''
  if phone_number && self.is_valid_phone(phone_number)
    
    if Mpt::check(phone_number)
      telecom_name = 'MPT'

    elsif Telenor::check(phone_number)
      telecom_name = 'TELENOR'

    elsif Ooredoo::check(phone_number)
      telecom_name = 'OOREDOO'

    else
      telecom_name = 'UNKNOWN'
    end
    
    return telecom_name
  end
end

.is_provided_telecom(telecom_name, phone_number) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/mm_phonenumbers.rb', line 38

def self.is_provided_telecom(telecom_name, phone_number)
  if phone_number && self.is_valid_phone(phone_number)
    case telecom_name.downcase
    when "telenor"
      return Telenor::check(phone_number)

    when "ooredoo"
      return Ooredoo::check(phone_number)

    when "mpt"
      return Mpt::check(phone_number)

    else
      raise 'Unknown Telecom Name'
    end

  end
end

.is_valid_phone(phone_number) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/mm_phonenumbers.rb', line 7

def self.is_valid_phone(phone_number)
  if phone_number
    phone_number = SanitizePhone::remove_whitespace_and_dash(phone_number)
    phone_number = SanitizePhone::remove_double_country_code(phone_number)
    phone_number = SanitizePhone::remove_zero_before_area_code(phone_number)

    return SanitizePhone::check_phone_regex(phone_number) ? true : false
  end
end