Method: SolidusSubscriptions::Subscription#pause

Defined in:
app/models/solidus_subscriptions/subscription.rb

#pause(actionable_date: nil) ⇒ Object



223
224
225
226
227
228
229
230
231
# File 'app/models/solidus_subscriptions/subscription.rb', line 223

def pause(actionable_date: nil)
  check_invalid_pause_states
  return false if errors.any?
  return true if paused?

  result = update! paused: true, actionable_date: actionable_date && tomorrow_or_after(actionable_date)
  create_and_emit_event(type: 'subscription_paused') if result
  result
end