module Pin

Attributes

auth[R]
base_url[R]
js_url[R]
publishable_key[R]

Public Class Methods

setup(options) click to toggle source
# File lib/pin-payments.rb, line 31
def setup(options)
  raise ArgumentError, "Pin.setup wants an options hash" unless Hash === options
  raise ArgumentError, "no secret key configured" unless options[:secret_key]
  raise ArgumentError, "no mode configured" unless options[:mode]

  @auth = {username: options[:secret_key], password: ''}
  @publishable_key = options[:publishable_key]

  mode = options[:mode].to_sym
  uri = if mode == :live
    "https://api.pin.net.au"
  elsif mode == :test
    "https://test-api.pin.net.au"
  else
    raise ArgumentError, "Incorrect API mode! Must be :live or :test"
  end

  @js_url = "#{uri}/pin.js"
  @base_url = "#{uri}/1"
  Pin::Base.base_uri "#{uri}/1"
end