Module: Translator::InstanceMethods

Defined in:
lib/translator/translator.rb

Instance Method Summary (collapse)

Instance Method Details

- (Object) initialize_translation(locale, field)



51
52
53
54
# File 'lib/translator/translator.rb', line 51

def initialize_translation(locale,field)
  original_value = self.send(field.to_s.gsub(/_translations$/,''))
  self.send(field.to_sym).merge!( { locale.to_s => original_value } )
end

- (Object) initialize_translations(field)



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

def initialize_translations(field)
  original_name = field.to_s.gsub(/_translations$/,'')
  for lang in I18n.available_locales-[I18n.default_locale]
    initialize_translation(lang,field)
  end
end

- (Object) t(locale, field, new_value = nil)



35
36
37
38
39
40
41
# File 'lib/translator/translator.rb', line 35

def t(locale,field,new_value=nil)
  unless new_value
    get_field_value(locale,field)
  else
    set_field_value(locale,field,new_value)
  end
end

- (Object) translate!



29
30
31
32
33
# File 'lib/translator/translator.rb', line 29

def translate!
  for name in translated_fields
    initialize_translations(name)
  end
end

- (Object) translated_fields



43
44
45
46
47
48
49
# File 'lib/translator/translator.rb', line 43

def translated_fields
  attributes.map.select { |a|
    a[0] =~ /_translations$/
  }.map {|x|
    x[0].to_sym
  }
end