~singpolyma/sgx-jmp

ref: 4178a87a901cbf00cddbf9671c2f99aa79dfd3a8 sgx-jmp/lib/plan.rb -rw-r--r-- 519 bytes
4178a87aStephen Paul Weber Factor out Catapult connection 1 year, 3 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# frozen_string_literal: true

class Plan
	def self.for(plan_name)
		plan = CONFIG[:plans].find { |p| p[:name] == plan_name }
		raise "No plan by that name" unless plan

		new(plan)
	end

	def initialize(plan)
		@plan = plan
	end

	def name
		@plan[:name]
	end

	def currency
		@plan[:currency]
	end

	def monthly_price
		BigDecimal.new(@plan[:monthly_price]) / 1000
	end

	def merchant_account
		CONFIG[:braintree][:merchant_accounts].fetch(currency) do
			raise "No merchant account for this currency"
		end
	end
end