Module: Atech::ForeignCurrency

Defined in:
lib/atech/foreign_currency.rb,
lib/atech/foreign_currency/cacher.rb,
lib/atech/foreign_currency/view_helpers.rb

Defined Under Namespace

Modules: Cacher, ViewHelpers Classes: InvalidCurrency

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.cache_fileObject

Returns the value of attribute cache_file.



7
8
9
# File 'lib/atech/foreign_currency.rb', line 7

def cache_file
  @cache_file
end

Class Method Details

.cacheObject



22
23
24
25
# File 'lib/atech/foreign_currency.rb', line 22

def cache
  require 'atech/foreign_currency/cacher'
  Cacher.get
end

.convert(value, currency) ⇒ Object

Raises:



13
14
15
16
# File 'lib/atech/foreign_currency.rb', line 13

def convert(value, currency)
  raise InvalidCurrency, "'#{currency}' is not configured in '#{cache_file}" unless currencies[currency.to_sym]
  value * currencies[currency.to_sym].to_f
end

.currenciesObject



9
10
11
# File 'lib/atech/foreign_currency.rb', line 9

def currencies
  @currencies || YAML.load(File.read(ForeignCurrency.cache_file))
end