Class: GettextSimpleRails::Translators

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

Defined Under Namespace

Classes: ActiveAdminTranslator, ActiveRecordAttributesTranslator, ActiveRecordValidationsTranslator, DateTranslator, DeviseTranslator, GlobalizeTranslator, NumberTranslator, SimpleFormTranslator

Class Method Summary collapse

Class Method Details

.const_missing(name) ⇒ Object

Raises:

  • (LoadError)


57
58
59
60
61
# File 'lib/gettext_simple_rails.rb', line 57

def self.const_missing(name)
  require "#{::File.dirname(__FILE__)}/gettext_simple_rails/translators/#{::StringCases.camel_to_snake(name)}"
  raise LoadError, "Still not loaded: '#{name}'." unless ::GettextSimpleRails::Translators.const_defined?(name)
  return ::GettextSimpleRails::Translators.const_get(name)
end

.load_allObject



63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/gettext_simple_rails.rb', line 63

def self.load_all
  result = []
  
  path = "#{File.dirname(__FILE__)}/gettext_simple_rails/translators"
  Dir.foreach(path) do |file|
    next unless match = file.match(/^(.+_translator)\.rb$/)
    require "#{path}/#{file}"
    
    class_name = StringCases.snake_to_camel(match[1])
    clazz = ::GettextSimpleRails::Translators.const_get(class_name)
    
    result << {
      :path => path,
      :file => file,
      :class => clazz
    }
  end
  
  return result
end