Sha256: ef4b39e531c45f821c97b3bbad18ae1e5f03f79068e3a9b3146ef12ff83ea522

Contents?: true

Size: 1.11 KB

Versions: 5

Compression:

Stored size: 1.11 KB

Contents

require "koudoku/engine"
require "generators/koudoku/install_generator"
require "generators/koudoku/views_generator"

module Koudoku

  mattr_accessor :webhooks_api_key
  @@webhooks_api_key = nil
  
  mattr_accessor :subscriptions_owned_by
  @@subscriptions_owned_by = nil
  
  mattr_accessor :stripe_publishable_key
  @@stripe_publishable_key = nil
  
  mattr_accessor :stripe_secret_key
  @@stripe_secret_key = nil
  
  mattr_accessor :free_trial_length
  @@free_trial_length = nil
  
  def self.setup
    yield self
    
    # Configure the Stripe 
    Stripe.api_key = ENV['STRIPE_SECRET_KEY']
  end
  
  # e.g. :users
  def self.owner_resource
    subscriptions_owned_by.to_s.pluralize.to_sym
  end
  
  # e.g. :user_id
  def self.owner_id_sym
    # e.g. :user_id
    (Koudoku.subscriptions_owned_by.to_s + '_id').to_sym
  end
  
  def self.owner_assignment_sym
    # e.g. :user=
    (Koudoku.subscriptions_owned_by.to_s + '=').to_sym
  end

  # e.g. Users
  def self.owner_class
    # e.g. User
    Koudoku.subscriptions_owned_by.to_s.classify.constantize
  end
  
  def self.free_trial?
    free_trial_length.to_i > 0
  end
  
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
koudoku-0.0.8 lib/koudoku.rb
koudoku-0.0.7 lib/koudoku.rb
koudoku-0.0.6 lib/koudoku.rb
koudoku-0.0.5 lib/koudoku.rb
koudoku-0.0.4 lib/koudoku.rb