lib/torasup/operator.rb in torasup-0.0.3 vs lib/torasup/operator.rb in torasup-0.0.4
- old
+ new
@@ -20,9 +20,23 @@
def self.registered_prefixes
Torasup.registered_prefixes
end
+ def self.all
+ operators = {}
+ Torasup.prefixes.each do |prefix, metadata|
+ prefix_country_id = metadata["country_id"]
+ country_operators = operators[prefix_country_id] ||= {}
+ prefix_operator_id = metadata["id"]
+ operator_metadata = country_operators[prefix_operator_id] ||= metadata.dup
+ operator_metadata.delete("prefix")
+ prefixes = operator_metadata["prefixes"] ||= []
+ prefixes << prefix
+ end
+ operators
+ end
+
private
def parse_phone_number(area_code_or_prefix, unresolved_local_number)
if Torasup.prefix_data(full_prefix(area_code_or_prefix, local_number_parts(unresolved_local_number)[0])).any?
@area_code = area_code_or_prefix