class StripeDiscount
Public Class Methods
stripe_class()
click to toggle source
# File lib/stripe_model_callbacks/models/stripe_discount.rb, line 12 def self.stripe_class Stripe::Discount end
Public Instance Methods
assign_from_stripe(object)
click to toggle source
# File lib/stripe_model_callbacks/models/stripe_discount.rb, line 16 def assign_from_stripe(object) assign_attributes( created: object.respond_to?(:created) ? Time.zone.at(object.created) : nil, start: Time.zone.at(object.start), end: object.end ? Time.zone.at(object.end) : nil, stripe_coupon_id: object.coupon.id, stripe_customer_id: object.customer, stripe_subscription_id: object.subscription ) assign_coupon_attributes(object) assign_other_coupon_attributes(object) end
Private Instance Methods
assign_coupon_attributes(object)
click to toggle source
# File lib/stripe_model_callbacks/models/stripe_discount.rb, line 32 def assign_coupon_attributes(object) assign_attributes( coupon_amount_off_cents: object.coupon.amount_off ? Money.new(object.coupon.amount_off, object.coupon.currency) : nil, coupon_created: Time.zone.at(object.coupon.created), coupon_currency: object.coupon.currency, coupon_duration: object.coupon.duration, coupon_duration_in_months: object.coupon.duration_in_months, coupon_livemode: object.coupon.livemode ) end
assign_other_coupon_attributes(object)
click to toggle source
# File lib/stripe_model_callbacks/models/stripe_discount.rb, line 43 def assign_other_coupon_attributes(object) assign_attributes( coupon_max_redemptions: object.coupon.max_redemptions, coupon_metadata: JSON.generate(object.coupon.try(:metadata)), coupon_percent_off: object.coupon.percent_off, coupon_redeem_by: object.coupon.redeem_by ? Time.zone.at(object.coupon.redeem_by) : nil, coupon_times_redeemed: object.coupon.times_redeemed, coupon_valid: object.coupon.valid ) end