class HumanizerGenerator

Public Instance Methods

add_locales() click to toggle source
# File lib/generators/humanizer_generator.rb, line 8
def add_locales
  if options["show-locales"]
    puts "Available locales:\n" +
         "  - " + available_locales.sort.join("\n  - ")
  else
    if options["all-locales"]
      install_locales(available_locales)
    else
      check_locales!
      install_locales(selected_locales)
    end
  end
end

Private Instance Methods

available_locales() click to toggle source
# File lib/generators/humanizer_generator.rb, line 24
def available_locales
  Dir.glob(File.join(self.class.source_root, "*.yml")).map do |path|
    path.match(/([\w-]+)\.yml$/)[1]
  end
end
check_locales!() click to toggle source
# File lib/generators/humanizer_generator.rb, line 30
def check_locales!
  unknown_locales = []
  selected_locales.each do |locale|
    unknown_locales << locale unless available_locales.include?(locale)
  end
  
  if unknown_locales.any?
    abort "The following locales do not exist: \n" +
          "  - " + unknown_locales.join("\n  - ") + "\n\n" +
          "The available locales are: " +
          available_locales.sort.join(", ")
  end
end
install_locales(locales) click to toggle source
# File lib/generators/humanizer_generator.rb, line 44
def install_locales(locales)
  locales.each do |locale|
    copy_file "#{locale}.yml", "config/locales/humanizer.#{locale}.yml"
  end
end