5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/timeline/track.rb', line 5
def track(name, options={})
@name = name
@callback = options.delete :on
@callback ||= :create
@actor = options.delete :actor
@actor ||= :creator
@object = options.delete :object
@target = options.delete :target
@followers = options.delete :followers
@followers ||= :followers
@mentionable = options.delete :mentionable
method_name = "track_#{@name}_after_#{@callback}".to_sym
define_activity_method method_name, actor: @actor,
object: @object,
target: @target,
followers: @followers,
verb: name,
merge_similar: options[:merge_similar],
mentionable: @mentionable
send "after_#{@callback}".to_sym, method_name, if: options.delete(:if)
end
|