Sha256: 00c40ec8acd7cc85827d66c028252df402b4001c82659eee098627dfd84a6a8a
Contents?: true
Size: 601 Bytes
Versions: 5
Compression:
Stored size: 601 Bytes
Contents
module Pay class Merchant < Pay::ApplicationRecord belongs_to :owner, polymorphic: true validates :processor, presence: true store_accessor :data, :onboarding_complete delegate_missing_to :pay_processor def self.pay_processor_for(name) "Pay::#{name.to_s.classify}::Merchant".constantize end def pay_processor return if processor.blank? @pay_processor ||= self.class.pay_processor_for(processor).new(self) end def onboarding_complete? ActiveModel::Type::Boolean.new.cast(data&.fetch("onboarding_complete")) || false end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
pay-7.3.0 | app/models/pay/merchant.rb |
pay-7.2.1 | app/models/pay/merchant.rb |
pay-7.1.1 | app/models/pay/merchant.rb |
pay-7.1.0 | app/models/pay/merchant.rb |
pay-7.0.0 | app/models/pay/merchant.rb |