2019-07-30 23:29:24 +02:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2020-06-12 15:03:43 -05:00
|
|
|
# License: AGPL-3.0-or-later WITH WTO-AP-3.0-or-later
|
|
|
|
# Full license explanation at https://github.com/houdiniproject/houdini/blob/master/LICENSE
|
2019-02-01 13:40:24 -06:00
|
|
|
class Card < ApplicationRecord
|
2019-08-06 14:39:48 +02:00
|
|
|
# :cardholders_name, # str (name associated with this card)
|
|
|
|
# :email, # str (cache the email associated with this card)
|
|
|
|
# :name, # str (readable card name, eg. Visa *1234)
|
|
|
|
# :failure_message, # accessor for temporarily storing the stripe decline message
|
|
|
|
# :status, # str
|
|
|
|
# :stripe_card_token, # str
|
|
|
|
# :stripe_card_id, # str
|
|
|
|
# :stripe_customer_id, # str
|
|
|
|
# :holder, :holder_id, :holder_type, # polymorphic cardholder association
|
|
|
|
# :inactive # a card is inactive. This is currently only meaningful for nonprofit cards
|
2018-03-25 13:30:42 -04:00
|
|
|
|
2019-07-30 23:29:24 +02:00
|
|
|
attr_accessor :failure_message
|
2018-03-25 13:30:42 -04:00
|
|
|
|
2019-07-30 23:29:24 +02:00
|
|
|
belongs_to :holder, polymorphic: true
|
|
|
|
has_many :charges
|
|
|
|
has_many :donations
|
|
|
|
has_many :tickets
|
2018-03-25 13:30:42 -04:00
|
|
|
end
|