Module: SerialTranslator

Extended by:
ActiveSupport::Concern
Defined in:
lib/serial_translator.rb,
lib/serial_translator/version.rb,
lib/serial_translator/serial_translator_length_validator.rb,
lib/serial_translator/serial_translator_presence_validator.rb

Defined Under Namespace

Modules: ClassMethods Classes: InvalidLocaleError, SerialTranslatorLengthValidator, SerialTranslatorPresenceValidator, TranslationType

Constant Summary collapse

VERSION =
"2.0.2"

Instance Method Summary collapse

Instance Method Details

#current_translation_localeObject



87
88
89
# File 'lib/serial_translator.rb', line 87

def current_translation_locale
  (@current_translation_locale || I18n.locale).to_sym
end

#translated_into?(locale) ⇒ Boolean

Returns:

  • (Boolean)


108
109
110
# File 'lib/serial_translator.rb', line 108

def translated_into?(locale)
  translated_locales.include?(locale.to_sym)
end

#translated_localesObject



95
96
97
98
99
100
101
102
# File 'lib/serial_translator.rb', line 95

def translated_locales
  result = []
  self.class.serial_translator_attributes.each do |attribute|
    translations = translations_for(attribute).select { |_, value| value.present? }
    result += translations.keys
  end
  result.uniq
end

#translation_fallback?Boolean

Returns:

  • (Boolean)


91
92
93
# File 'lib/serial_translator.rb', line 91

def translation_fallback?
  @translation_fallback != false
end

#translations_for(attribute) ⇒ Object



104
105
106
# File 'lib/serial_translator.rb', line 104

def translations_for(attribute)
  __send__(:"#{attribute}_translations") || {}
end