Skip to Content Skip to Search
Methods
C
N

Class Public methods

new(subscription_data)

# File engines/api/app/actions/api/remote_subscription_creator.rb, line 3
def initialize(subscription_data)
  @data = subscription_data
end

Instance Public methods

create_if_needed()

# File engines/api/app/actions/api/remote_subscription_creator.rb, line 7
def create_if_needed
  return if %w[incomplete incomplete_expired].include?(@data.status)
  return if subscription
  return unless member && plan
  return if !!member.plannings.find_by(plan:)&.good_standing?

  if (plan_is_payment? || !member_has_active_recurring_subscription?) && !expired_subscription?
    create_subscription
    send_notifications
    create_member_event
  end
end