Class: ActivityNotification::Subscription
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- ActivityNotification::Subscription
- Includes:
- SubscriptionApi
- Defined in:
- lib/activity_notification/models/subscription.rb
Overview
Subscription model implementation generated by ActivityNotification.
Class Method Summary collapse
-
.filtered_by_key ⇒ ActiveRecord_AssociationRelation<Subscription>
Selects filtered subscriptions by key.
-
.filtered_by_options ⇒ ActiveRecord_AssociationRelation<Notificaion>
Selects filtered subscriptions by key with filter options.
-
.filtered_by_target ⇒ ActiveRecord_AssociationRelation<Subscription>
Selects filtered subscriptions by target instance.
Instance Method Summary collapse
-
#earliest_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by earliest (older) first as created_at: :asc.
-
#earliest_subscribed_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by earliest (older) first as subscribed_at: :asc.
-
#key_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by key name as key: :asc.
-
#latest_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by latest (newest) first as created_at: :desc.
-
#latest_subscribed_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by latest (newest) first as subscribed_at: :desc.
-
#target ⇒ Object
Belongs to target instance of this subscription as polymorphic association.
Methods included from SubscriptionApi
#optional_target_names, #subscribe, #subscribe_to_email, #subscribe_to_optional_target, #subscribing_to_optional_target?, to_optional_target_key, to_optional_target_subscribed_at_key, to_optional_target_unsubscribed_at_key, #unsubscribe, #unsubscribe_to_email, #unsubscribe_to_optional_target
Class Method Details
.filtered_by_key ⇒ ActiveRecord_AssociationRelation<Subscription>
Selects filtered subscriptions by key.
41 |
# File 'lib/activity_notification/models/subscription.rb', line 41 scope :filtered_by_key, ->(key) { where(key: key) } |
.filtered_by_options ⇒ ActiveRecord_AssociationRelation<Notificaion>
Selects filtered subscriptions by key with filter options.
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/activity_notification/models/subscription.rb', line 53 scope :filtered_by_options, ->( = {}) { = ActivityNotification.cast_to_indifferent_hash() filtered_subscriptions = all if .has_key?(:filtered_by_key) filtered_subscriptions = filtered_subscriptions.filtered_by_key([:filtered_by_key]) end if .has_key?(:custom_filter) filtered_subscriptions = filtered_subscriptions.where([:custom_filter]) end filtered_subscriptions } |
.filtered_by_target ⇒ ActiveRecord_AssociationRelation<Subscription>
Selects filtered subscriptions by target instance. ActivityNotification::Subscription.filtered_by_target(@user) is the same as @user.subscriptions
33 |
# File 'lib/activity_notification/models/subscription.rb', line 33 scope :filtered_by_target, ->(target) { where(target: target) } |
Instance Method Details
#earliest_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by earliest (older) first as created_at: :asc.
71 |
# File 'lib/activity_notification/models/subscription.rb', line 71 scope :earliest_order, -> { order(created_at: :asc) } |
#earliest_subscribed_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by earliest (older) first as subscribed_at: :asc.
79 |
# File 'lib/activity_notification/models/subscription.rb', line 79 scope :earliest_subscribed_order, -> { order(subscribed_at: :asc) } |
#key_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by key name as key: :asc.
83 |
# File 'lib/activity_notification/models/subscription.rb', line 83 scope :key_order, -> { order(key: :asc) } |
#latest_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by latest (newest) first as created_at: :desc.
67 |
# File 'lib/activity_notification/models/subscription.rb', line 67 scope :latest_order, -> { order(created_at: :desc) } |
#latest_subscribed_order ⇒ ActiveRecord_AssociationRelation<Subscription>
Orders by latest (newest) first as subscribed_at: :desc.
75 |
# File 'lib/activity_notification/models/subscription.rb', line 75 scope :latest_subscribed_order, -> { order(subscribed_at: :desc) } |
#target ⇒ Object
Belongs to target instance of this subscription as polymorphic association.
10 |
# File 'lib/activity_notification/models/subscription.rb', line 10 belongs_to :target, polymorphic: true |