Sha256: 3f5c33a7ea13c262d8f8c10d8ad33f1b4bc8015f1b080c66f673308b8684489d

Contents?: true

Size: 955 Bytes

Versions: 9

Compression:

Stored size: 955 Bytes

Contents

module Chargify
  class Customer < Base
    include ResponseHelper

    def self.find_by_reference(reference)
      find(:one, :from => :lookup, :params => {:reference => reference})
    end

    class Subscription < Base
      self.prefix = "/customers/:customer_id/"
    end

    def subscriptions(params = {})
      params.merge!({:customer_id => self.id})
      Subscription.find(:all, :params => params)
    end

    def payment_profiles(params = {})
      params.merge!({:customer_id => self.id})
      PaymentProfile.find(:all, :params => params)
    end

    def build_metadata(params = {})
      CustomerMetadata.new(params.reverse_merge({:resource_id => self.id}))
    end

    def create_metadata(params = {})
      CustomerMetadata.create(params.reverse_merge({:resource_id => self.id}))
    end

    def metadata(params={})
      params.merge!({:resource_id => self.id})
      CustomerMetadata.find(:all, :params => params)
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
chargify_api_ares-1.4.7 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.6 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.5 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.4 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.3 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.2 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.1 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.4.0 lib/chargify_api_ares/resources/customer.rb
chargify_api_ares-1.3.5 lib/chargify_api_ares/resources/customer.rb