module Socialization::Stores::Mixins::Like
Public Instance Methods
after_like(method)
click to toggle source
# File lib/socialization/stores/mixins/like.rb, line 16 def after_like(method) raise Socialization::ArgumentError unless method.is_a?(Symbol) || method.nil? @after_create_hook = method end
after_unlike(method)
click to toggle source
# File lib/socialization/stores/mixins/like.rb, line 21 def after_unlike(method) raise Socialization::ArgumentError unless method.is_a?(Symbol) || method.nil? @after_destroy_hook = method end
touch(what = nil)
click to toggle source
# File lib/socialization/stores/mixins/like.rb, line 7 def touch(what = nil) if what.nil? @touch || false else raise Socialization::ArgumentError unless [:all, :liker, :likeable, false, nil].include?(what) @touch = what end end
Protected Instance Methods
call_after_create_hooks(liker, likeable)
click to toggle source
# File lib/socialization/stores/mixins/like.rb, line 27 def call_after_create_hooks(liker, likeable) self.send(@after_create_hook, liker, likeable) if @after_create_hook touch_dependents(liker, likeable) end
call_after_destroy_hooks(liker, likeable)
click to toggle source
# File lib/socialization/stores/mixins/like.rb, line 32 def call_after_destroy_hooks(liker, likeable) self.send(@after_destroy_hook, liker, likeable) if @after_destroy_hook touch_dependents(liker, likeable) end