lib/braintree/subscription.rb in braintree-2.38.0 vs lib/braintree/subscription.rb in braintree-2.39.0

- old
+ new

@@ -1,10 +1,17 @@ module Braintree # See http://www.braintreepayments.com/docs/ruby/subscriptions/overview class Subscription include BaseModule + module Source + Api = "api" + ControlPanel = "control_panel" + Recurring = "recurring" + Unrecognized = "unrecognized" + end + module Status Active = 'Active' Canceled = 'Canceled' Expired = 'Expired' PastDue = 'Past Due' @@ -28,10 +35,11 @@ attr_reader :number_of_billing_cycles, :billing_day_of_month attr_reader :add_ons, :discounts attr_reader :descriptor attr_reader :current_billing_cycle attr_reader :updated_at, :created_at + attr_reader :status_history # See http://www.braintreepayments.com/docs/ruby/subscriptions/cancel def self.cancel(subscription_id) Configuration.gateway.subscription.cancel(subscription_id) end @@ -75,9 +83,10 @@ @price = Util.to_big_decimal(price) @descriptor = Descriptor.new(@descriptor) transactions.map! { |attrs| Transaction._new(gateway, attrs) } add_ons.map! { |attrs| AddOn._new(attrs) } discounts.map! { |attrs| Discount._new(attrs) } + @status_history = attributes[:status_history] ? attributes[:status_history].map { |s| StatusDetails.new(s) } : [] end def next_bill_amount warn "[DEPRECATED] Subscription.next_bill_amount is deprecated. Please use Subscription.next_billing_period_amount" @next_bill_amount