Class: GettextSwap::SwapperRepository

Inherits:
FastGettext::TranslationRepository::Base
  • Object
show all
Defined in:
lib/gettext_swap/swapper_repository.rb

Overview

This repository is a wrapper above other repository, it replaces branded words with their downstream counterparts.

Instance Method Summary collapse

Constructor Details

#initialize(old_repo) ⇒ SwapperRepository

Returns a new instance of SwapperRepository.



7
8
9
# File 'lib/gettext_swap/swapper_repository.rb', line 7

def initialize(old_repo)
  @repo = old_repo
end

Instance Method Details

#[](key) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/gettext_swap/swapper_repository.rb', line 19

def [](key)
  original = @repo[key]
  val = original || key
  return original unless val.is_a? String
  val = val.dup if val

  replaced = nil
  GettextSwap.rules.each do |search_term, value|
    replaced ||= val.gsub!(search_term, value) if val
  end
  replaced ? val : original
end

#available_localesObject



15
16
17
# File 'lib/gettext_swap/swapper_repository.rb', line 15

def available_locales
  @repo.available_locales
end

#plural(*keys) ⇒ Object



32
33
34
# File 'lib/gettext_swap/swapper_repository.rb', line 32

def plural(*keys)
  @repo.plural(*keys)
end

#pluralisation_ruleObject



11
12
13
# File 'lib/gettext_swap/swapper_repository.rb', line 11

def pluralisation_rule
  @repo.pluralisation_rule
end

#reloadObject



36
37
38
# File 'lib/gettext_swap/swapper_repository.rb', line 36

def reload
  @repo.reload
end