Sha256: 3a426c6054b9a7986efd2a5ea17c6be38c82abd63fbf01dc605b5672201a917d

Contents?: true

Size: 1.31 KB

Versions: 25

Compression:

Stored size: 1.31 KB

Contents

class _i18n
  locale: "en"

  setDefaultLocale: ( _locale ) ->
    debug 'Configuring Language: ' + _locale
    @locale = _locale
    IuguUI.Money.configureLocale( _locale.toLowerCase() )

  getText: ( _string, _locale = "" ) ->
    _locale = @locale if _locale == ""
    parts = _string.split('.')
    _translated_text = null
    unless AVAILABLE_LOCALES[ _locale ]
      debug "ERROR.I18N.TRANSLATE_TABLE.LOCALE_NOT_EXISTS " + _locale
      return "ERROR.I18N.TRANSLATE_TABLE.LOCALE_NOT_EXISTS"
    currentSegment = AVAILABLE_LOCALES[ _locale ]
    while parts.length
      _next = parts.shift()
      unless currentSegment[ _next ]
        debug "ERROR.I18N.TRANSLATE_TABLE.INVALID_SEGMENT " + _next
        return "ERROR.I18N.TRANSLATE_TABLE.INVALID_SEGMENT"
      currentSegment = currentSegment[ _next ]
    if typeof currentSegment != "string"
      debug "ERROR.I18N.TRANSLATE_TABLE.SEGMENT_NOT_TEXT"
      return "ERROR.I18N.TRANSLATE_TABLE.SEGMENT_NOT_TEXT"
    currentSegment

  pluralizeIf: ( _qty, _singular, _plural, _locale = "" ) ->
    return @getText( _singular, _locale ) if _qty == 1
    @getText( _plural, _locale )

@i18n = new _i18n
@_t = _.bind( @i18n.getText, @i18n )
@_p = _.bind( @i18n.pluralizeIf, @i18n )

# $ ->
#  saved_locale = $.cookie( 'default_locale' )
#  i18n.setDefaultLocale( saved_locale ) if saved_locale

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
iugu-ux-1.0.25 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.24 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.23 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.22 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.21 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.20 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.19 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.18 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.17 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.16 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.15 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.14 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.13 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.12 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.11 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.10 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.9 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.8 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.7 vendor/assets/javascripts/web-app/i18n.coffee
iugu-ux-1.0.6 vendor/assets/javascripts/web-app/i18n.coffee