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