Sha256: f31e7d0ebf691194105fb2cc3dfe74403d474f053cc98de09f9fe841c4b48270
Contents?: true
Size: 654 Bytes
Versions: 3
Compression:
Stored size: 654 Bytes
Contents
module Susply module OwnerMethods def self.included(base) base.extend ClassMethods base.class_eval do has_many :subscriptions, class_name: 'Susply::Subscription', foreign_key: 'owner_id' has_many :payments, class_name: 'Susply::Payment', foreign_key: 'owner_id' end end module ClassMethods end def has_active_subscription? active_subscription.present? end def active_subscription subscriptions.detect(&:active?) end def most_recently_deactivated_subscription subscriptions.reject(&:active?).max_by(&:deactivated_at) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
susply-1.0.0 | app/services/susply/owner_methods.rb |
susply-0.0.2 | app/services/susply/owner_methods.rb |
susply-0.0.1 | app/services/susply/owner_methods.rb |