Sha256: 9619783c2430bbc265b4b549da1b87153d0c8c76585f8115fdbe647e3472a1bd
Contents?: true
Size: 838 Bytes
Versions: 2
Compression:
Stored size: 838 Bytes
Contents
module Susply class RenewsSubscription def self.call(owner) active_subscription = owner.active_subscription if active_subscription && active_subscription.expired? Susply::CreatePayment.call(active_subscription, "plan_renovation") calculate_renewed_subscription(active_subscription) else nil end end private def self.calculate_renewed_subscription(subscription) new_period_start = subscription.current_period_end new_period_end = Susply::Calculations. end_period_calculation(new_period_start, subscription.plan.interval) subscription.quantity = subscription.quantity + 1 subscription.current_period_start = new_period_start subscription.current_period_end = new_period_end subscription.save subscription end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
susply-1.0.0 | app/services/susply/renews_subscription.rb |
susply-0.0.2 | app/services/susply/renews_subscription.rb |