2016-11-16 00:56:29 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2016-03-25 10:13:30 +09:00
|
|
|
module Streamable
|
|
|
|
extend ActiveSupport::Concern
|
|
|
|
|
|
|
|
included do
|
|
|
|
has_one :stream_entry, as: :activity
|
|
|
|
|
|
|
|
def title
|
|
|
|
super
|
|
|
|
end
|
|
|
|
|
|
|
|
def content
|
|
|
|
title
|
|
|
|
end
|
|
|
|
|
|
|
|
def target
|
|
|
|
super
|
|
|
|
end
|
|
|
|
|
|
|
|
def object_type
|
|
|
|
:activity
|
|
|
|
end
|
|
|
|
|
|
|
|
def thread
|
|
|
|
super
|
|
|
|
end
|
|
|
|
|
2016-12-22 04:00:18 +09:00
|
|
|
def hidden?
|
|
|
|
false
|
|
|
|
end
|
|
|
|
|
2017-02-12 03:42:05 +09:00
|
|
|
def needs_stream_entry?
|
|
|
|
account.local?
|
|
|
|
end
|
|
|
|
|
2016-03-25 10:13:30 +09:00
|
|
|
after_create do
|
2017-02-12 03:42:05 +09:00
|
|
|
account.stream_entries.create!(activity: self, hidden: hidden?) if needs_stream_entry?
|
2016-03-25 10:13:30 +09:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|