Class: SgtnClient::Translation
- Inherits:
-
Object
- Object
- SgtnClient::Translation
- Defined in:
- lib/sgtn-client/api/translation.rb
Direct Known Subclasses
Class Method Summary collapse
- .getString(component, key, locale) ⇒ Object
- .getString_f(component, key, args, locale, *optionals) ⇒ Object
- .getString_p(component, key, plural_args, locale) ⇒ Object
- .getStrings(component, locale) ⇒ Object
Class Method Details
.getString(component, key, locale) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/sgtn-client/api/translation.rb', line 14 def self.getString(component, key, locale) str = getTranslation(component, key, locale) if str.nil? str = SgtnClient::Source.getSource(component, key, SgtnClient::Config.configurations.default) end str end |
.getString_f(component, key, args, locale, *optionals) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/sgtn-client/api/translation.rb', line 32 def self.getString_f(component, key, args, locale, *optionals) s = getString(component, key, locale, *optionals) if args.is_a?(Hash) args.each do |source, arg| s.gsub! "{#{source}}", arg end elsif args.is_a?(Array) s = sprintf s % args end return s end |
.getString_p(component, key, plural_args, locale) ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/sgtn-client/api/translation.rb', line 22 def self.getString_p(component, key, plural_args, locale) str = getTranslation(component, key, locale) if str.nil? str = SgtnClient::Source.getSource(component, key, SgtnClient::Config.configurations.default) str.to_plural_s(:en, plural_args) else str.to_plural_s(locale, plural_args) end end |
.getStrings(component, locale) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/sgtn-client/api/translation.rb', line 44 def self.getStrings(component, locale) flocale = SgtnClient::LocaleUtil.fallback(locale) cache_key = SgtnClient::CacheUtil.get_cachekey(component, flocale) items = SgtnClient::CacheUtil.get_cache(cache_key) if items.nil? items = getTranslations(component, flocale) SgtnClient::CacheUtil.write_cache(cache_key, items) else SgtnClient.logger.debug "Getting translations from cache with key: " + cache_key end default = SgtnClient::Config.configurations.default if items.nil? || items["messages"] == nil items = {} s = SgtnClient::Source.getSources(component, default) default_component, value = s.first items["component"] = component items["messages"] = value items["locale"] = 'source' end return items end |