lib/localer/data/processor.rb in localer-0.1.1 vs lib/localer/data/processor.rb in localer-0.2.0
- old
+ new
@@ -16,11 +16,12 @@
def call
@data = Hash.new { |hsh, key| hsh[key] = {} }
@locales = []
translations.each do |(locale, translation)|
- next unless config.locale[locale].enabled
+ next unless config.locale[locale.downcase].enabled
+
@locales.push locale
prepare(locale, translation)
end
[@locales, @data]
end
@@ -30,19 +31,20 @@
def prepare(locale, translation, prefix = "")
if translation.is_a?(Hash)
translation.each do |(key, value)|
full_key = prefix + ".#{key}"
next if exclude?(full_key, locale)
+
prepare(locale, value, full_key)
end
else
# @data[prefix] ||= {}
@data[prefix][locale] = translation
end
end
def exclude?(key, locale)
- (config.exclude + config.locale[locale].exclude).any? do |pattern|
+ (config.exclude + config.locale[locale.downcase].exclude).any? do |pattern|
match?(key, pattern)
end
end
def match?(key, pattern)