Class: SgtnClient::Translation

Inherits:
Object
  • Object
show all
Defined in:
lib/sgtn-client/api/translation.rb

Direct Known Subclasses

T

Class Method Summary collapse

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