Sha256: c63eb3400957d66d32723adb4c5c82bf73a527179ad3b6b4ebee9b61874a54c9
Contents?: true
Size: 912 Bytes
Versions: 8
Compression:
Stored size: 912 Bytes
Contents
module Chargify class Coupon < Base def self.find_all_by_product_family_id(product_family_id) Coupon.find(:all, :params => { :product_family_id => product_family_id }) end def self.find_by_product_family_id_and_code(product_family_id, code) find(:one, :from => :lookup, :params => {:product_family_id => product_family_id, :code => code}) end def self.validate(params = {}) product_family_id = params.fetch(:product_family_id, nil) coupon_code = params.fetch(:coupon_code, nil) raise ArgumentError, 'coupon_code is a required argument' if coupon_code.blank? params = {:coupon_code => coupon_code} params.merge!(:product_family_id => product_family_id) if product_family_id.present? find :one, :from => :validate, :params => params end def usage get :usage end def archive self.destroy end end end
Version data entries
8 entries across 8 versions & 1 rubygems