You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
522 B
43 lines
522 B
# frozen_string_literal: true
|
|
|
|
module Streamable
|
|
extend ActiveSupport::Concern
|
|
|
|
included do
|
|
has_one :stream_entry, as: :activity
|
|
|
|
after_create do
|
|
account.stream_entries.create!(activity: self, hidden: hidden?) if needs_stream_entry?
|
|
end
|
|
end
|
|
|
|
def title
|
|
super
|
|
end
|
|
|
|
def content
|
|
title
|
|
end
|
|
|
|
def target
|
|
super
|
|
end
|
|
|
|
def object_type
|
|
:activity
|
|
end
|
|
|
|
def thread
|
|
super
|
|
end
|
|
|
|
def hidden?
|
|
false
|
|
end
|
|
|
|
private
|
|
|
|
def needs_stream_entry?
|
|
account.local?
|
|
end
|
|
end
|
|
|