recurring_application_charge.rb 822 B

12345678910111213141516171819202122232425262728293031
  1. module ShopifyAPI
  2. class RecurringApplicationCharge < Base
  3. undef_method :test
  4. class << self
  5. def current
  6. (all || []).find { |c| c.status == 'active' }
  7. end
  8. [:pending, :cancelled, :accepted, :declined].each do |status|
  9. define_method(status) { (all || []).select { |c| c.status == status.to_s } }
  10. end
  11. end
  12. def usage_charges
  13. UsageCharge.find(:all, params: { recurring_application_charge_id: id })
  14. end
  15. def cancel
  16. load_attributes_from_response(self.destroy)
  17. end
  18. def activate
  19. load_attributes_from_response(post(:activate))
  20. end
  21. def customize(customize_recurring_app_charge_params = {})
  22. load_attributes_from_response(put(:customize, recurring_application_charge: customize_recurring_app_charge_params ))
  23. end
  24. end
  25. end