module Subscribable::RelationAssigner
Public Instance Methods
delete_subscription_to!(actor)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 33 def delete_subscription_to!(actor) subscription = subscription_with(actor) subscription.delete end
subscribe_to!(actor)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 27 def subscribe_to!(actor) sub = subscriptions.new sub.subscription = actor sub.save end
subscribed_to?(actor)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 38 def subscribed_to?(actor) query = actor.subscribers.where(subscriber_id: id, subscriber_type: self.class.name) query.empty? ? false : true end
subscribers_from(*args)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 19 def subscribers_from(*args) subscribers.where(subscriber_type: args) end
subscriptions_to(*args)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 23 def subscriptions_to(*args) subscriptions.where(subscription_type: args) end
Private Instance Methods
subscription_with(actor)
click to toggle source
# File lib/subscribable/relation_assigner.rb, line 44 def subscription_with(actor) subscriptions.where(subscription_id: actor.id, subscription_type: actor.class.name).first end