Module: Freemium::SubscriptionPlan
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Rates
#daily_rate, #monthly_rate, #paid?, #yearly_rate
Class Method Details
.included(base) ⇒ Object
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/freemium/subscription_plan.rb', line 11
def self.included(base)
base.class_eval do
has_many :subscriptions, :dependent => :nullify, :class_name => "Subscription", :foreign_key => :subscription_plan_id
has_and_belongs_to_many :coupons, :class_name => "SubscriptionPlan",
:join_table => :coupons_subscription_plans, :foreign_key => :subscription_plan_id, :association_foreign_key => :coupon_id
composed_of :rate, :class_name => 'Money', :mapping => [ %w(rate_cents cents) ], :allow_nil => true
validates_uniqueness_of :redemption_key, :allow_nil => true, :allow_blank => true
validates_presence_of :name
validates_presence_of :rate_cents
end
end
|
Instance Method Details
#features ⇒ Object
27
28
29
|
# File 'lib/freemium/subscription_plan.rb', line 27
def features
Freemium::FeatureSet.find(self.feature_set_id)
end
|